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以降の動作について説明している

广告
将在 10 秒后关闭
bannerAds