Git合并他们的步骤

时间:2011-04-15 01:01:33

标签: git merge

我正在处理由程序生成的很多二进制文件。自动合并对这些文件不起作用。合并时我想做的事情,实际上只需要一个副本或另一个副本。这不是理想的,但我认为这是最好的方法。

现在我的理解是,如果我想从我正在合并的分支中取出一个文件,并完全丢弃我们的版本,我应该这样做:

git merge <branchname>
git checkout --theirs <filename>
git add <filename>
git commit

这是正确的,还是我错过了什么?

我想在不使用.gitignore

的情况下这样做

2 个答案:

答案 0 :(得分:32)

如果您的目标确实是保留一个版本或另一个版本,那么是的,您将需要使用:

git checkout <--theirs|--ours> <path>
git add <path>

当然,正如你所说,它并不理想。如果有任何办法可以避免这种情况,你应该这样做。如果可以,请尝试采用工作流习惯,避免在不同的分支上更改这些文件,以后需要合并。如果文件是从跟踪的内容生成的,那么您可能确实想要忽略它们 - 如果您有充分的理由不这样做,您可能希望从可合并的跟踪内容生成它们,如果可能的话。

所以,在做这个之前,先探索所有其他选择,但是如果必须的话,你就做对了。

答案 1 :(得分:2)

使用.gitignore忽略生成的文件。你可能也必须做git rm。