入职新公司,就在 git 的使用上被各种虐。整理一篇文档,对这个问题梳理总结下。
之前用 git 都是直接新建分支,然后 PR review 后合到主分支,现在是先 fork 下,之前没用过 fork 😢,其实就是多了一步,从自己仓库的分支提 PR 。
Clone 代码
fork 代码后 clone 到本地。
git clone git@github.com:xxxxx/dev-git.git
我们可以用 git remote -v
看下远程仓库情况:
添加远程仓库
用 git remote add
添加远程仓库,这里的远程就是我 fork 的那个仓库。
git remote add upstream git@github.xxxxx/dev-git.git
这里的 upstream 是远程仓库的别名,类似 origin 。
现在我们可以看到已经有 2 个远程仓库地址了,origin 是我自己的远程仓库,upstream 是别人的,也就是真实项目的远程仓库。
PR
我们现在可以 upstream 远程仓库中提交一个 PR。先 fetch 一下 upstream 远程仓库的代码。确保我们的代码是最新的。
接下来就可以在 ide 上操作了。
我们可以看到远程分支了 upstream/main 和 origin/main ,upstream 是真正的项目地址,origin 是 fork 到我们仓库的分支。
checkout 下 upstream/main :
再拉下最新的代码
再切回到我们的 origin/main 分支
从我们的分支 checkout 一个新的开发分支 dev
rebase 下远程分支的代码
我们简单修改一行,提下代码
push
push 完成后我们的仓库会出现提示
现在我们就可以提一个 PR 了。
成功提了一个 PR
更新代码
PR 合并之后我们需要更新下代码:
checkout 到 upstream-main 分支,拉下代码
再切到 origin/dev 分支 rebase 下 upstream-main
以上,一个闭环结束。