撤销添加(unstaged changes), 也就是 add 的逆操作:
git reset HEAD -- file
放弃修改,git 会用当前的历史版本覆盖它,对已经修改并添加的文件无效,需要先撤销添加再放弃:
git checkout -- file
删除:
git rm
// 等于手动删除再 add
重命名:
git mv origin_name new_name
// 相当于重命名再 add
修补最近一个commit(修补提交最明显的价值是可以稍微改进你最后的提交,而不会让“啊,忘了添加一个文件”或者 “小修补,修正笔误”这种提交信息弄乱你的仓库历史。)
假设我本来要将文件1提交的,
git add 1
git commit -m '1'
提交后我才发现文件2(可以再对1提交后再对2进行更改,此时也是可以amend的;跳转到其他分支后再回来本分支或者需要穿梭到之前某个版本需要进行修补也可以amend)也理应包含到这次commit里面于是我可以执行:
git add 2
git commit --amend -m '1 and 2'
用 git reflog 查看的话,还是可以查看到那个不需要的提交,但是git log就看不到了,push到远程别名里面后上面也是看不到那个不需要的提交









网友评论