用于预提交合并的Git工作流程?

时间:2015-06-11 14:54:45

标签: git svn merge commit

使用SVN,我遵循的工作流程是为了确保我没有破坏构建:

  • 做好工作
  • svn update获取其他人的最新提交到我的wc
  • 重新编译,运行测试,修复任何问题(例如,依赖于我的API 改变)
  • svn commit

当我尝试在Git中复制此工作流程时,我得到了可怕的" 您对以下文件的本地更改将被合并"错误。

将原始更改合并到我的本地副本有哪些步骤,以便我可以在提交之前进行验证?有没有办法指定合并每个文件并编辑SVN中的冲突?

2 个答案:

答案 0 :(得分:1)

Git和SVN之间的一个区别是Git将“记录我对代码的更改”步骤拆分为两个步骤:提交和推送,而SVN只有提交。在Git中,冲突的解决方案在提交后发生,而在推送之前发生。这意味着该过程似乎与SVN几乎“相反”,在SVN中,您更新,然后解决冲突,然后提交。在Git中,您想要提交,然后拉(此时您可以解决冲突),然后推送。

答案 1 :(得分:0)

为什么不试试这个?

git add somefile
git commit -m "this will save my local changes"

git pull origin master
#this merges with origin master, if there's a merge error. You can fix it
# and commit again

git push origin master 
#this will push the merge with the remote master