我有一个网站项目,有超过50,000不重要的文件(发展)在一些目录。
/website.com/files/1.txt /website.com/files/2.txt /website.com/files/3.txt /website.com/files/etc.txt
/files中的内容已经在仓库中了。我想删除本地副本上/files中的所有文件,但我希望git忽略它,这样当我在Web服务器上进行拉取操作时,它就不会删除它们。有什么想法吗?
ocebsuys1#
忽略整个目录不起作用。我必须这样做:
for i in `git status | grep deleted | awk '{print $3}'`; do git update-index --assume-unchanged $i; done
6jjcrrmo2#
下面的代码可以在执行 git status 时忽略已删除和已修改的文件。
git update-index --assume-unchanged dir-im-removing/
或特定文件
git update-index --assume-unchanged config/database.yml
是否忽略git中已修改(但未提交)的文件?
注意:当你执行“git commit -am“时,上面关于已删除文件的建议包括已删除文件!
一个对我有效的解决方案是不删除文件,而是将其内容留空。这就是我用来静音.htaccess文件的方法。
sc4hvdpw3#
好的,我找到了一个解决方案。只需在子目录中创建一个新的存储库,父存储库就会忽略它们。
wfveoks04#
创建子存储库是一种解决方案,但是您应该将该子存储库作为子模块。芳子道:
git submodule update
files
git submodule init
whhtz7ly5#
要仅提交添加/修改的文件(而非删除的文件),请执行以下操作:
git add . --ignore-removal git commit -m "commit message"
5条答案
按热度按时间ocebsuys1#
忽略整个目录不起作用。我必须这样做:
6jjcrrmo2#
下面的代码可以在执行 git status 时忽略已删除和已修改的文件。
或特定文件
是否忽略git中已修改(但未提交)的文件?
注意:当你执行“git commit -am“时,上面关于已删除文件的建议包括已删除文件!
一个对我有效的解决方案是不删除文件,而是将其内容留空。这就是我用来静音.htaccess文件的方法。
sc4hvdpw3#
好的,我找到了一个解决方案。只需在子目录中创建一个新的存储库,父存储库就会忽略它们。
wfveoks04#
创建子存储库是一种解决方案,但是您应该将该子存储库作为子模块。
芳子道:
git submodule update
“(即不填充”files
“内容)的主存储库git submodule init
之后的git submodule update
将足以取回“files
”内容的正确版本。whhtz7ly5#
要仅提交添加/修改的文件(而非删除的文件),请执行以下操作: