搬砖够用的Git实践总结

162 阅读2分钟

实践总结

基本流程

  1. fork主项目并clone到本地
  2. 添加上游仓库,这个操作每个项目只要做一次,目的是将本地项目与主项目连接起来,可以保证本地项目的代码处于最新状态。
//查看上游仓库
git remote -v


//添加上游仓库(链接主项目)
git remote add upstream xxxxxx(上游仓库地址)


//如果添加错了,可以删除上游仓库再添加
git remote rm upstream


//最后再检查一下
git remote -v

成功结果如图:

image.png

  1. 为了确保后续PR方便(少解冲突、少rebase),每次开发新功能都要新建一个分支,并且分支的代码要是最新的,这就需要每次都以最新代码为基础创建分支。
//抓取上游代码仓库的更新,让本地项目同步到最新状态
git fetch upstream


//这里假设newest分支是最新的,这时候就要从上游的newest分支切出新分支,
git checkout upstream/newest -b xxxx(新分支名)


//查看当前分支track对应的远端分支,如果是upstream就要进行下一步处理
git branch -vv

4. 变更新建分支对应的track

//此时该分支的track是连接在上游仓库的,也就是说直接push,会将代码推到主项目,这样做很不规范,
//会有未经审核的代码进主项目,所以要在origin中新建分支保存代码
git push -u origin xxx(新分支名)


//查看当前分支track对应的远端分支,如果是origin就没问题
git branch -vv

5. 开发完后,将代码推到origin,并且向主项目提出PR来合并代码。大概流程就是这样了,下面再讲讲常见问题。

常见问题

  1. 如果将本地修改误提交到主项目,重复进行revert和提交操作
git revert HEAD

git push origin/...

git revert HEAD

git push origin/...

2. 有许多零碎的commit需要合并成一个commit 参考资料

git rebase -i commit-hash(某次commit对应的hash
  1. 在自己开发过程中,别人推了代码,造成主项目更新,自己正在开发的分支要实时更新
git pull --rebase upstream xxx(主项目最新分支)

后记

欢迎大佬指导,欢迎捉虫~