一、场景说明
场景:
比如我们Codeup的私有仓库下载代码
放入我们的Github私有仓库
且保持2个仓库是可以实现fork的状态,即:Github会可以更新到Codeup的最新代码
二、解决方案
1、先从Codeup下载私有仓库代码
下载代码使用 git clone 命令
不能下载 zip 包
必须包含所有 git 历史记录才能自动合并,否则只能手动合并
例如codeup的地址如下:
bash
codeup.aliyun.com/64c4c5eea0c93ee744687908/simple-paid-module/simple-admin-core-tenant.git
2.、修改 .git/config 文件
下载代码后打开代码文件夹下的 .git/config 文件,修改 origin 地址为自己的私有库 https 地址
![](https://i-blog.csdnimg.cn/direct/c2126520f17d41d5a079be76f9993113.png)
在 Github 中创建私有仓库
并获取 Github私有仓库 Https 链接
替换上面的 Https地址
3、如何同步 fork 仓库?(一次性配置)
给 fork 配置远程库,先查看远程状态
bash
git remote -v
确定一个将被同步给 fork 远程的上游仓库, upstream 后的地址是你即将同步的 git 地址
bash
git remote add upstream git+https://账号:密码 @codeup.aliyun.com/64c4c5eea0c93ee744687908/simple-paid-module/simple-admin-core-tenant.git
上面需要的【账号】、【密码】如果是codeup的我们从 codeup-我得-HTTPS密码 获取
开始同步 fork
bash
git fetch upstream
切换到本地主分支(这一步基本可以省略)
bash
git checkout master
把 upstream/master 分支合并到本地 master 上,这样就完成了同步,并且不会丢掉本地修改的内容。
bash
git merge upstream/master
4、fork更新上游Codeup代码
以后需要合并新代码的时候只需要执行以下两条命令
bash
git fetch upstream
git merge upstream/main
5、关于下游Github 提交代码
提交代码就直接 git push , 由于 origin 已经改为私有库,直接 push 即可