一、修改提交
如下图,Git分工作区和版本库(.git隐藏目录中)。
在每次修改后 git add "file name" 其实是把修改内容提交到本地版本库的 暂存区(stage)
而执行 git commit -m "commit description" 就是把暂存区内容提交到本地版本库的 master 分支
可以多次 add 后一次性 commit ,但是如果 add 再 修改 然后才commit ,则最后的修改不会被提交,因为 commit 只是把暂存区修改提交到版本库分支
查看工作区与本地分支是否一致 (git 命令无任何消息反馈就是好消息,如果出现消息,那肯定是要搞事情)
git diff HEAD -- readme.txt(file name)
二、撤销修改
当你改乱了工作区某个文件的内容,想直接丢弃工作区的修改时,总不能一直ctrl + z 吧,太low。
git checkout -- file 也
可以丢弃对于工作区指定文件的修改。
git checkout -- readme.txt
git reset HEAD file 也
可以把暂存区的修改撤销掉(unstage),重新放回工作区。
git reset HEAD readme.txt
git reset
命令既可以回退版本,也可以把暂存区的修改回退到工作区。
三、删除文件
在Git中,删除也是一个修改操作
rm test.txt // 删除文件
如果确实要从版本库删除某文件,在 rm file 后 git commit 就行了。
如果是误删,没事,版本库还有,执行 git checkout -- test.txt 就行了(但是会丢失误删前没有 commit 的修改)