2013-05-20 7 views
19

C'è un modo per dire a git di creare/popolare automaticamente .gitignore e determinati file nella cartella .git/hooks ogni volta che git init viene eseguito su un determinato computer? Forse una configurazione globale da qualche parte?Aggiungi automaticamente .gitignore e aggancia su git init

Abbiamo dei collegamenti simbolici che devono essere ignorati su tutta la scheda, così come i ganci di pre-ricezione e post-ricezione che devono essere impostati per ogni repo, quindi questo sarebbe più facile che farlo manualmente per ciascuno.

Grazie.

risposta

31

È possibile ottenere questo usando una directory modello git

git config --global init.templatedir /path/to/template 

È quindi possibile aggiungere file alla cartella /path/to/template/hooks e saranno copiati automaticamente nella cartella .git/hooks su git init

Puoi posizionare il contenuto di .gitignore desiderato in un file che si chiama exclude nella cartella /path/to/template/info. Poi sarà effettivamente un file .gitignore in tutti i nuovi repository creati da git init

Se siete su Unix, c'è anche una directory modello predefinito /usr/share/git-core/templates

+0

Funziona davvero bene - anche collegamenti simbolici :) –

2

.gitignore_global nella tua home directory. Se il file non è lì, crearlo. Stessa sintassi dei file .gitignore. Fai attenzione a ciò che inserisci in questo file!

Se tutti gli utenti desiderano condividere lo stesso file .gitignore, è possibile crearne uno in

/.SHARED_GIT_IGNORE 

Quindi creare soft link ad esso in ogni rispettivo home directory degli utenti.

/Users/ALL_USERS/.gitignore_global -> /.SHARED_GIT_IGNORE 
+0

Quindi, se abbiamo 10 sviluppatori, abbiamo bisogno di un file in .gitignore_global ciascuna delle loro directory home? Deve esserci un modo per fare un vero e proprio global .gitignore ... – jraede

+1

Ci sono alternative, ma voglio dire, è difficile impostare 10 volte? Cosa succede se ogni sviluppatore vuole ignorare cose diverse? Perché dovresti avere 10 sviluppatori che condividono una macchina? In alternativa, un git eccessivamente globale ignora solo suoni molto pericolosi. Se devi, puoi collegare tutti allo stesso file .gitignore_global da qualche altra parte nel file system, in modo da poter mantenere lo stesso file ignorato, senza dover apportare modifiche ... – ChrisCM

+0

Stavo pensando che potrebbe essere noioso se devo fare un cambiamento, ma hai ragione, è solo 10 file. – jraede

Problemi correlati