0

我一直在研究 Git,并且了解了基本概念,除了它如何适合小团队的工作流程。

据我了解,我想要:

  1. 一个共享的半公开仓库供我和我的团队使用(将更改提取到我们的本地副本中)并在其中测试功能。

  2. 一个仓库,我们推送任何经过测试并准备上线的东西。

  3. 一个实时存储库,其中工作目录是实际网站的根文件夹

我是否理解这一点或使它比需要的更复杂?只是想把我的想法包裹起来,很少有教程会详细介绍这个主题。

4

3 回答 3

0

我的开发团队只有一个远程仓库,所有更改都被推送。

开发中的功能被分支以避免破坏主副本,因此可能同时有多个活动分支。每个开发人员都有一个实际运行在开发服务器上的“本地”存储库(我们倾向于通过 SSH 使用 VIM 进行开发)。每个“本地”存储库都设置为带有用户名标记的唯一虚拟主机。因此,开发服务器上可能会运行三个或四个不同版本的站点。这允许开发人员立即测试代码更改。

在准备发布时,所有完成的分支都被合并,生成的代码通过 git 拉到与生产环境紧密匹配的预部署服务器。批准后,特定的提交会被标记版本号,并使用 git 或 rsynced 拉到生产服务器上,并在生产服务器上进行更多测试以确保部署顺利进行。

于 2012-04-24T17:48:46.313 回答
0

您可以应用许多 git 工作流程,但如果您需要一个起点,我会推荐nvie 博客文章,它解释了一种很好的集中方式来通过分支管理您的应用程序中的更改。

您可以在http://progit.org/book/ch3-4.html上阅读更多相关信息。

此外,似乎有人已经问过这个问题:Git branch strategy for small dev team

于 2012-04-24T17:51:14.400 回答
0

而不是使用多个存储库进行开发/发布/...我会在一个存储库中使用分支。

有关可能的模型(以及如何在团队中使用)的更多想法可以在此博客文章中找到:http: //nvie.com/posts/a-successful-git-branching-model/

(不要害怕,上面的图表看起来很复杂,但是如果你只是阅读文章就会变得很清楚:))


在一个不相关的说明中:Git 非常强大,对很多事情都有好处,但使用起来也很复杂(这两者正是你对内核黑客编写的版本控制系统所期望的;D)。

对于去中心化的 VCS,Bazaar可能是一个不错的选择。它与 git 共享基本思想。但是我从许多不同的人那里反复听到,对于没有计算机科学背景并且可能第一次使用版本控制的团队来说,这往往更容易处理。

(以防万一符合您的标准。我不了解您的团队,并且人们的背景和经验范围在 Web 开发方面相当广泛。也不想在这里引发 VCS 火战。)

于 2012-04-24T17:58:36.173 回答