如何获得;他们的";相互冲突的Git ReBASE中间的变化?
我有冲突的分支,分支2从分支1分支 比如说,在当前如何获得;他们的";相互冲突的Git ReBASE中间的变化?,git,rebase,git-rebase,Git,Rebase,Git Rebase,我有冲突的分支,分支2从分支1分支 比如说,在当前branch1上重新设置branch2的基址时,在解决冲突的同时,我决定将部分(而不是全部)的“他们的”(即branch1)文件保持原样。 我该怎么做 我试过: git checkout branch1:foo/bar.java fatal: reference is not a tree: TS-modules-tmp:foo/bar.java git checkout refs/heads/branch1:foo/bar.java fata
branch1
上重新设置branch2
的基址时,在解决冲突的同时,我决定将部分(而不是全部)的“他们的”(即branch1
)文件保持原样。
我该怎么做
我试过:
git checkout branch1:foo/bar.java
fatal: reference is not a tree: TS-modules-tmp:foo/bar.java
git checkout refs/heads/branch1:foo/bar.java
fatal: reference is not a tree: refs/heads/TS-modules-tmp:foo/bar.java
如果您想从另一个分支提取特定文件,只需执行以下操作
git checkout branch1 -- filenamefoo.txt
这将把文件的一个版本从一个分支拉到当前树中,您要使用:
git checkout --ours foo/bar.java
git add foo/bar.java
如果您针对main
重新设置分支feature\ux
(即在分支feature\ux
上运行git rebase main
),在重新设置分支期间,我们的
指的是main
和他们的
指的是feature\ux
正如报告中指出的那样:
请注意,重新基础合并通过重放来自
分支顶部的工作分支。因为这个,什么时候?
发生合并冲突时,报告为我方的一方是目前为止
重新基调系列,从开始,他们的是工作
分支机构。换言之,双方是交换的
有关更多详细信息。注意:如果要将branch2重设为branch1,则会相对于branch1进行重放,因此“他们的”实际上是branch2,“我们的”是branch1。你看,这只花了我大约20个小时的勤奋工作。我真的认为“我们的”永远是工作的副本。这可能是一个坏主意,在一个重新基地,因为它会拉文件从该分支的头,而不是在独立的头点,你会在一个矛盾的基础。state@Clintm,另一方面,这是一个通用的答案,您可以从任何地方提取文件<如前所述,代码>分支1不是一个特别好的主意。但是可以使用所需的提交id。我相信有一个很好的理由可以解释为什么合并和重基对“我们的”和“他们的”有相反的含义,但是一致性会好得多。因此,OPs问题中的
他们的
对应于实际命令中的--我们的
。请注意,--我们的
也相应(更直观地)解决冲突时与IDE中的“当前更改”相对应,而--它们的
对应于“传入更改”