git checkout 不该提交代码提交了代码的分支
git reset 某次提交哈希值 (git reset HEAD~1 最近一次提交放回暂存区, 并取消此次提交)
git add . 将文件提交到暂存区
git stash (把暂存的文件提交到git的暂存栈)
git checkout 该提交代码的分支
git stash pop 正常提交代码即可
上面命令行是用来修复一个错误提交的情况。下面是对每个命令的解释:
-
git checkout 不该提交代码提交了代码的分支
:此命令用于切换到包含错误提交的分支,即含有错误提交代码的分支,以便后续进行修复。 -
git reset 某次提交哈希值
:此命令是将代码库回退到指定的提交,即将最近的一次错误提交取消,并将其放回暂存区。例如,git reset HEAD~1
表示将最近的一次提交放回暂存区,并取消该次提交。 -
git add .
:此命令将当前目录下的所有文件提交到暂存区,以便后续提交。 -
git stash
:此命令将暂存的文件提交到Git的暂存栈中,即将当前分支的未提交的更改保存起来。这样可以暂时保存修改,以便切换分支或进行其他操作,而不必立即提交。 -
git checkout 该提交代码的分支
:此命令用于切换回包含正确代码的分支,即之前的正确提交所在的分支。 -
git stash pop
:此命令用于恢复之前保存在Git的暂存栈中的更改。即将之前暂存的修改应用到当前分支中。
最后,您可以正常提交代码以完成修复。这些命令的组合可以帮助您在版本控制系统Git中修复提交错误的情况。