我完全不清楚"mine vs theirs"的含义。在这种情况下,我有一个功能分支,通过 rebase -i
,我刚刚将大约80个提交压缩成了一个提交并将其合并回到develop
。我遇到了一些冲突,我只想使用我的功能分支上的任何代码。我尝试了"mine",但实际上它似乎是相反的。
可以有人解释一下这个术语吗?
我完全不清楚"mine vs theirs"的含义。在这种情况下,我有一个功能分支,通过 rebase -i
,我刚刚将大约80个提交压缩成了一个提交并将其合并回到develop
。我遇到了一些冲突,我只想使用我的功能分支上的任何代码。我尝试了"mine",但实际上它似乎是相反的。
可以有人解释一下这个术语吗?
ours
和theirs
是一个有点令人困惑的概念;在执行rebase操作时会更加复杂:
当进行合并时,ours
指的是您要合并的分支 into,而theirs
则指的是您要合并的分支from。因此,如果您试图在merge过程中解决冲突:
ours
接受当前所在分支上的更改theirs
接受要合并进来的分支上的更改。这很有道理,对吧?
当 rebasing 时,ours
和theirs
则被颠倒了。在rebase过程中,文件会被选入一个“detached” HEAD分支。目标是HEAD分支,而merge-from
是rebase之前的原始分支。这就是:
--ours
是正在构建的匿名分支,--theirs
是正在rebase的那个分支;也就是说,在rebase期间,当前分支的提交记录(一个接一个)将在我们打算rebase的分支上进行重播。
"我们"(和"我的")指的是当前分支;而"theirs"指的是被合并的分支。听起来你实际上想使用"theirs"。