Git基于特定的远程、分支和提交

mfuanj7w  于 2022-10-23  发布在  Git
关注(0)|答案(1)|浏览(226)

情况是:
我有一个没有遥控器的本地git repo。我想为一个特定的分支添加一个遥控器,我相信我可以这样做:
git remote add New_Remote -t -f {New_Remote_Branch} {Repo}
然后,我想将我的本地git repo重新设置为New_Remote_Branch的HEAD,而不仅仅是它的特定提交。我已经阅读了文档,也看到了--onto选项,但对于如何将其定向到特定的远程并提交,我有点困惑。我在测试这个概念和找到语法方面遇到了困难。我相信我正在寻找这样的东西:
(来自本地repo目录)
git rebase New_Remote/New_Remote_Branch --onto {New_Remote_Branch_Specific_Commit_id}

pgky5nke

pgky5nke1#

git rebase的完整语法为:

git rebase --onto $new_upstream $old_upstream $branch_to_rebase

它将接受old_upstream和branch_to_rebase之间的所有提交,并在new_upstroam之上重新创建它们。最后,“branch_to_rebase”ref将指向最新的重新创建提交。
所有三个参数都可以是分支、标记或提交。最后一个通常应该是一个分支,否则最终会处于“分离的HEAD”状态(但很容易恢复)。前两个参数只需要解析为提交。
因此,在您的案例中,您的命令将类似于:

git rebase --onto $specific_commit_id master your_branch

(假设您希望复制分支上自master之后创建的所有提交)

相关问题