我创建(git flow feature start branch1
)并发布(git flow feature publish branch1
)基于develop
的git flow功能分支。在它们之后,我将其标记为Pull Request
,以便其他开发人员查看该分支中的更改。但是现在我想进一步工作,因此我基于git flow feature start branch2
在等待branch1
的地方创建一个新的功能分支(Pull Request
)。但是在创建branch2
之后,只有branch1
中的文件被忽略(所有文件都与.gitignore
中的条件匹配)。
当我检出branch1
时,我看到整个词典包含所有文件,但是为什么不是在所有新创建的功能分支(branch2
)中呢?所以我不能再工作了。
在.git/config
文件中,记录了我的branch2
分支develop
的 base ,而不是branch1
:< / p>
[gitflow "branch.feature/branch1"]
base = develop
[branch "feature/branch1"]
remote = origin
merge = refs/heads/feature/branch1
[gitflow "branch.feature/branch2"]
base = develop
使用以下命令,我可以从branch1
中的branch2
移动所有文件,但是.git/config
文件中的 base 不会更改为{{1} } ...:
branch1
使用此模板构建:git rebase --onto feature/branch1 develop feature/branch2
如何从git rebase --onto newBase oldBase feature/branch
更改基本分支?只需将branch2
中的 base-branch 从branch2
更改为branch1
?
答案 0 :(得分:0)
您可以在base
中更改.git/config
,但不能更改。
base
的{{1}}也是branch2
,因为这是您以后要合并到的分支(在develop
已经合并之后)。
这也反映在branch1
中,它不是从您当前所在的位置开始,而是始终从git flow feature start branch2
开始。这就是git-flow的全部想法。
现在不用担心develop
,除非您想做您的问题未明确表达的事情。
合并.git/config
的PR,然后为branch1
创建PR,一切正常。