Global Git ignora

Voglio impostare Git per ignorare globalmente determinati file.

Ho aggiunto un file .gitignore alla mia directory root utente ( Users/me/ ) e ho aggiunto la seguente riga:

 *.tmproj 

Ma non sta ignorando questo tipo di file, nessuna idea di cosa sto facendo male?

    È necessario impostare il file di configurazione globale core.excludesfile modo che core.excludesfile riferimento a questo file di core.excludesfile globale.

    per esempio

    * nix o Windows git bash:

     git config --global core.excludesfile '~/.gitignore' 

    Windows cmd:

     git config --global core.excludesfile "%USERPROFILE%\.gitignore" 

    Per Windows ha impostato la posizione C: / users / {myusername} /. Gitignore. Il comando precedente imposterà solo la posizione del file ignore che git userà. Il file deve ancora essere creato manualmente in quella posizione e popolato con l’elenco ignorato (dal commento di muruge )

    Puoi leggere il comando su https://help.github.com/articles/ignoring-files/#create-a-global-gitignore

    Prima di riconfigurare il file globale esclude, potresti voler controllare a cosa è attualmente configurato, usando questo comando:

     git config --get core.excludesfile 

    Nel mio caso, quando l’ho eseguito ho visto che il mio file di esclusione globale era configurato per

      ~ / .gitignore_global 

    e c’erano già un paio di cose elencate qui. Quindi, nel caso della domanda data, potrebbe avere senso verificare prima un file Exclude esistente e aggiungervi la nuova maschera di file.

    Sebbene altre risposte siano corrette, impostano il valore di configurazione globale laddove esiste una posizione git predefinita per il file git globale di ignoranza:

    * Nix:

     ~/.config/git/ignore 

    Finestre:

     %USERPROFILE%\git\ignore 

    Potrebbe essere necessario creare la directory git e ignore file, ma in questo modo è ansible inserire le proprie ignoranze globali in quel file e il gioco è fatto!

    fonte

    Quale file inserire un pattern dipende da come il pattern deve essere usato.

    • I pattern che un utente vuole che Git ignori in tutte le situazioni (ad es. Backup o file temporanei generati dall’editor di scelta dell’utente) generalmente entrano in un file specificato da core.excludesFile nel file ~/.gitconfig . Il suo valore predefinito è $ XDG_CONFIG_HOME / git / ignore. Se $ XDG_CONFIG_HOME non è impostato o vuoto, viene utilizzato $ HOME / .config / git / ignore.

    Per creare gitignore globale da zero:

     $ cd ~ $ touch .gitignore_global $ git config --global core.excludesfile ~/.gitignore_global 
    1. La prima riga modifica la directory in C:/Users/User
    2. Successivamente, crei un file vuoto con estensione .gitignore_global
    3. E infine impostando l’ignoranza globale su quel file.
    4. Quindi dovresti aprirlo con una sorta di blocco note e aggiungere le regole di ignoranza necessarie.

    Da qui

    Se crei un file nel repository chiamato .gitignore git userà le sue regole quando guarderà i file da impegnare. Nota che git non ignorerà un file che era già stato rintracciato prima di aggiungere una regola a questo file per ignorarlo. In tal caso il file deve essere non tracciato, solitamente con:

     git rm --cached filename 

    È il tuo caso?

    Ricorda che esegui il comando

     git config --global core.excludesfile '~/.gitignore' 

    imposterà semplicemente il file globale, ma NON lo creerà. Per Windows controlla la directory Utenti per il file .gitconfig e modificalo secondo le tue preferenze. Nel mio caso è così:

     [core] excludesfile = c:/Users/myuser/Dropbox/Apps/Git/.gitignore 

    Dovresti creare un file di esclusione per questo. Dai un’occhiata a questo che è abbastanza auto esplicativo.

    Tuttavia, per risolvere la tua domanda, potrebbe essere necessario de-indicizzare il file .tmproj (se lo hai già aggiunto all’indice) con git rm --cached path/to/.tmproj , o git add e commit your .gitignore file.

    Sono in grado di ignorare un file .tmproj includendo .tmproj o *.tmproj nel mio file /users/me/.gitignore-global .

    Si noti che il nome del file è .gitignore-global not .gitignore . Non ha funzionato includendo .tmproj o *.tmproj in un file chiamato *.tmproj nella directory /users/me .

    su sottosistema windows per linux ho dovuto navigare al sottosistema root tramite cd ~/ quindi touch .gitignore e quindi aggiornare la configurazione globale di gitignore.

    Spero che aiuti qualcuno.