我是一个新的 GIT 用户,他一直在试验执行 PULL 时会发生什么,并且在执行 PULL 时发现文件的两个版本之间存在差异。
从我所看到的,如果两个更改不相互冲突(例如一个在文件顶部,一个在文件底部),差异将自动解决,无需对我的任何干预部分。 OTOH,例如,如果它们在同一行代码中,我会被要求通过 KDIFF3 编辑器手动解析它们。
我们在我公司的工作方式,我们不希望 GIT/KDIFF3 自动进行任何合并。换句话说,我想要在 GIT 无法解决所有更改时出现的相同对话框,即使是最明显的更改。
是否有设置、选项或其他东西可以让我在相同的控制流中做到这一点? (PS-我已经尝试过您只进行提取的选项,但我无法弄清楚发生了什么,无论如何宁愿避免它。)
非常感谢。
-史蒂夫
最佳答案
使用 git fetch,它不会做任何合并。查看此链接以了解 pull 和 fetch 之间的区别。 http://blog.mikepearce.net/2010/05/18/the-difference-between-git-pull-git-fetch-and-git-clone-and-git-rebase/
编辑:只需阅读您帖子的最后一部分。我不知道有什么方法可以在没有合并的情况下进行拉动,因为这就是它的设计目的。如果您想避免合并,我相信 fetch 是您唯一的选择。
EDIT2:我没有亲自尝试过,但以下博客文章的方法似乎符合您的要求:http://jasonrudolph.com/blog/2009/02/25/git-tip-how-to-merge-specific-files-from-another-branch/
对于您的情况,我相信您会做的是在执行提取之后,然后您将在要合并到的分支和您提取的分支之间执行差异。然后,您将检查已更改的每个单独文件,并根据您的喜好提交它们。如果这个过程很乏味,我深表歉意,但我不知道有什么方法可以让对话框在合并过程中发生任何更改时弹出。
关于git-merge - GIT : do not want ANY changes to be auto-merged, 即使是最明显的,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9592530/