git - 在共享更改后更改另一个分支所基于的分支

标签 git

我正在对一个基于 GitHub 的项目进行黑客攻击,并将每个新功能放在一个单独的分支中。我从上游的master分支开始,在一个分支feature1上做了一些改动。问题是我忘记在实现 feature2 之前切换回 master,所以我的树看起来像这样:

* 4a0d1ef - Added feature 3 (HEAD, feature3)
| * 685534d - Finished feature 2 (feature2)
| * ef31e06 - Started feature 2
| * cd2ebe3 - Finished feature 1 (feature1)
| * dbd1041 - Started feature 1
|/  
* 9bfffc2 - Latest upstream change (origin/master, origin/HEAD, master)

(我实现了第三个功能,那时我记得对 master 进行更改。)我已经将所有三个功能作为单独的 pull 请求提交,所以我认为 rebase 不是可能的。有什么方法可以更改 feature2 分支,使其基于 master 而不是 feature1 分支?

最佳答案

git rebase --onto master feature1 feature2

master 是新基线,feature1 是旧基线,feature2 是您要更改的分支。

如果您的 pull 请求已被接受,您将无能为力。否则,进行 rebase 并进行新的 pull 请求。

关于git - 在共享更改后更改另一个分支所基于的分支,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6934245/

相关文章:

ios - 在用户之间共享 Xcode 库

php - 在 Jenkins 中找不到私有(private) git 子模块

Github:镜像 gh-pages 到 master

git - 如何同步gitlab和github

git - git log --exit-code 是什么意思?

git - 如何将 Mercurial 存储库转换为 Git(支持 LFS)?

git status - 不显示未跟踪的文件

bash - 如何在 git 工作副本上获取所有等效分支?

javascript - 除了在开发期间进行测试之外,在登台服务器上进行测试还有哪些好处?

Git检查离开文件夹锁定的ubuntu