Rimango sempre bloccato da qualche parte su questo anche dopo essere tornato a questa domanda numerose volte. Ho escogitato un processo dettagliato per farlo passo dopo passo:
Prima basta usare git add
per aggiungere il contenuto effettivo.
Mostrerà i file rilevanti aggiunti all'indice mentre tutti gli altri sono ancora non tracciati. Questo aiuta a contrattare .gitignore
passo dopo passo.
$ git add wp-content/themes/my-theme/*
$ git status
Changes to be committed:
new file: wp-content/themes/my-theme/index.php
new file: wp-content/themes/my-theme/style.css
Untracked files:
wp-admin/
wp-content/plugins/
wp-content/themes/twentyeleven/
wp-content/themes/twentytwelve/
...
wp-includes/
...
Aggiungi un DUMMY.TXT
file temporaneo nella tua directory:
$ git status
Changes to be committed:
new file: wp-content/themes/my-theme/index.php
new file: wp-content/themes/my-theme/style.css
Untracked files:
wp-admin/
wp-content/plugins/
wp-content/themes/twentyeleven/
wp-content/themes/twentytwelve/
...
wp-content/themes/my-theme/DUMMY.TXT <<<
...
wp-includes/
...
Il nostro obiettivo ora è quello di costruire le regole in modo tale DUMMY.TXT
sia l'unica che non viene ancora visualizzata come non tracciata quando abbiamo finito.
Inizia ad aggiungere le regole:
.gitignore
/*
Il primo è solo quello di ignorare tutto. I file non tracciati dovrebbero essere andati tutti, solo i file indicizzati dovrebbero mostrare:
$ git status
Changes to be committed:
new file: wp-content/themes/my-theme/index.php
new file: wp-content/themes/my-theme/style.css
Aggiungi la prima directory nel percorso wp-content
/*
!/wp-content
Ora i file non tracciati verranno nuovamente visualizzati, ma avranno solo wp-content
i contenuti
$ git status
Changes to be committed:
new file: wp-content/themes/my-theme/index.php
new file: wp-content/themes/my-theme/style.css
Untracked files:
wp-content/plugins/
wp-content/themes/twentyeleven/
wp-content/themes/twentytwelve/
..
Ignora tutto nella prima directory /wp-content/*
e ignora!/wp-content/themes
/*
!/wp-content
/wp-content/*
!/wp-content/themes
Ora i file non tracciati si restringono ulteriormente a solo wp-content/themes
$ git status
Changes to be committed:
new file: wp-content/themes/my-theme/index.php
new file: wp-content/themes/my-theme/style.css
Untracked files:
wp-content/themes/twentyeleven/
wp-content/themes/twentytwelve/
..
Ripeti il processo fino a quando quel file fittizio è l'unico che viene ancora visualizzato come Non tracciato:
/*
!/wp-content
/wp-content/*
!/wp-content/themes
/wp-content/themes/*
!/wp-content/themes/my-theme
$ git status
Changes to be committed:
new file: wp-content/themes/my-theme/index.php
new file: wp-content/themes/my-theme/style.css
Untracked files:
wp-content/themes/my-theme/DUMMY.TXT
**
carattere jolly funziona solo se non ci sono barre nella sequenza, vedi sparethought.wordpress.com/2011/07/19/…