Git 2.x中,“git add -A”和“git add .”之间有什么区别?
结论
git add -A 和 git add . 的区别如下:
git add -A :将整个树目录作为目标
git add . :将当前目录及其子目录作为目标
Git 1.x 版本包含了被删除的文件,而 Git 2.0 版本则没有这个区别。
核实
首先创建一个工作用的文件夹,并初始化git。
mkdir git-training
cd git-training
git init
为了验证下一步操作,我们要进行文件的创建和编辑。(我们使用了git add -A,但是现在先不要在意,这只是为了准备。)
echo 'Change me.' > change-me.txt
echo 'Delete me.' > delete-me.txt
git add -A
git commit -m 'ファイルを追加'
接下来将进行实际的添加操作。
echo 'New file.' > new-file.txt
mkdir dir
mkdir dir/subdir
echo 'File in dir.' > dir/file.txt
echo 'File in subdir.' > dir/subdir/file.txt
echo ' Changed.' >> change-me.txt
rm delete-me.txt
git status
git add -A
git reset
git add .
git reset
可以看出这两个是没有区别的。
cd dir
git add -A
git reset
git add .
git reset
git add -A 命令会将整个文件树都纳入到操作对象中,而 git add . 命令只会将当前目录及其子目录中的文件纳入到操作对象中。
请提供更多上下文或详细的信息。
-
- とうとう Git 2.0 が現実のものに。便利な機能満載
Difference between “git add -A” and “git add .”
Charles さんが 旧バージョンについて、DeveloperさんがGit2.0以降の動作について説明している