我对这种行为感到好奇,也许这只是因为我主要来自使用SVN和集市。 (我正在学习git与优秀的github接口。)
这对我来说似乎有点直观,好像对
更好 git merge [branch] --no-commit
是默认设置,鼓励人们在提交之前确保合并按照他们想要的方式进行。
答案 0 :(得分:27)
Linus Torvalds在创建Git时设定的目标是使所有可以自动解决的合并...... FAST 。见他的2007 Google Tech Talk: Linus Torvalds on Git (transcript)
即在不到几秒钟内完成数百次合并。
默认情况下,“--no-commit
”几乎会失败。
使用
--no-commit
执行合并但假装合并失败并且不自动提交,以便让用户有机会在提交之前检查并进一步调整合并结果。
唯一重要的是你能多快合并 在git中,你可以合并...我每天多次合并22,000个文件,如果合并时间超过5秒,我会感到不快,所有这些5秒只是下载所有差异,而不是差异,但是两棵树之间的三角洲,合并本身只需不到半秒钟 而且我不必考虑它。
[...]这种性能实际上改变了你的工作方式。