撤消 .gitignore 更改

Posted

技术标签:

【中文标题】撤消 .gitignore 更改【英文标题】:Undo .gitignore changes 【发布时间】:2021-05-20 07:41:21 【问题描述】:

我之前忽略了一个文件夹,但现在我只想忽略它的内容:如何从我的 .gitignore 文件中删除/修改一些条目,以便 git 再次跟踪它们?我尝试更新 gitignore 文件并添加带有git add -f <folder-name> 的文件夹,但没有成功。

感谢您的帮助

【问题讨论】:

【参考方案1】:

如果你想跟踪一个空目录,你只忽略它的内容是什么意思?

有一种方法可以使目录(几乎)保持为空(在存储库中)是在该目录中创建一个包含以下四行的 .gitignore 文件:

# Ignore everything in this directory
*
# Except this file
!.gitignore

【讨论】:

【参考方案2】:

假设您在添加到 .gitignore 文件的根文件夹下有一个名为 target 的文件夹。文件夹结构类似于以下:

-project root
  |- src
       |-- your src files here
  |- target
       |- file1
       |- file2
  |-.gitignore

我假设您想要撤消 git ignore 并选择性地忽略您之前添加到忽略列表的目录中的文件。假设您只想将文件 1 从上面的目录结构添加到 git ignore。在这种情况下,编辑 .gitignore 文件以删除 /target/ 文件夹模式并添加一个新的 .目标文件夹内的 gitignore 文件,内容为 file1。它应该会自动选择仅 file2 进行跟踪。

-project root
  |- src
       |-- your src files here
  |- target
       |- file1
       |- file2
       |- .gitignore - add file1 here
  |-.gitignore - remove /target/ from here

【讨论】:

感谢您的详细回答,但我接受了 Muhammad Taseen 的回答,因为它对我的问题更“直截了当”! 很高兴看到您发现它很有用。你说的对。接受的答案是一种更直接的方法,我也赞成它以表达我的团结:) 谢谢你们,Kavitha,你的回答非常详细,我赞成你的回答:)【参考方案3】:

git 不跟踪文件夹,忽略一个文件夹或忽略它的内容在 git 中是一样的。

也就是说,从 .gitignore 中删除文件夹条目就足以开始跟踪该文件夹中的内容了。

【讨论】:

以上是关于撤消 .gitignore 更改的主要内容,如果未能解决你的问题,请参考以下文章

git 使用详解—— 最基本命令 + .gitignore 文件

在不更改 gitignore 项目的情况下忽略本地的一些文件 [重复]

.gitignore 文件不起作用解决

git 修改 .gitignore 不生效

我应该将 Laravel 供应商目录添加到 .gitignore 吗?

Git 中.gitignore 使用和.gitignore 无效的解决方法