如何使用git

时间:2012-09-04 10:05:33

标签: git branch

我们想开始使用git,但是有一些关于分支的问题。

如何组织:

  1. 每个程序员都有自己的本地存储库,并在master分支中工作。
  2. 任何更改都会推送到裸存储库。
  3. 开发服务器具有本地存储库(主分支),并通过Post-Push hook更新
  4. 生产服务器具有本地存储库(分支“生产”)并由Post-Push hook更新
  5. 如何正确地将一些提交从主提交到生产?

2 个答案:

答案 0 :(得分:3)

原则上,您需要将更改从master合并到生产中。因此,在某些工作区中,切换到生产分支,合并主分支,然后推送到开发和生产服务器。这可以在任何开发人员的工作区中完成。

如果没有直接对生产分支进行任何更改,则所有合并将是“快进” - 即“生产分支”基本上只是指向主分支上的位置的指针,指示生产点在何时生产最后更新。这意味着合并永远不会产生任何冲突。从技术上讲,你可以做一个“git push origin master:production”来更新远程服务器上的生产分支。

答案 1 :(得分:1)

拥有一个中间仓库(此处为#34;开发")是一种很好的做法,可以整合和调试可以投入生产的提交。

但我宁愿在中间回购中创建一个发布分支(例如' rel2.3'),以便能够在推送&#39之前进行最后的修复/次要调整; rel2.3'到' production' prod repo的分支(以及标记,以便标记代表2.3的确切提交)

因此,个人开发者不应该直接进入productiob:只有'整合者' (或测试者)已经验证了推动中间回购的内容应该推动生产。

我会创建一个' rel2.3_hotfixes'在prod repo上进行分支,以便将紧急修复程序隔离开来。

这意味着每个repo(devs和' Development')需要在生产分支上同步(即重新生成),这可能在给定版本之后添加了提交。