我有冲突的分支,
feature_x
从main
分支。
假设在当前
feature_x
的基础上重新调整 main
时,在解决冲突时,我决定按原样获取“他们的”(即 main
)文件中的 一些(不是全部)。 我该怎么做?
我尝试过:
git checkout main:foo/bar.java
fatal: reference is not a tree: TS-modules-tmp:foo/bar.java
git checkout refs/heads/main:foo/bar.java
fatal: reference is not a tree: refs/heads/TS-modules-tmp:foo/bar.java
您想使用:
git checkout --ours foo/bar.java
git add foo/bar.java
如果您将分支
feature_x
与 main
进行变基(即在分支 git rebase main
上运行 feature_x
),则在变基期间,ours
指的是 main
,theirs
指的是 feature_x
。
请注意,变基合并通过重播来自 工作分支位于分支顶部。正因为如此,当 发生合并冲突,报告为我们的一方是迄今为止的 rebased 系列,从
开始,他们的就是工作中的 分支。换句话说,双方交换了。
欲了解更多详情,请阅读此帖子。
git checkout branch1 -- filenamefoo.txt
这会将文件的一个版本从一个分支拉到当前树中