跳转至

修改

1.认识修改(了解)

Git之所以比其他版本控制系统设计得优秀,就是因为**Git跟踪并管理的是修改,而非文件** - 反正就是,管理修改比管理整个文件,简单多了,效率、性能也更高

一般来说,我们把所有修改都放入暂存区后,再一起提交 - 这比 存一次、提交一次,方便些

第一次修改 -> git add -> 第二次修改 -> git add (没有更多的修改了) ->  git commit

2.撤销修改

1.这里有三种情况

  • 一种是test.txt修改后,还没有被放到暂存区【修改后还没有add
  • 现在,撤销修改,就回到和版本库一模一样的状态(回到版本起始点)
  • 一种是test.txt添加到暂存区后、还没有提交,但又做了修改**【add后又进行了修改】**
  • 现在,撤销修改,就回到添加到暂存区后的状态(回到add后那一瞬间的状态)
  • 一种是test.txt修改后,放到了暂存区,没有进行下一步的修改**【add后没有进行任何修改】**
  • 现在,撤销修改,就能将暂存区的修改,退回工作区(将add的修改,退回到工作区)

2.前两种修改的撤销,其本质是回到版本原点

  • 会回到上一次commitadd的那个节点(回到最新的版本起点)
git checkout -- test.txt # 把test.txt文件在工作区的修改,全部撤销

3.对于第三种修改的撤销,其本质,是 将add到暂存区的修改,退回工作区

git reset HEAD test.txt

# 当我们用HEAD时,表示最新的版本,也即 退回最新版本的暂存区中的修改

# 或使用下面这种,效果一样,但语义更清楚【推荐】
git restore --staged test.txt  
本文阅读量  次
本站总访问量  次
Authors: wangshangjian