Git使用七:修改最后一次提交、删除文件和重命名文件

时间:2023-03-08 20:14:19

修改最后一次提交:

在实际开发中,可能会遇到以下两种情景:
情景一:版本刚一提交(commit)到仓库,突然想起漏掉两个文件还没有添加(add)。
情景二:版本刚一提交(commit)到仓库,突然想起版本说明写得不够全面,无法彰显你本次修改的重大意义……

执行带 --amend 选项的 commit 提交命令,Git 就会“更正”最近的一次提交。

之前修改的文件只是提交到了暂存区,并没有提交到仓库

Git使用七:修改最后一次提交、删除文件和重命名文件

执行:git commit --amend就会进入到此次提交版本的编辑说明中

Git使用七:修改最后一次提交、删除文件和重命名文件

也可以直接git commit --amend -m "this is commit3"

Git使用七:修改最后一次提交、删除文件和重命名文件

看log,不会产生新的快照

Git使用七:修改最后一次提交、删除文件和重命名文件

删除文件:git rm 文件名

该命令删除的只是工作目录和暂存区域的文件,也就是取消跟踪,在下次提交时不纳入版本管理。
当工作目录和暂存区域的同一个文件存在不同内容时,执行 git rm -f 文件名 命令就可以把两个都删除。
git rm --cached <file>:只删除暂存区域的文件(保留工作目录的)

从工作目录删除text2

Git使用七:修改最后一次提交、删除文件和重命名文件

Git使用七:修改最后一次提交、删除文件和重命名文件

git checkout -- <file>:从暂存区检出文件到工作区(恢复)

Git使用七:修改最后一次提交、删除文件和重命名文件

git rm <file>:删除文件

Git使用七:修改最后一次提交、删除文件和重命名文件

这个时候去查看状态,还是会看到关于text2的信息

Git使用七:修改最后一次提交、删除文件和重命名文件

这个时候,回到过去就行了:git reset --soft HEAD~

也可以使用git rm -f <file>:强制删除

重命名文件:git mv 旧文件名 新文件名

ren/mv 旧文件名 新文件名
git rm 旧文件名
git add 新文件名

把工作区的text1改成text3,再查看状态

Git使用七:修改最后一次提交、删除文件和重命名文件

再改回来

Git使用七:修改最后一次提交、删除文件和重命名文件

使用mv命令修改文件名(和linux一样)

Git使用七:修改最后一次提交、删除文件和重命名文件