$ git fetch --all
...
010c8a1..48202ec release/new -> origin/release/new
...
$ git branch
...
* dev/featurebranch (currently based on 'release/old')
$ git rebase release/new
fatal: invalid upstream 'release/new'
$ git checkout release/new
branch release/new set up to track origin/release/new by rebasing.
Switch to a new branch 'release/new'
$ git checkout dev/featurebranch
switched to branch...
$ git rebase release/new
Successfully rebased and updated refs/heads/dev/featurebranch
我认为,但我不确定,第二个rebase工作的关键是branch <name> set up to track origin/<name> by rebasing创建了一个本地发布分支来跟随原始发布分支,这是本地开发分支在技术上重新基础的。
3条答案
按热度按时间jutyujz01#
你需要在重定基之前在本地 checkout 'another-branch'。
或者,你需要在获取后拉取所有的分支
bzzcjhmw2#
Cherry Pick to the Rescue(Again)
在我的例子中,我有两个没有共同祖先的分支(这是管理员在服务器上创建的一个新仓库,但我想在本地构建的东西上有一个良好的开端)。
在添加一个名为'origin'的远程分支并获取
main
分支之后,我需要将我的完全本地分支(spike
)重定基到所获取的分支(main
)上。我的解决方案是将我所有的提交从
spike
挑选到main
。rkue9o1l3#
对我来说,我有一个非常旧的feature分支,即使我提前运行了一个fetch,我还是遇到了这个错误,我通过 checkout 新的(刚刚获取的)release分支,再次 checkout feature dev分支,然后执行rebase来解决这个问题。
我认为,但我不确定,第二个rebase工作的关键是
branch <name> set up to track origin/<name> by rebasing
创建了一个本地发布分支来跟随原始发布分支,这是本地开发分支在技术上重新基础的。