2011-11-05 18 views
96

我想让Git忽略所有隐藏的文件和目录,即.aptitude,.ssh/.bash_rc。有没有一个简单的规则来覆盖这一点,而不是特别添加每个条目?Git:如何忽略隐藏的目录?

回答

126

只是一个模式添加到.gitignore

.* 
!/.gitignore 

编辑:添加了.gitignore文件本身(如果事情是没有COMMITED)。

+1

您可能想要强制添加一些在此之后必需的文件。例如。 .htaccess文件。根据您的要求当然。 – dakdad

+0

啊对,谢谢! – Poe

+1

@dakdad:感谢您的建议。改进了答案。如果Poe有一些像'.htaccess'这样的特殊文件已经签入,他们将继续遵守。 'gitignore'只对新文件很重要。 –

15

这是一个古老的线程。我只是增加了另一种方式:

.git/info/exclude,加.*

这会忽略所有隐藏/点文件。

这样,不需要.gitignore

34

.gitignore只会影响尚未“添加”的文件。

为了使新的.gitignore条目影响的所有文件

  1. 进行更改的.gitignore
  2. git commit -a -m "Pre .gitignore changes"
  3. git rm -r --cached .
  4. git add .
  5. git commit -a -m "Post .gitignore changes"
  6. git status 应该输出“没有提交(工作目录干净)” `