愿世界充满和平, 愿每个人都能享有自由与尊重.|

杂役24

园龄:1年11个月粉丝:0关注:0

2024-10-17 11:29阅读: 46评论: 0推荐: 0

修改别人的源码并提交到自己的仓库

最近在修改 https://gitee.com/beecue/fastbee 项目的时候有一个需求.

就是将修改后的代码提交到自己的仓库, 并且当 fastbee 项目更新的时候, 将更新的内容合并到自己的项目中.


将别人的项目拉取下来后, 修改远程仓库的名字 git remote rename origin upstream, 也可以将 upstream 改为别的, 看自己的习惯.

然后添加一个我们自己的远程仓库 git remote add <远程仓库名称> <仓库URL>.

最后创建一个新的分支 git switch -c remote/<远程仓库名称>/<远程分支名称>, 我们在这个分支上修改代码.

现在可以使用 git push -u <远程仓库名称> remote/<远程仓库名称>/<远程分支名称>:<远程分支名称> 提交到自己的仓库中.

后续拉取和推送, 可以切换到这个新的分支然后执行 git pullgit push.

如果想只使用 git pull, 前提是本地分支名要和远程分支名一样.

当别人的项目更新后, 先切换到 git switch main 分支(因为最开始拉取的就是这个分支), 然后再拉取更新 git pull.

然后切换到开发分支(就是上面说的'新的分支'), 并执行 git merge main 将 main 分支合并到开发分支.

最后就可以提交这些代码到自己的仓库中了.

合并之前必须要先提交修改的代码, 保证仓库"干净".


有另一种情况, 是先拉取了自己的仓库, 然后再合并别人的代码.

在自己的仓库中, 创建一个新的分支 git switch -c merge/<远程仓库名称>/<远程仓库分支名>.

然后再添加别人项目的远程仓库git remote add <远程仓库名称>_url <仓库URL>.

通过 git fetch <远程仓库名称>_url 获取远程仓库的最新数据后, 通过 git merge <远程仓库名称>_url/<远程仓库分支名> 合并到当前分支.

本文作者:杂役24

本文链接:https://www.cnblogs.com/zy24/p/18469833

版权声明:本作品采用知识共享署名-非商业性使用-禁止演绎 2.5 中国大陆许可协议进行许可。

posted @   杂役24  阅读(46)  评论(0编辑  收藏  举报
评论
收藏
关注
推荐
深色
回顶
收起
点击右上角即可分享
微信分享提示