我的 .gitignore 文件被忽略了,应该被忽略的文件仍然可见。
user@host ~/workdir % git status
# On branch master
# Changed but not updated:
# (use "git add <file>..." to update what will be committed)
# (use "git checkout -- <file>..." to discard changes in working directory)
#
# modified: .htaccess
# modified: application/controllers/statistics.php
#
no changes added to commit (use "git add" and/or "git commit -a")
user@host ~/workdir % cat .gitignore
.htaccess
application/config/config.php
application/config/database.php
user@host ~/workdir %
文件在版本控制中,但我不想推送合理的更改。 git rm ... 不是一个选项,因为文件应该在版本控制中(文件中有其他设置)。我只是不想将我的更改推送到这个文件上。
最佳答案
我有同样的问题:我想要每个存储库不同的 .htaccess 文件然后我不能因为 htaccess 文件已经添加到存储库。它现在正在工作,我可以从任何版本更改任何 .htaccess 文件,而无需 git 推送它们。 Marc 是对的,他说“你需要先删除它,然后才能忽略它。这可以使用 git rm 来完成”。
我按照这个顺序进行:
- 在某处备份您的 .htaccess 文件
- 使用 git rm .htaccess 删除 .htaccess 文件
- 提交此更改(.htaccess 删除)
- 推送它(git push)
这显然会删除您的 .htaccess 文件
- 然后编辑 .gitignore 并添加/.htaccess
- 提交然后推送
- 通过恢复之前的备份重新创建 .htaccess 文件
然后你就完成了:你对 .htaccess 所做的任何更改都不会再被推送。困难的部分是按照步骤顺序...
希望这是清楚的
关于git - .gitignore 不会忽略文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2965060/