我有5个我想在git中忽略的文件。更新了我的.gitignore使其包括在内,但得到“以下文件的本地更改将被覆盖”

时间:2018-12-02 17:26:39

标签: git git-checkout

我有5个要在测试服务器上的git中忽略的文件。我更新了gitignore文件以包括它们,但仍然出现错误,提示“您对以下文件的本地更改将被签出覆盖”,并且无法继续进行签出。我在服务器上,看到.gitignore文件已更新。该错误在错误消息下列出了有问题的文件:

path\to\file_a
path\to\file_b
path\to\file_c
path\to\file_d
path\to\file_e

我的.gitignore文件如下所示:

# Directories #
###############
# Ignore everything:
/*

# Except for the web, database, and company web directories:
!web/
!database/
!cron/
!includes/
!.gitignore

# But still ignore these directories and files:
path/to/file_a
path/to/file_b
path/to/file_c
path/to/file_d
path/to/file_e

我相信我不应该收到git错误,因为我已经在.gitignore中列出了文件

我做了rm --cahced path \ to \ file方法,但是没有用 enter image description here

1 个答案:

答案 0 :(得分:0)

.gitignroe不适用于git中跟踪的文件。除了将它们添加到.gitignore之外,您还需要使用git rm --cached从git的跟踪中删除这些文件。
(注意:--cached标志从git的跟踪中删除文件,但将它们保留在工作目录中,这样您就不会丢失本地更改)

$ git rm --cached path/to/file_a path/to/file_b path/to/file_c path/to/file_d path/to/file_e