2014-10-12 14 views
14

Ho un problema nel mio .gitignore. Voglio che ignori semplicemente la directory 'vendor /', ma sta ignorando tutte le directory con quel nome..gitignore sta ignorando altre directory con lo stesso nome

Qui di seguito è il mio .gitignore:

.idea/ 
bin/ 
vendor/ 
composer.lock 
composer.phar 

seguenti è il risultato della mia 'git status':

Changes not staged for commit: 
   (use "git add <file> ..." to update what will be submitted) 
   (use "git checkout - <file> ..." to discard changes in working directory) 

modified: .gitignore 

Not monitored files: 
   (use "git add <file> ..." to include what will be submitted) 

src/vendor/ 
tests/src/ 
vendor/ 

E 'anche ignorando 'src/vendor', non voglio che per accadere, lo voglio ignorare 'vendor /'

risposta

23

Dalla documentazione for Git Ignore

Una barra iniziale corrisponde all'inizio del nome del percorso. Ad esempio, /*.c corrisponde a cat-file.c ma non a mozilla-sha1/sha1.c.

Prova a cambiare vendor/-/vendor/

+0

Grazie! Ha funzionato perfettamente! –

1

Da Git - gitignore Documentation:

"Se il modello termina con una barra, questo viene rimosso per lo scopo della descrizione che segue, ma sarebbe solo trovare un In altre parole, foo/abbinerà una directory foo e i percorsi sottostanti, ma non corrisponderà a un file regolare oa un link simbolico foo (ciò è coerente con il modo in cui pathspec funziona in generale in Git). "

"Se il modello non contiene una barra /, Git lo considera come un modello glob di shell e verifica una corrispondenza con il percorso relativo alla posizione del file .gitignore (relativa al livello superiore dell'albero di lavoro se non da un file .gitignore). "

è sufficiente rimuovere il/

.idea 
bin 
vendor 
composer.lock 
composer.phar 
Problemi correlati