繁体   English   中英

如何在不引入大量开销的情况下将git添加到我的工作流程中?

[英]How can I add git to my workflow without introducing extensive overhead?

目前,我的实时网站开发工作流程已经中断,我正在寻求改进流程。 我没有版本控制,通常比不通过FTP直接编辑实时站点更多。 因此,这是我正在考虑实施的新工作流程,希望您能提供反馈。 同样,随时让我知道“工作流程很愚蠢……您应该改用X”。

目标/希望/梦想:

  • 不需要本地机器具有完整的开发环境(WAMP等)
  • 使用Git
  • 最小的开销(我是一个单人商店,不想拥有一百万个分支机构来应对,等等)

拟议的工作流程:

  • 两个站点:
    • site.com-我的实时站点居住在这里
    • beta.site.com-我的网站的副本位于此处
  • 所有工作都是通过beta.site.com网站上的FTP远程完成的。 这使我可以将Web服务器用作我的“开发箱”
  • 完成我要处理的更改/功能后,我将提交到我唯一的分支(“活动”)
  • 实时分支有一个挂机,可将更改复制到site.com的实时站点。
  • 如果遇到任何问题,我可以简单地回滚实时分支,这将反过来重新部署该站点的上一个工作版本

我知道这不是最理想的工作流程,因为从技术上讲我没有真正的暂存环境等,但是看到我只是一个人的开发团队,我觉得这可能就足够了。 另外,由于我来自现场FTP编辑,所以我知道如果引入过多的开销,我将在短时间后再次编辑该站点,我想确保自己坚持使用这种新方法。

谁对此方法有任何想法或建议? 很想听听这里经验丰富的开发人员的反馈。

最重要的是,我想强调一件事。 如果您没有其他答案,请考虑一下。 无论您的工作流程如何,都应始终使用某种形式的版本控制。 使用版本控制有很多好处,其中最重要的一点是使您确信代码是安全的,但同时也可以使您更快地开发代码。 我没有这本书,因此无法提供确切的参考,但是如果您需要一些令人信服的版本控制,史蒂夫·麦康奈尔(Steve McConnell)的书“快速开发:驯服野性软件计划”将一再提及该主题。实际上将节省您的时间,而不是“引入大量开销”。

为什么我要开始回答有关这样的工作流程的问题? 不管还有什么,你在你的工作流程改变,你就可以开始用很少的开销immeadiatly整合饭桶。 将git添加到您的站点就像导航到工作目录并键入git init一样简单。 就是这样,您现在有了一个git存储库,可以将代码检入其中。

我不会假装git没有一点学习曲线。 我认为该程序的最大缺点之一是,它对那些不熟悉它的用户不是很友好。 但是,不要让那让您望而却步,一旦您了解了git git,所有的命令就有意义了,并且实际上完成工作将非常简单。 为了帮助您找到“ AH-HA!” 此刻,请参阅git-like或优秀的git内部手册。

现在好了,改善您的工作流程。 通常,我喜欢您建议的工作流程,并且我敢打赌,它将比您现在正在做的工作有很大的改进。 我认为您不应做与建议完全不同的任何事情。 取而代之的是将其设置为11

这是我的建议:

  • 不要太担心git中只有一个分支。 在git中创建和管理分支非常容易,比在subversion之类的分支中要容易得多。 我建议您使用诸如git-flow策略之类的东西,您的master分支代表将代码推送到活动和Beta服务器的代码。
  • 如果您可以ssh进入服务器并在其上安装git,则实际上可以使用git替换工作流的ftp部分。 通过从开发计算机“拉”到活动服务器,您可以更精确地控制在其中部署了什么代码,并且回滚错误就像进行新的git checkout一样容易。
  • 我建议使用某种外部服务来备份您的git存储库。 这在发生灾难时提供了一层安全保护。 这有点严峻,但是请记住,如果您的房屋被烧毁,则备份到外部硬盘驱动器将无法为您提供帮助。 Bitbucket.org为少数人群提供免费的私人git存储库托管,这将非常适合您的情况。 如果没有其他问题,您可以使用DropboxSpiderOak之类的服务来备份您的工作目录。

最后,我建议您检出Atlassian的Source Tree git软件。 我认为,这是最好的Windows git客户端。 它甚至提供了执行git-flow的工具!

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM