Git 工作目录中,文件的状态基本存在两种: 跟踪 (tracked) 和 未跟踪 (untracked)。
1. 文件添加
向仓库版本控制系统中添加文件,之后对此文件的修改,将被 Git 记录,也就是 Git 将跟踪此文件。
操作使用命令
git add <filename>
命令中 <filename> 使用具体的文件名替换,如添加 readme.md 文件到仓库,示例:
git add readme.md
其他的 git add 操作
- git add 允许一次添加多个文件,语法为
git add <filename1> <filename2> ...
- git add 可以添加指定目录,目录的添加会自动添加子目录
git add <directory_name>
- 允许添加当前目录下的所有文件
git add .
注:使用过命令行的开发人员应该对
.
和..
符号不陌生,.
表示当前目录,..
表示上层目录
2. 文件移除
从仓库文件管理系统中移除文件,文件将变为未跟踪状态,之后对此文件的任何修改,Git 将一致忽略。操作使用命令 :
git rm <filename>
同理,<filename> 使用具体的文件名称替换,例如删除 readme.md 文件
git rm readme.md
此种方式,不仅将文件状态置为未跟踪,也会从工作目录删除此文件。若只需要将文件状态置为未跟踪,本地保留此文件,则需要加上 --cached
选项。示例:
git rm --cached readme.md
其他使用:
- 如果文件已经添加到暂存区,则必须使用强制删除
-f
git rm -f <filename>
- 可以对目录进行递归删除
-r
, 则会删除整个目录下的所有子目录和文件git rm -r <directory_name>
3. 文件重命名
Git 不显式跟踪文件移动,常规方式对文件命名,大部分情况下 Git 可以检测出来,但通常使用命令:
git mv <source> <destination>
<source> 表示文件原名称,<destination> 表示文件重命名后的名称。使用时用具体文件名代替,例如,需要把 readme.md 文件重命名为 readme.txt。则可使用
git mv readme.md readme.txt
这相当于执行了三个命令
$ mv readme.md readme.txt
$ git rm readme.md
$ git add readme.txt
实际操作中,只需要执行 git mv
一条命令。
如果新文件已经存在,还是要重命名它,则需要使用 -f
git mv -f <source> <destination>
参考链接