2012-11-15 157 views
12

我爲我的主文件夾創建了一個存儲庫。這是我的.gitignore文件:Git:反向忽略(.gitignore)

!.vim/plugin/* 
!.vim/doc/* 
.* 
* 
.viminfo 
.vim/.netrwhist 
.vim-fuf-data/file/stats 
bin/dwm/dwm 

所以,當我創建內部.vim/plugin一個新的文件,我預計git status後,該文件已被顯示,但no..why?

編輯:一對答案後,我改變了逆無視線下面這樣的位置,但存在的問題是一樣的:我的.vim/plugin文件夾中創建新的文件git status後不顯示..

.* 
* 
.viminfo 
.vim/.netrwhist 
.vim-fuf-data/file/stats 
bin/dwm/dwm 
!.vim/plugin/* 
!.vim/doc/* 
+1

'git st'是'git status'的別名嗎? –

+0

是的,當在.gitconfig文件中設置 – garyh

+0

我嘗試了這些速記命令,從svn的壞習慣... – Daniel

回答

17

在第4行你無視一切。這覆蓋了以前的否定模式。從man page

中的一個優先級,最後匹配模式決定 結果

其中,「優先級」是指忽略像.gitignore$GIT_DIR/info/exclude模式不同的來源。

如果你想不顧一切,但與!開頭的模式,你應該移動*.gitignore


開始編輯

我發現的another question on SO幫助的解決方案:

* 
!*/ 
!.vim/plugin/* 
+0

我編輯了我的問題 – ziiweb

+0

@tirengarfio Dito編輯了我的答案。 – Deve

+0

是的,這工作表示感謝! – ziiweb

0

另一個辦法是不理只有頂層的文件和目錄,並在白名單的目錄做相同的,如果必要的,因爲在this answer to a related question

例如我的.gitignore現在看起來是這樣

/* 
!.gitignore 
!.vimrc 
!.bashrc 
!.vim/ 
.vim/.netrwhist 
!.gconf/ 
.gconf/apps/* 
!.gconf/apps/gnome-terminal 
!bin/ 

德韋的答案使git非常緩慢,因爲它會搜索homedir下的所有目錄。 (在您的homedir中使用git進行設置的具體情況)