日常工作git操作总结

97 阅读2分钟

只为自己日常工作总结

git stash 当前开发工作进行到一半时、需要切换分支时

git stash apply 恢复之前暂存到工作区的代码

git reset --soft HEAD^ 对于已经提交过的commit,但是之后又有新的修改的时候!注意远程commit时候 需要 git push -f

git cherry-pick 将a分支代码复制到b分支

git revert <commitHash> 应对代码推送到远程、但是这段代码有问题. 此时revert掉这条记录并且会生成一条新的记录!进入vim模式修改

-m 后面要跟一个 parent number 标识出"主线",一般使用 1 保留主分支代码,剩下的分支被撤销。

git revert -m 1 <commitHash>这种情况通常用于你revert的某条记录是多个分支的合并交集,那么这种情况,直接revert通常会出现error提示不允许revert,其实这个问题的原因是因为,在revert的时候,没有指定主要分支,需要 revert 掉之前 revert 的合并提交

git relog 当你不小心在别人的代码分支做了改动并且推到远端时,想着reset --hard 结果不小心reset 过头,把别人的代码也reset了, 这时就可以从git relog找到你那次commitHash,然后记录下这次错误id,再次reset回去就好了,历史操作记录

git rebase -i <commitHash> 这种情况多用于本地多次提交记录的情况,也可以使用git rebase -i HEAD~3其中-i 代表进入编辑模式根据不同需求

  • pick 提交1
  • s 提交2
  • s 提交3

退出编辑模式,会进入一个让你重新定义commit说明的界面,然后dd 删除一行,重新修改保存就可以了!