2010-11-08 97 views
8

我已经在我的项目的文件夹中创建了一个存储库,您知道,git init,我有Webstorm文件夹.idea,另一个与此无关,我不想保存在存储库中,我不希望这样文件夹即使作为要添加的新文件出现。 我想忘记这些子文件夹。Git:如何排除存储库中的子文件夹?

  1. 如何在提交整个存储库之前排除此子文件夹?
  2. 如何在提交整个存储库后排除此子文件夹?

回答

16

在文本编辑器中打开.git/info/exclude文件并添加要忽略的文件夹。这个文件对你来说是保密的。您还可以在存储库的根目录中.git目录之外创建一个.gitignore文件,并在其中写入文件夹条目。然后将这个文件添加到存储库,以便与其他人共享什么内容应该被忽略,如果其他人在其存储库中也有该目录要忽略。

如果您已经提交了该目录,那么只需将其删除,使用git rm -r --cached,提交删除并标记被忽略的目录,如上所述。在擦除之前,您可能需要对目录进行备份。

+9

我会推荐'git rm -r --cached'而不是'git rm -r' - 否则该目录也会从你的工作树中删除。 – 2010-11-08 18:36:35

+0

@Sven Marnach - 嘿嘿,这是一个很好的评论,我没有想要删除文件夹,但这次我不需要它! – 2010-11-08 18:43:04

+2

@Mr问题:如果你仍然需要它,你当然可以拿回来。毕竟,这是一个版本控制系统。 – 2010-11-08 18:55:29

相关问题