3—撤销操作

最后更新于:2022-04-01 06:44:55

#### 1.撤销add 有时候我们用hg add 没加参数,直接把所以没有纳入版本库的文件都添加进来了。 而有些文件我们不是想添加的,怎么办? 因为我们是add进来,第一个想到的命令是remove。 我们执行一下,hg会给我们如下提示: file has been marked for add (use forget to undo) 对,它推荐使用forget命令。这时forget命令就派上用场了。 ` hg forget xxx.java  ` 唯一的遗憾就是没有--all参数,我们只好一个一个把要撤销的文件加进来。 如果是同一个目录下的要forget,可以用通配符*来做。比如:hg forget app/build/* 对比git,可以使用rm --cached命令来撤销刚add的文件,如 ` $ git rm --cached tags  ` #### 2.撤销commit 当一次提交后,发现还有修改要做,比如我写的comment没有符合统一格式,那么我想修改它怎么办? (如果是comment修改,在git中用git commit --amend 就可以了。) 开始我觉得应该有一个commit参数专门做修改,感觉git好像有。但没有找到,所以只好想其他办法。 revert命令不太适合此种情况,rollback还可以。直白的说,它会把时间带到刚刚最新的那一版。     - commit     - import     - pull     - push (with this repository as the destination)     - unbundle 上述几个命令是可以执行rollback来回滚的。 我直接用rollback做了一次撤销commit的操作,然后进行一些修改,再次commit。 ~~~ hg rollback   hg commit -m "this time is all right."   ~~~
';