记录常用的git操作
rebase提交
为了方便管理以及回滚操作工作中所有的提交操作均使用的rebase。
git add .
git commit -m "xxx"
git pull origin master --rebase
git push origin your_branch # 如果在次分支上再次操作rebase后push需要-f
stash操作,比如发现自己尴尬的用错分支了
git add .
git stash
git stash list
git stash pop
sqush合并commit
在艰难的mr中可能你和评审人要进过多次交锋,而你的分支可能提交了很多commit后才终于达到合并要求,这时可以将你的多个commit压成一个。
git log # 查看自己需要合并几个commit
git rebase -i HEAD~3 # 比如需要合并最近的3个commit
执行完
git rebase -i HEAD~3
后会进入一个编辑器在这里面将非第一个的pick改成s(sqush的简写)然后保存退出后会再进入一个编辑器编辑这次的commit。
修改commit
git commit --amend # 修改最近的一次commit
或者当你发现本次的commit漏提交了一些东西也可以用amend将漏的带上
git commit -m "你忘记提交了某些东西"
git add .
git commit --amend
回滚操作
git reset --hard <commit id> # 回滚到指定commit
git reset --hard HEAD~3 # 回滚到3次前的commit
切换远程到本地分支
git checkout -b your_branch remote/origin/branch
拉取远程分支强制覆盖本地
git fetch --all
git reset --hard origin/master
git pull
删除远程已经删除本地依然存在的分支
git fetch -p