步骤
当你在远程端(如 Github)上 fork 了别人的一个仓库时,你的远程仓库将新建一份 fork 来的“仓库副本”。如果你想在本地修改这份副本仓库,你需要先 clone 它到本地:
|
|
添加远程仓库,远程仓库的内容并合并
为了获得 fork 源仓库的更新,现在要添加 fork 源仓库的地址
|
|
以上设置好了,当你要更新 fork 源仓库的时候,首先 fetch 一份源仓库变动到本地
|
|
这会生成一个分支,如:upstream/master。
然后,切换到本地分支:
|
|
合并 upstream/master 分支的变化到本地分支:
|
|
如果有冲突的话,需要丢掉本地分支:
|
|
到这里,仅把 fork 源仓库更新到了本地仓库,如果想要更新远程端的 fork 仓库副本 ,必须向远程端 push 一次:
|
|
关于 “ -u “
- git push -u origin master 上面命令将本地的master分支推送到origin主机,同时指定origin为默认主机,后面就可以不加任何参数使用git push了。 - git push 默认只推送当前分支,这叫做simple方式。此外,还有一种matching方式,会推送所有有对应的远程分支的本地分支。Git 2.0版本之前,默认采用matching方法,现在改为默认采用simple方式。 - git push origin 将当前分支推送到origin主机的对应分支。如果当前分支只有一个追踪分支,那么主机名都可以省略。
如果想把更新代码提交到源仓库,必须要有权限,否则就只能通过源仓库操作:
当某个人fork项目后,并推送改动后,源仓库会收到一个open的Pull Request,然后决定是否合并,不合并可以忽略。
其他:查看本地仓库
|
|