赞
踩
如果需要在提交历史中跳转查看某个文件,可以使用 git restore 仅仅恢复工作树为某个提交版本,而不用切换分支, HEAD 仍然保持不变.
假设现在git仓库如图:
git restore 命令用于从 index 或某个 commit 恢复工作树里的文件
1.git restore main.cpp (假设在仓库中修改了文件 main.c ,然后进行了一次 stage ,然后又修改了main.c 。对于第二次修改后的 main.c ,如果想把 main.c 恢复到集结版本) // git checkout – main.cpp
操作如图:
2.git restore –staged(或-S) main.cpp (与 git stage main.cpp互逆,撤销集结)
操作如图:
3.git restore -s HEAD main.cpp (恢复到HEAD指向的版本)
操作如图:
4.git restore -s @ main.cpp (@ 是 HEAD 的简写,恢复到HEAD指向的版本)
5.git restore -s @~1 main.cpp (恢复到HEAD前一个版本)
操作如图:
6.git restore -s log_index_id main.cpp (恢复到指向的任意一个版本)
操作如图:
7.git restore *.cpp -s @ (恢复所有的cpp文件到HEAD指向的版本)
操作如图:
8.git restore -s @~1 -p main.cpp (以交互的方式查看和选择恢复源和当前文件的差异)
操作如图:
9.git restore . -s@~2 (恢复当前目录下的所有文件到指定版本)
操作如图:
10.git restore :/ 恢复所有工作树文件到HEAD指向的版本
操作如图:
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。