【git】synchronize fork project
之前修改了hexo cactus主题一些中文配置后创建的pull request(first pull request)已经被原作者merge了。由于原始仓库也有了其他的一些更新,所以接下来就需要把原始仓库的更新同步到个人的远程仓库。
具体做法是:1. 本地仓库与原始仓库建立关联;2. 将原始仓库的更新fetch到本地仓库;3. 本地仓库通过create pull request的方式更新到个人远程仓库。(关于本地仓库/原始仓库/远程仓库的理解,参考:push local project to github)
Guide // TODO
add original repository
查看当前所在分支:git branch
切换到pull request专用分支branch-tony: git checkout branch-tony
查看远程仓库关联信息:git remote -v
添加原始远程仓库关联:git remote add upstream https://github.com/probberechts/hexo-theme-cactus.git
(自定义原始仓库标识为upstream)
再次查看远程仓库关联信息:git remote -v
fetch from original repository to local
更新原始仓库到本地仓库branch-tony分支,以及merge说明:
1 | git fetch upstream master |
更新到远程仓库branch-tony分支:
1 | git add . |
create pull request to origin master
Compare & pull request, 选择个人远程仓库的master分支
编辑commit comment,create pull request
没有conflict就可以merge到master分支
然后本地仓库再切换到master分支:git checkout master
从个人远程仓库fetch到本地仓库:
1 | git fetch origin master |
个人远程仓库与原始仓库同步完毕。
PS: 注意分支branch-tony是专门用于create pull request,分支master才是做自定义配置和日常使用。