如何将派生仓库的分支拉取到我的本地原始仓库中?
拉取派生仓库PR对应分支到本地的操作指南
你本地看不到对方分支是正常情况,默认你的本地git仅跟踪原始仓库的分支,对方派生仓库的分支不在默认的远程跟踪范围内,按以下两种方式操作即可:
方法1:通过PR编号直接拉取(无需添加额外远程源,单次拉取推荐)
- 进入本地原始仓库的根目录
- 执行拉取命令,将对应PR的内容拉到本地新建的分支:
git fetch origin pull/<PR编号>/head:<本地自定义分支名>
示例:若PR编号为42,想将本地分支命名为pr-42-modify,命令为:git fetch origin pull/42/head:pr-42-modify - 拉取完成后切换到该分支即可开始修改:
git switch <本地自定义分支名>
旧版本git可使用:git checkout <本地自定义分支名>
方法2:添加对方派生仓库为远程源后拉取(需要频繁和对方仓库交互时推荐)
- 先从PR页面复制对方派生仓库的克隆地址(私有仓库只要你有访问权限即可正常使用)
- 执行命令添加对方仓库为本地远程源,建议用对方用户名作为远程源别名方便识别:
git remote add <对方用户名> <对方仓库克隆地址>
示例:对方用户名为lisi,仓库地址为git@github.com:lisi/your-repo.git,命令为:git remote add lisi git@github.com:lisi/your-repo.git - 拉取该远程源的所有分支数据:
git fetch <对方用户名> - 此时执行
git branch -r就能看到对方的所有分支,执行命令生成本地分支并切换:git switch -c <本地自定义分支名> <对方用户名>/<对方分支名>
示例:对方分支名为add-login-api,命令为:git switch -c lisi-add-login lisi/add-login-api
验证操作
拉取完成后执行git log查看提交记录,和PR页面的提交信息匹配即表示拉取成功,可以正常进行修改操作。
内容的提问来源于stack exchange,提问作者Kaushal Bhavsar
相关产品推荐
相关产品推荐

