如何基于队友Fork仓库的feature分支开发并保留双方提交?
操作步骤
- 更新本地主仓库代码
先确保你本地的team_repo/project仓库代码是最新状态:
git checkout main git pull origin main
- 添加队友的Fork作为远程仓库
给队友的仓库设置一个别名(比如teammate),方便后续操作:
git remote add teammate https://github.com/teammate/project.git
如果之前已经添加过该远程仓库,直接执行git remote update刷新分支信息即可。
- 拉取队友的feature分支到本地
将队友的feature分支拉取到本地,同时创建对应的本地分支:
git fetch teammate git checkout -b teammate-feature teammate/feature
- 基于队友分支开发并提交代码
现在你处于基于队友feature分支的本地分支上,正常完成开发后提交变更:
git add . git commit -m "完成xxx开发内容"
- 推送分支到自己的Fork仓库
把包含你和队友代码的分支推送到自己的Fork仓库(假设你的远程别名为origin):
git push origin teammate-feature
- 向主仓库发起Pull Request
在代码托管平台上,从你Fork的teammate-feature分支向team_repo/project的main分支发起PR,PR中会完整保留你队友的提交记录和你的提交记录。
补充:若队友后续更新了feature分支
如果队友在你开发过程中更新了他的feature分支,你需要同步最新代码:
git fetch teammate git merge teammate/feature # 解决冲突后提交 git commit -m "合并队友最新的feature分支代码" git push origin teammate-feature
内容的提问来源于stack exchange,提问作者noobie2023
相关产品推荐
相关产品推荐

