【问题标题】:git add all except ignoring files in .gitignore filegit add all 除了忽略 .gitignore 文件中的文件
【发布时间】:2011-09-30 13:20:21
【问题描述】:

我正在向一个没有源代码控制的项目添加源代码控制。问题是有很多文件最初使用 .gitignore 文件添加到 git,但我无法弄清楚如何添加所有文件而不包括与 .gitignore 文件。

git add *

上述命令不会添加任何文件,因为它会检测到被 .gitignore 忽略的文件。

git add -f *

上述命令将添加所有文件,包括我希望忽略的文件。

那么,如何在添加所有文件的同时仍然遵守 .gitignore 文件?

【问题讨论】:

    标签: git init gitignore


    【解决方案1】:

    我认为您的意思是 git add . 会将所有未在 .gitignore 中指定的文件添加到 repo - 您可以通过键入 git status 来查看这些更改

    bash 中的. 通常表示该目录和所有其他目录递归,因此如果您从 repo 的底层执行此操作,则应添加所有文件。

    我通常的 git 流程是创建 .gitignore 文件并将项目文件添加到 repo。我将在导入文件后通过键入 git status 来测试 .gitignore 文件 - 如果我看到我添加的文件(例如,只有 .php 或 .html,而不是 .mp3 或 .mov),那么您可以git add . 添加所有,git commit -m "initial commit" 提交它们,你应该设置。

    【讨论】:

    • 如果我在这种情况下使用git add --all .git add . 有什么区别?
    • 和 git add 一样
    【解决方案2】:
    git add .
    

    这将添加所有路径并忽略来自 .gitignore 的匹配项

    【讨论】:

      【解决方案3】:

      试试git add .(意思是“添加当前目录及以下所有文件”)

      【讨论】:

        【解决方案4】:

        另一种选择是使用 Git 存储库的 exclude 文件。此文件的工作方式类似于 .gitignore 文件,但未提交到 repo。

        来自Github docs

        您可以将此技术用于您不希望其他用户生成的本地生成的文件,例如由您的编辑器创建的文件。

        使用您喜欢的文本编辑器在 Git 存储库的根目录中打开名为 .git/info/exclude 的文件。您在此处添加的任何规则都不会被签入,并且只会忽略本地存储库的文件。

        1. 在终端中,导航到 Git 存储库的位置
        2. 使用您喜欢的文本编辑器,打开文件.git/info/exclude
        3. exclude 文件添加规则,就像在 .gitignore 文件中一样

        【讨论】:

          【解决方案5】:

          我的仍然包含我告诉它忽略的文件,所以我这样做了...... 我添加到 gitignore ->“ .gitignore ” 然后我尝试了“ git status ”,我想忽略的文件被忽略了。

          【讨论】:

            猜你喜欢
            • 1970-01-01
            • 1970-01-01
            • 1970-01-01
            • 2012-03-15
            • 2021-02-20
            • 1970-01-01
            • 2011-07-17
            • 2015-11-30
            • 2022-11-16
            相关资源
            最近更新 更多