参考
fork源码库以后如何同步最新的代码_fork的代码怎么保持最新-优快云博客
fork一个开源仓库,然后二次开发,并能跟开源更新保持一致_github fork origin 本地二次开发-优快云博客
如何同步fork项目原仓库的更新_fork仓 更新-优快云博客
Github上Fork开源代码,本地二次开发,保持源码同步 - 知乎
1、先fork一个代码库到自己的仓库
2、fork的时候,只能fork源代码库的master分支,如何同步源代码库的所有内容到自己的仓库呢?
- 先切换到自己想要合并的分支
-
cd到自己的仓库,开始如下操作 cd cherry git checkout -b dev #默认是master,master里永远跟开源的保持一致 git pull git checkout master #切回master,做更新
在自己本地库设置关联源仓库
-
git remote add upstream https://gitee.com/dromara/RuoYi-Vue-Plus.git
这里的upstream是自定义的名字,随便取名什么都行,目的是标记这个与源代码库建立关联
- 然后执行命令 git remote -v 查看远程仓库的路径:
-
hdc@hdc MINGW64 /d/studyspace/blog/RuoYi-Vue-Plus (4.X) $ git remote -v origin https://e.coding.net/handonch/ruoyi/RuoYi-Vue-Plus.git (fetch) origin https://e.coding.net/handonch/ruoyi/RuoYi-Vue-Plus.git (push) upstream https://gitee.com/dromara/RuoYi-Vue-Plus.git (fetch) upstream https://gitee.com/dromara/RuoYi-Vue-Plus.git (push)
这里发现创建了一个叫做upstream的与源代码origin关联
关联之后,就可以同步源代码库的其他分支到自己的仓库了,具体执行:
-
git fetch [upstream自己前面定义的名字] 原代码库分支名 : 本地代码库分支名,:
git fetch upstream 3.4.x:3.4.x -
上边的执行报错,实际执行
-
git fetch upstream master #拉取开源的仓库upstream的master到本地 git merge upstream/master #合并到本地master
- 或者直接执行 git fetch [upstream自己前面定义的名字] ,将源代码库的所有全部同步到自己的代码库
-
hdc@hdc MINGW64 /d/studyspace/blog/RuoYi-Vue-Plus (4.X) $ git fetch upstream remote: Enumerating objects: 2993, done. remote: Counting objects: 100% (837/837), done. remote: Compressing objects: 100% (214/214), done. remote: Total 2993 (delta 514), reused 717 (delta 491), pack-reused 2156 Receiving objects: 100% (2993/2993), 551.01 KiB | 1.55 MiB/s, done. Resolving deltas: 100% (1180/1180), completed with 244 local objects. From https://gitee.com/dromara/RuoYi-Vue-Plus * [new branch] 4.X -> upstream/4.X * [new branch] 5.X -> upstream/5.X * [new branch] dev -> upstream/dev * [new branch] fast -> upstream/fast * [new branch] future/flowable -> upstream/future/flowable * [new tag] 4.8.2 -> 4.8.2 * [new tag] v5.1.1 -> v5.1.1 * [new tag] v5.1.2 -> v5.1.2
合并某一个分支
-
hdc@hdc MINGW64 /d/studyspace/blog/RuoYi-Vue-Plus (4.X) $ git merge upstream/4.X Updating 2cfdb9bcd..ded2a32fd Fast-forward .run/ruoyi-monitor-admin.run.xml | 2 +- .run/ruoyi-server.run.xml | 2 +- .run/ruoyi-xxl-job-admin.run.xml | 2 +- README.md | 10 +++-
提交到远程
-
hdc@hdc MINGW64 /d/studyspace/blog/RuoYi-Vue-Plus (4.X) $ git push origin 4.X Enumerating objects: 421, done. Counting objects: 100% (421/421), done. Delta compression using up to 16 threads Compressing objects: 100% (128/128), done. Writing objects: 100% (305/305), 45.13 KiB | 15.04 MiB/s, done. Total 305 (delta 141), reused 261 (delta 103), pack-reused 0 remote: Resolving deltas: 100% (141/141), completed with 61 local objects. To https://e.coding.net/handonch/ruoyi/RuoYi-Vue-Plus.git 2cfdb9bcd..ded2a32fd 4.X -> 4.X
合并代码到当前开发分支
-
git checkout dev #切换到dev git rebase master #把刚刚拉取的更新merge到dev分支
然后再git的图形界面就可以看到拉取、推送操作,要先拉取合并代码后,再推送就完成了代码合并