github上fork原项目,如何将本地仓库代码更新到最新版本?
场景:
在github上fork原项目,项目组成员发起pull request提交了代码,这时自己在本地仓库该如何更新到最新代码?
操作方法如下:
方法一、从github上进行操作然后更新
登录自己的github账号,在fork的项目内点击“New pull request”:
将base fork改成自己github上fork后的项目,head fork改成原项目,如果base fork选择了自己fork完的项目后变成两个都是master,可以点一下“compare across forks”
点击“Create pull request”进入页面,填写信息后提交
点击“Merge pull request”合入代码
这时候回到自己github账号下fork的项目code下看commits可以看到原项目新提交的内容都已经合过来了
这时候在本地执行"git pull"就可以更新到最新的代码了
方法二、通过命令行fetch拉取原仓库更新
1. 配置当前当前fork的仓库的原仓库地址
git remote add upstream <原仓库github地址>
2. 查看当前仓库的远程仓库地址和原仓库地址
git remote -v
3. 获取原仓库的更新。使用fetch更新,fetch后会被存储在一个本地分支upstream/master上。
git fetch upstream
4. 合并到本地分支。切换到本地master分支,合并upstream/master分支。
git merge upstream/master
5. 这时候使用git log就能看到原仓库的更新了。
git log
6. 如果需要自己github上的fork的仓库需要保持同步更新,执行git push进行推送
git push origin master