学习目标:
GIT学习二、
学习内容:
1、修改撤回
2、删除文件
1、修改撤回
1、git checkout : 文件修改的撤销,让这个文件回到最近一次git commit或git add时的状态。
- 一种是文件自修改后还没有被放到暂存区,撤销修改就回到和版本库一模一样的状态
- 一种是文件已经添加到暂存区后,又作了修改,撤销修改就回到添加到暂存区后修改前的状态
- 现在我创建一个yyt.txt的文件内容为“a”,并git add到暂存区和git commit到分支master
第一次修改,在yyt.txt中添加“b”,此时我使用git checkout查看能否回到未修改前只有“a”的那个版本文件
[root@bogon learngit]# vi yyt.txt
[root@bogon learngit]# cat yyt.txt
aaaaaaaaaaaaaaa
[root@bogon learngit]# git add yyt.txt
[root@bogon learngit]# git commit -m "append GPL" yyt.txt
[master 703af2f] append GPL
1 file changed, 1 insertion(+)
create mode 100644 yyt.txt
[root@bogon learngit]# vi yyt.txt
[root@bogon learngit]# cat yyt.txt
aaaaaaaaaaaaaaa
bbbbbbbbbbbbbbb
[root@bogon learngit]# git checkout -- yyt.txt
[root@bogon learngit]# cat yyt.txt
aaaaaaaaaaaaaaa
再次修改文件添加“b”git add到暂存区并git commit,再次修改文件yyt.txt,添加“c”利用git checkot查看能否回到文件中只有“a”“b”的那个版本文件
[root@bogon learngit]# vi yyt.txt
[root@bogon learngit]# cat yyt.txt
aaaaaaaaaaaa
bbbbbbbbbbbb
[root@bogon learngit]# git add yyt.txt
[root@bogon learngit]# vi yyt.txt
[root@bogon learngit]# cat yyt.txt
aaaaaaaaaaaa
bbbbbbbbbbbb
cccccccccccc
[root@bogon learngit]# git checkout -- yyt.txt
[root@bogon learngit]# cat yyt.txt
aaaaaaaaaaaa
bbbbbbbbbbbb
2、git reset HEAD : 可以把暂存区的修改撤销掉(unstage),重新放回工作区
现在我创建一个文件wy.txt内容为“a”,并git add到暂存区和git commit到分支master,然后修改文件添加“b”,git add到暂存区不git commit到分支master,用git reset HEAD查看工作区能否回到只有“a”那个版本文件
[root@bogon learngit]# vi wy.txt
[root@bogon learngit]# cat wy.txt
aaaaaaaaa
[root@bogon learngit]# git add wy.txt
[root@bogon learngit]# git commit -m "append GPL" wy.txt
[master 46f4d85] append GPL
1 file changed, 1 insertion(+), 1 deletion(-)
[root@bogon learngit]# vi wy.txt
[root@bogon learngit]# cat wy.txt
aaaaaaaaa
bbbbbbbbb
[root@bogon learngit]# git add wy.txt
2、删除文件
在learngit这个文件中,创建一个test.txt的文件并git add到暂存区和git commit到分支,然后分别在工作区和分支中删除这个文件
[root@192 learngit]# ls -l
总用量 12
-rw-r--r--. 1 oot root 159 10月 22 09:06 readme.txt
-rw-r--r--. 1 oot root 20 10月 22 11:29 wy.txt
-rw-r--r--. 1 oot root 26 10月 22 10:57 yyt.txt
[root@192 learngit]# vi test.txt
[root@192 learngit]# git add test.txt
[root@192 learngit]# git commit -m "add test.txt" test.txt
[master 3553aee] add test.txt
1 file changed, 1 insertion(+)
create mode 100644 test.txt
[root@192 learngit]# git rm test.txt
rm 'test.txt'
[root@192 learngit]# git commit -m "remove test.txt"
[master f5e0b3e] remove test.txt
1 file changed, 1 deletion(-)
delete mode 100644 test.txt
- 删除过程中用到的删除命令
工作区:git -rm 文件名
分支:git commit -m “remove 文件名”