Git 添加文件夹

Isaac Newton Aranas 2023年1月30日 2022年4月20日
  1. 使用 git add 将所有或特定文件夹和文件添加到 Git 中的暂存内容
  2. 在 Git 中创建包含 2 个文件夹和文件的项目文件夹以测试 git add
  3. 结论
Git 添加文件夹

git add 用于添加特定的文件夹和文件。本教程将以现代方式处理 git add <folder>

使用 git add 将所有或特定文件夹和文件添加到 Git 中的暂存内容

使用以下语法添加文件:

git add <file>

使用以下语法添加文件夹:

git add folder1/

或者

git add folder1

对于旧版本的 git,添加 --all 标志并在文件夹名称的末尾添加正斜杠

git add --all <folder>/

例如:

git add --all folder1/

在 Git 中创建包含 2 个文件夹和文件的项目文件夹以测试 git add

首先,使用以下命令创建一个文件夹:

mkdir project-folder

要进入文件夹,请使用 bash 代码。

cd project-folder

在项目文件夹中,打开 Git Bash。

git init

Initialized empty Git repository in C:/You/Documents/project-folder/.git/

这将初始化一个 git 工作树。在项目文件夹中创建两个新文件夹,并将它们命名为文件夹 1 和文件夹 2。

folder1 中,添加一个文本文档并将其命名为 text1.txt

要创建文件,请运行以下命令:

touch text1.txt

在 Git Bash 上,运行以下代码:

git status

On branch master

No commits yet

Untracked files:
  (use "git add <file>..." to include in what will be committed)
        folder1/
        folder2/

nothing added to commit but untracked files present (use "git add" to track)

folder1/folder2/ 是未跟踪的文件,不包含在准备提交的文件和文件夹中。

注意
此示例练习中还没有暂存文件或文件夹。

假设我们想单独添加 folder2/。我们将添加它,而 folder1 将不暂存。

git add --all folder2/

或者

git add folder2

检查状态。

git status

On branch master

No commits yet

Changes to be committed:
  (use "git rm --cached <file>..." to unstage)
        new file:   folder2/text1.txt

Untracked files:
  (use "git add <file>..." to include in what will be committed)
        folder1/

folder2/text1.txt 文件和文件夹现在已添加到暂存内容中。未跟踪的文件夹是 folder1/.

. 也表示所有,但不等同于 --all

运行 git add . folder2/ 而不是 git add --all folder2/。我们将 folder2 放回 unstaged 并再次将它暂存以进行测试。

git restore --staged .

或者

git rm --cached folder2/ -r

让我们检查一下状态;

git status

On branch master

No commits yet

Untracked files:
  (use "git add <file>..." to include in what will be committed)
        folder1/
        folder2/

nothing added to commit but untracked files present (use "git add" to track)

现在所有文件夹都未跟踪,我们可以测试代码 .

git add . folder2/
git status

On branch master

No commits yet

Changes to be committed:
  (use "git rm --cached <file>..." to unstage)
        new file:   folder1/text1.txt
        new file:   folder2/text1.txt

其中两个被添加为 . 适用于所有文件和文件夹。

所以不要使用 . 并期望阶段特定的文件夹。使用 --all,如 git add --all folder2/

结论

添加文件夹与添加文件基本相同。现在我们可以运行 git add <folder>git add <folder>/ 到 cherry-pick 文件夹来暂存。

相关文章 - Git Add