如何从主库同步代码到个人Fork出来的派生库
问题现象
在CodeArts Repo上可以将主库代码仓Fork到个人其它项目下,此功能有助于协同开发,但在使用Fork模式开发时,可能会遇到问题:当主库(源项目)更新后,Fork库并不会一起更新,需要自己手动更新。
您可以通过如下操作将主库代码同步到个人Fork出来的派生库。
例如:
主仓地址: https://test.com/f2e22eeb1b8c43cfb764765f5e3ff039/AlphaGo/TestService.git
Fork仓地址: https://test.com/f2e22eeb1b8c43cfb764765f5e3ff039/Roger/TestService.git
分支名:master
解决方案
- Clone个人空间里的Fork仓库到本地。
git clone https://test.com/f2e22eeb1b8c43cfb764765f5e3ff039/Roger/TestService.git cd TestService
- 增加远程原始仓(主库仓)到本地(可以用 git remote -v 命令查看远程仓列表)
git remote -v
- 如果没有远程原始仓,则需要增加:
git remote -v origin https://test.com/f2e22eeb1b8c43cfb764765f5e3ff039/Roger/TestService.git (fetch) origin https://test.com/f2e22eeb1b8c43cfb764765f5e3ff039/Roger/TestService.git (push)
- 查看确认远程仓列表。
git remote -v origin https://test.com/f2e22eeb1b8c43cfb764765f5e3ff039/Roger/TestService.git (fetch) origin https://test.com/f2e22eeb1b8c43cfb764765f5e3ff039/Roger/TestService.git (push) main https://test.com/f2e22eeb1b8c43cfb764765f5e3ff039/AlphaGo/TestService.git (fetch) main https://test.com/f2e22eeb1b8c43cfb764765f5e3ff039/AlphaGo/TestService.git (push)
- 获取原始仓(主库仓)的branch分支最新代码到本地,合并两个版本的代码。
git pull main master
- 把合并后的最新代码同步到fork仓上。
git push origin master