BitBucket原仓库特定分支提交合并至未改动分叉仓库的可行性及步骤
可以实现!具体操作步骤如下
当然没问题——哪怕你的分叉仓库完全没做过任何改动,也能把原仓库特定分支里的某个单独提交合并过来。下面是一步步的操作指南:
1. 确保本地分叉仓库已关联原仓库(上游仓库)
如果你的本地分叉仓库还没添加原仓库作为远程上游,先执行这条命令:
git remote add upstream <原仓库的BitBucket克隆URL>
如果不确定有没有关联,用git remote -v查看,能看到upstream对应的原仓库地址就说明已经关联好了。
2. 获取原仓库的最新提交信息
拉取原仓库所有分支的提交记录,这样你能找到目标提交的哈希值:
git fetch upstream
3. 找到要合并的目标提交的哈希值
你可以通过BitBucket网页端查看原仓库特定分支的提交历史,找到那个提交对应的40位哈希值(通常显示前7位也能正常使用);或者在本地用命令查看原仓库目标分支的提交记录:
git log upstream/<原仓库的目标分支名>
找到目标提交后,复制它的哈希值(比如a1b2c3d)。
4. 切换到分叉仓库中要合并到的分支
假设你要把提交合并到分叉仓库的main分支,执行:
git checkout main
如果是其他分支,替换成对应的分支名即可。
5. 执行提交合并(cherry-pick)
用git cherry-pick命令把目标提交合并到当前分支:
git cherry-pick <目标提交的哈希值>
因为你的分叉仓库没做过改动,大概率不会出现冲突。如果真的遇到冲突(比如原仓库和分叉仓库的基础代码有差异),解决冲突后执行git cherry-pick --continue即可。
6. 推送到分叉仓库的远程
合并完成后,把本地的改动推送到BitBucket上的分叉仓库:
git push origin <当前分支名>
这样就完成了把原仓库特定分支的单个提交合并到未改动的分叉仓库的操作啦!
内容的提问来源于stack exchange,提问作者user3849502
相关产品推荐
相关产品推荐

