在使用开源框架进行开发时,我们通常会通过直接fork仓库来创建一个自己的仓库,并在后续通过 sync fork 功能同步上游仓库的更新。然而,在GitHub上,fork的公共仓库无法转换为私有仓库,这对开发业务代码来说不太方便。因此,我们需要将代码通过导入或复制等方式转移到自己的私有仓库中。然而,这样做的话,就不能直接使用sync fork来同步代码了。

此时,我们可以选择将上游仓库地址添加到git的远程仓库配置中。这样,当我们需要获取上游仓库的更新时,只需拉取远程代码并将其合并到自己的开发分支中即可。以下是具体步骤和操作说明:

添加上游远程仓库

  1. 克隆私有仓库
    首先,将私有仓库克隆到本地:

    git clone https://github.com/your-username/your-private-repo.git
    cd your-private-repo
  2. 添加上游仓库
    接着,添加上游公共仓库地址作为远程仓库:

    git remote add upstream https://github.com/original-owner/original-repo.git
  3. 验证远程仓库
    确认远程仓库添加成功:

    git remote -v

    输出应包含 originupstream 两个远程仓库地址。

同步上游更新

  1. 获取上游更新
    从上游仓库获取更新:

    git fetch upstream
  2. 合并更新
    将更新合并到本地分支(如 main 分支):

    git checkout main
    git merge upstream/main

    解决合并冲突(如有),并提交合并结果。

  3. 推送到私有仓库
    最后,将合并后的代码推送到自己的私有仓库:

    git push origin main

通过上述步骤,可以在保持私有仓库的同时,方便地从上游仓库获取最新的代码更新,并将其合并到自己的开发分支中。这种方式不仅保持了代码的私密性,还能灵活地获取开源社区的最新成果,极大地方便了开发工作。

最后修改:2024 年 05 月 31 日
如果觉得我的文章对你有用,请随意赞赏