2015-12-24 16 views
6

Il mio progetto si presenta così:Perché non .gitignore ignora .sass-cache?

enter image description here

.gitignore:

/node_modules 
/dist 
/.tmp 
/.sass-cache 
.sass-cache 
/bower_component 

Nessuna idea perché, ma .sass-cache è ancora in fase di messa in scena:

[email protected] MINGW64 /e/alex/istagingadmindashboard/frontEnd (deve) 
$ git add . 

[email protected] MINGW64 /e/alex/istagingadmindashboard/frontEnd (deve) 
$ git status 
On branch deve 
Your branch is up-to-date with 'remotes/origin/deve'. 
Changes to be committed: 
    (use "git reset HEAD <file>..." to unstage) 

     modified: .sass-cache/a1ee9da9874bbf1b217c6f2a5cd8c2c7c5ee78fe/main.scssc 
     modified: app/scripts/building/uploadPage.js 
     modified: app/styles/main.scss 
     modified: app/views/building/uploadproject.html 

Tutte le idee di perché?

risposta

9

Il file .gitignore è stato probabilmente aggiornato dopo che il particolare contenuto della cartella è stato messo in scena. Per completare il cerchio, eseguire git rm -r --cached .sass-cache/.

Inoltre, è necessaria solo una voce in .gitignore; preferibilmente, uno con una barra alla parte anteriore o alla fine per denotarla come una directory.

3

Questi file sono già monitorati da git, e quindi il tuo .gitignore non avrà alcun effetto su quelli. Tuttavia, i nuovi file non tracciati verranno ignorati. Vedi the gitignore documentation per maggiori dettagli.

0

Dal wiki:

Se si dispone già di un file registrato, e si desidera ignorarlo, Git non ignorerà il file se si aggiunge una regola successiva. In questi casi, è necessario untrack il file prima, eseguendo il seguente comando nel terminale:

git rm --cached

4

Il problema è che hai già caricato la cartella .sass-cache al server. Vedi che dice modified. Quello che dovete fare:

git rm .sass-cache/* 
git commit -a -m "removed folder" 
git push origin master 

La prossima volta che fate git status voi non vedere la cartella.

Inoltre, non è necessario aggiungere sia

Solo
/.sass-cache 
.sass-cache 

l'ultimo è abbastanza

0

Se si desidera rimuovere i file sass-cache già impegnati dal repo - e sono su Linux. È possibile eseguire il comando find nel terminale, dalla radice del file repo:

$_ `find . -name "*.scssc" -exec git rm -f {} \;` 

Successivamente commit:

$_ git commit -m "Remove .scssc cache files." 

Quindi aggiungere queste righe al tuo .gitignore con $_ nano .gitignore:

styles/.sass-cache/* 
styles/.sass-cache 
.sass-cache/ 
*.css.map 
Problemi correlati