.gitignore 不忽略文件夹
.gitignore not ignoring folder
我在 Laravel 中有一个项目,我在 public 目录中有一个论坛,我不想将它推送到存储库,所以我在 .gitignore:
中写了
### Laravel ###
vendor/
node_modules/
# Laravel 5 & Lumen specific
bootstrap/cache/
.env.*.php
.env.php
.env
# SMF
public/forum/
# Rocketeer PHP task runner and deployment package. https://github.com/rocketeers/rocketeer
.rocketeer/
但是,条目仍然出现在 Git status
这是我的树:
+...
+ public
++论坛
+++...
+...
问题出在哪里?
目录结构
Git状态
问题是这个文件夹已经在您的索引中(您之前提交过)。索引中文件的更改将始终在 "git status" 中。只有该文件夹中的新文件将被忽略。
修复它。看我的回答
在.gitignore中添加
public/forum
运行
git rm --cached -r public/forum
执行以下操作以触发 gitignore
:
提交您要修复并推送的存储库中的所有待定更改。
从 git 索引中删除所有内容以刷新您的 git 存储库。这是安全的。使用此命令:
git rm -r --cached .
将所有内容添加回存储库,这可以使用以下命令完成:
git add .
使用以下命令提交这些更改:
git commit -m "Gitignore issue fixed"
如果其他人遇到这个问题并且像我一样想要将这些文件保留在那里,我只需:
- 将所有文件剪切/粘贴到我的存储库之外的不同文件夹中。
- 提交对 git 的更改(也就是提交删除)
- 将文件粘贴回
一切顺利,文件不再出现。希望你的情况会相似。
我在 Laravel 中有一个项目,我在 public 目录中有一个论坛,我不想将它推送到存储库,所以我在 .gitignore:
中写了### Laravel ###
vendor/
node_modules/
# Laravel 5 & Lumen specific
bootstrap/cache/
.env.*.php
.env.php
.env
# SMF
public/forum/
# Rocketeer PHP task runner and deployment package. https://github.com/rocketeers/rocketeer
.rocketeer/
但是,条目仍然出现在 Git status
这是我的树:
+...
+ public
++论坛
+++...
+...
问题出在哪里?
目录结构
Git状态
问题是这个文件夹已经在您的索引中(您之前提交过)。索引中文件的更改将始终在 "git status" 中。只有该文件夹中的新文件将被忽略。
修复它。看我的回答
在.gitignore中添加
public/forum
运行
git rm --cached -r public/forum
执行以下操作以触发 gitignore
:
提交您要修复并推送的存储库中的所有待定更改。
从 git 索引中删除所有内容以刷新您的 git 存储库。这是安全的。使用此命令:
git rm -r --cached .
将所有内容添加回存储库,这可以使用以下命令完成:
git add .
使用以下命令提交这些更改:
git commit -m "Gitignore issue fixed"
如果其他人遇到这个问题并且像我一样想要将这些文件保留在那里,我只需:
- 将所有文件剪切/粘贴到我的存储库之外的不同文件夹中。
- 提交对 git 的更改(也就是提交删除)
- 将文件粘贴回
一切顺利,文件不再出现。希望你的情况会相似。