CasecoRI & 镜像
CasecoRI & 镜像

Git bash 撤销提交

前言

最近在 Termux 使用 vim 进行编辑,但粘贴内容时缩进就混乱了。

这个可以这样解决:

:set noai nosi

这样就取消了自动缩进和智能缩进,这样粘贴就不会错行了。但在有的 vim 中不行,还是排版错乱。

更好的解决方法:

:set paste

进入 paste 模式以后,可以在插入模式下粘贴内容,不会有任何变形。

Git 的几种状态

未修改
      原始内容
已修改 ↓   
      工 作 区
已暂存 ↓ git add
      暂 存 区
已提交 ↓ git commit
      本地仓库
已推送 ↓ git push
      远程仓库

已修改 未暂存

已经修改了文件,还未进行 git add
即工作区的内容不想要了。

使用以下任意命令恢复:

git checkout .
git checkout -- <FILENAME>
git reset --hard

已暂存 未提交

已经进行了 git add,还未进行 git commit,即暂存区的内容不想要了。

使用以下任意命令恢复:

git reset
git checkout .
git reset --hard
git reset HEAD
git reset HEAD -- <FILENAME>

已提交 未推送

已经进行了 git commit,还未进行 git push

使用远程仓库覆盖本地仓库来恢复:

git reset --hard origin/分支名

已推送

已经进行了 git push

回滚本地仓库,强制推送覆盖远程仓库:

git reset --hard HEAD^
git push -f

丢弃某个节点后的全部提交

即 HEAD 指针指向该节点。

git reset --hard <COMMITID>

后记

有时候需要删除 Github 上打的 tag,Github 删除 tag 需要在命令行操作。

git tag -d [tag]
git push origin :[tag]

如果分支和 tag 重名了,可以用下面的方法删除:


git tag -d [tag] 
git push origin :tags/[tag]

发表回复

textsms
account_circle
email

CasecoRI & 镜像

Git bash 撤销提交
前言 最近在 Termux 使用 vim 进行编辑,但粘贴内容时缩进就混乱了。 这个可以这样解决: :set noai nosi 这样就取消了自动缩进和智能缩进,这样粘贴就不会错行了。但在有的 vim 中不行,…
扫描二维码继续阅读
2022-04-02