2014-02-20 151 views
0

刚从Git开始,并希望从右脚开始。我做了一些研究和建议的工作流程似乎是:Git Workflow和Rebase

-One时间只有:(例如:Git workflow and rebase vs merge questions"git pull" or "git merge" between master and development branches)克隆中央回购协议回购的个人

- 创建一个开发分支

- 不要犯下的开发分支

-Every所以经常拉在主分支(正从中央回购的变化)和重订制定更新的主分支分支如果主人确实已经更新

- 当完成开发的开发分支合并掌握和开发分支功能(后再次对主拉)

我有这几个问题:

  1. 当重订未能因合并更新的主分支和开发分支之间的冲突(从开发人员编辑同一个文件),你应该中止并切换到合并?

  2. 为什么合并时功能完成,而不是重新绑定?

  3. 每次我完成开发功能或修复错误时,我是否应该推一下?

回答

0
  1. 当你得到一个重订期间发生冲突,你可以简单地解决它,继续垫底。放弃并进行合并反而无济于事,无论如何你仍然会遇到冲突。

  2. 当您完成某个功能时,无论是否在master之上重新设置功能/开发分支,您都会想要合并。预先设定的区别在于,它使您有机会以(希望)更清晰的方式重写,结构,形状和呈现历史记录,而不仅仅是进行合并 - 导致合并提交(也称为“非快进“合并)。

    但是,有些人喜欢创建一个合并提交,只是为了显示分支发生的地方。您甚至可以在使用“非快进”标志(即git merge --no-ff)进行重新绑定之后强制执行合并提交。

  3. 完成某项功能或错误修复后是否推送取决于项目,以及您希望如何与其他人共享您的代码(如果您完全共享)。