Github进行fork后如何与原仓库同步:重新fork很省事,但不如反复练习版本合并 #687
-
Beta Was this translation helpful? Give feedback.
Replies: 1 comment
-
1、首先 fork 目标仓库,系统会自动跳转到你的 github 账户下。 2、在本地启动终端,执行命令 git clone 目标仓库的 gitHub 地址。 3、进入刚 clone 的仓库目录中,执行 git remote -v 查看
origin 代表的就是我们的目标仓库地址,也是我们后期提交 pull request 的地址。 4、如果目标仓库没有设置权限,开发者可以自动进行目标库的 push 操作,直接执行 git push 就可以完成本地代码和目标仓库代码的同步。 5、如果目标仓库设置权限,那开发者就需要先将更改部分提交到自己的仓库地址,然后从自己的仓库发送 pull request 提交到目标仓库,等待目标仓库管理员合并。 1)首先注意我们 clone 代码后,通过 remote -v 只有 origin 一个仓库地址,这时候我们需要增加一个我们自己的一个仓库地址,执行命令
2)然后我们在执行 git remote -v 查看,这个时候就看到多了一个仓库地址也就是我们刚添加的。
这个时候我们在去提交代码就不能在直接 git push 啦,git push 默认是 git push origin master,解释一下就是会把内容提交到 orgin 目标地址下的 master 分支上,对于设置权限的仓库这样是肯定不行。 PS:当然用 vscode 的小伙伴,也不要点击左下角的小圈圈了,也是没有权限的。 3)我们需要执行 git push ymm next,意思很明显,我把本地修改的内容提交到 ymm 目标地址下的 next 分支上。 同理,权限允许的情况下,假如我们往主库提交代码,我们可以是这样 git push origin next PS:分支的名称和数量适合目标仓库是一致的。
4)这里大家还要注意,我们本地代码如何去主库代码保持一致,道理同上,我们直接 git pull 也只是同步的 master 分支的内容,我们需要 git pull origin next ,拉去 origin 地址下的 next 分支的内容,这个时候就可以保持对应分支内容的一致,不会出现每次提交代码都有冲突。 PS: 这里注意下 git fetch,git fetch 并没更改本地仓库的代码,只是拉取了远程 commit 数据,而 git pull 实际做了两件事:git fetch + git merge。 5)内容提交到自己仓库以后,我们登录 github 账号,在自己仓库下进入 Pull requests ,点击 new pull request,然后就可以向目标仓库发出合并请求了。 |
Beta Was this translation helpful? Give feedback.
1、首先 fork 目标仓库,系统会自动跳转到你的 github 账户下。
2、在本地启动终端,执行命令 git clone 目标仓库的 gitHub 地址。
3、进入刚 clone 的仓库目录中,执行 git remote -v 查看
origin 代表的就是我们的目标仓库地址,也是我们后期提交 pull request 的地址。
4、如果目标仓库没有设置权限,开发者可以自动进行目标库的 push 操作,直接执行 git push 就可以完成本地代码和目标仓库代码的同步。
5、如果目标仓库设置权限,那开发者就需要先将更改部分提交到自己的仓库地址,然后从自己的仓库发送 pull request 提交到目标仓库,等待目标仓库管理员合并。
1)首先注意我们 clone 代码后,通过 remote -v 只有 origin 一个仓库地址,这时候我们需要增加一个我们自己的一个仓库地址,执行命令
2)然后我们在执行 git remote -v 查看,这个时候就看到多了一个仓库地址也就是我们刚添加的。