我有分支衝突,branch2從branch1分支。 java
讓咱們說當在當前branch2
上從新定位branch2
時,在解決衝突時,我決定按branch1
使用一些 (不是所有)「他們的」(即branch1
)文件。 我怎麼作? git
我試過了: spa
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
你想用: code
git checkout --ours foo/bar.java git add foo/bar.java
若是你將一個分支feature_x
反對master
(即在分支feature_x
上運行git rebase master
),在git rebase master
期間ours
指的是master
和theirs
的feature_x
。 文檔
正如git-rebase文檔中指出的那樣: get
請注意,rebase合併的工做原理是從分支頂部的工做分支重放每一個提交。 所以,當合並衝突發生時,報告爲咱們的那一方是迄今爲止從新定義的系列,從<upstream>開始,他們是工做分支。 換句話說,雙方交換。 it
有關詳細信息,請閱讀此主題 。 io
若是你想從另外一個分支中提取特定文件,那就好了 ast
git checkout branch1 -- filenamefoo.txt
這會將文件的一個版本從一個分支拉到當前樹中 stream