Git不会自动解决冲突

时间:2014-01-14 20:14:01

标签: git clearcase merge-conflict-resolution

这是一个git-newbie问题,但是,我有近7年的clearcase经验,我在这个特殊情况下尝试使用git实现的目的很简单。无论如何,我在github上分叉binutils并从binutils-2_23_2标签创建了一个分支。我做了一些改变,但它确实有效。但是我决定......而且在指定我决定要做的事情(就clearcase / git词汇量而言)可能有些困难。明确表示:

  1. 我有一个分支,从binutils-2_23_2采取了更改,有一个 父母在分支树的某个地方,
  2. 分支机构的其他地方 我创建另一个分支,这次是从 binutils-2_24-branchpoing tag,
  3. 然后我'合并'(cleartool merge -nc -g -to文件文件@@ / version-specification)和clearcase查找共同的祖先,解决所有自动冲突并委派所有 非自动冲突解决方案,例如使用三向合并 kdiff3,
  4. 我不太确定如何在git中做类似的事情。似乎有两个潜在的候选人 - 即“合并”和“重组”,但哪个是对的?我的想法是检查新的2_24开发分支分支,然后从2_23_2开发分支“合并”更改,但是当我这样做时,git显示过多未解决的冲突,其中没有一个与我的更改有关。我希望git能够通过itsels来处理这个问题,并且只向我提供与我在旧开发分支上工作相关的内容。

1 个答案:

答案 0 :(得分:1)

ClearCase合并的Git等价物为git merge

git rebase将重播另一个分支。


OP Wojciech Migda添加in the comments

  

目前我已经恢复生成和应用补丁 - 有了这个(加上一些手动补丁编辑),它起作用了

如果共同的祖先在两个分支之间过于陈旧,那就可以了。

作为Ajedi32 comments

  

尝试运行git merge-base branch1 branch2以查找分支的共同祖先和您要合并的分支。
  然后运行git diff <result of last command> HEAD以查看对您的分支所做的更改。