常用git命令

183 阅读2分钟

用于本人日常备忘

注意事项

  • 执行命令前确认当前分支是否正确

具体命令

拉取

git pull

提交

git commit '修改说明'

强制提交

git commit -m  "修改说明" --no-verify

推送

git push

强制推送

git push -f

回退到某个历史版本

git reset --hard xxxx(commitId)

回退到上一版本

git reset --hard HEAD^

将其它分支指定的提交(commit)应用于当前分支

多个提交可连续跟多个commitId,用空格隔开

git cherry-pick xxx(commitId)

git cherry-pick --quit 退出当前的chery-pick序列

git cherry-pick --abort 取消当前的chery-pick序列,恢复当前分支

撤销某次提交

将修改的内容再改回去,撤销也会作为一次提交保存

git revert commitId

用其它分支完全覆盖当前分支

此功能慎用,如a覆盖b,覆盖后b的提交记录也跟a一致

git reset --hard origin/a(覆盖当前分支的分支名)

本地覆盖远端

git push origin 分支名 --force

合并远端提交

此功能慎用,只用于自己的开发分支,不要在公共分支上做此操作

git rebase -i commitID

首先需要确定commitID,如我需要合并红色区域内的最新的3条提交,那么commitID是绿色区域的那一个,即需要合并的最早提交记录的上一条。

1.png 执行后效果如图

2.png 此时按下键盘的i,进行编辑,将除了最早的那一条,其它的都改成s

指令说明
pick:保留该commit(缩写:p)
reword:保留该commit,但我需要修改该commit的注释(缩写:r)
edit:保留该commit, 但我要停下来修改该提交(不仅仅修改注释)(缩写:e)
squash:将该commit和前一个commit合并(缩写:s)
fixup:将该commit和前一个commit合并,但我不要保留该提交的注释信息(缩写:f)
exec:执行shell命令(缩写:x)
drop:我要丢弃该commit(缩写:d)

3.png

4.png 修改好后,按下键盘的esc,输入:wq 保存退出

5.png 此时可以修改commit message,前面加#注释掉不要的message,修改好后,按下键盘的esc,输入:wq 保存退出

6.png

7.png 执行成功后 git log查看

8.png 使用git push -f提交

npm 依赖包更新
rm -rf node_modules
rm package-lock.json
npm cache clean --force
npm install