Posso creare un file gitignore specifico per l'utente?


112

Voglio cambiare il gitignore, ma non tutti nel team vogliono questi cambiamenti. Come può un utente avere il proprio file git ignore specifico?

Risposte:


93

Per ignorare i file specifici dell'utente e del repository, è necessario popolare il seguente file:

$ GIT_DIR / info / escludere

Di solito $ GIT_DIR sta per:

your_repo_path / .git /


5
Per coloro confuso circa il percorso: your_repo/.git/info/exclude. Il file è formattato come un file .gitignore standard .
Stevoisiak

3
Se il tuo file contiene già modifiche non organizzate potresti dover eseguire git update-index --skip-worktree [<file>...](da hashrocket.com/blog/posts/… )
Daniel Olivares

118

Puoi creare il tuo .gitignore usando

git config --global core.excludesfile $HOME/.gitignore

Quindi inserisci le voci desiderate in quel file.


16
Se non vuoi che sia globale, puoi mettere il tuo .user_gitignorefile nella .gitdirectory del repo e aggiungerlo congit config core.excludesfile .git/.user_gitignore
orad

6
Suggerimento da Tim Pope : usalo ~/.cvsignoreperché anche utility come rsync useranno questo file.
Peter Rincker

4
@orad, penso che il tuo commento meriti di essere una risposta a parte.
Stevoisiak

Prendere in considerazione che la / il suggerimento di ORAD di Dave sovrascrive il valore predefinito di core.excludesfilepunta al vostro globale del file cioè ignorare: ~/.gitignore. Se vuoi preservare le esclusioni globali e avere anche esclusioni specifiche del repository, la risposta di @ grzuy è la strada da percorrere
sgimeno

1
Qui mi sta sfuggendo qualcosa. Ho eseguito questo comando ma non ~/.gitignorec'era alcun file, quindi ne ho creato uno. Metto esattamente una voce: knexfile.jse quando torno al repository ed eseguo git statusho ancora il file nell'elenco delle modifiche.
anon58192932

34

Nel loro .gitconfig:

[core]
    excludesfile = ~/.global_gitignore

In questo modo, possono ignorare determinati tipi di file a livello globale. Ogni utente può avere il proprio file ignora globale.


1
Puoi accedere .gitconfiga eseguendo git config --local -enel repo che desideri
Peter Graham

6

Ad esempio, vuoi ignorare la ~/some/path/.ideacartella:

# 1. Add .idea to user specific gitignore file
echo .idea > ~/.gitignore

# 2. Add gitignore file to gitconfig
git config --global core.excludesfile ~/.gitignore

3

Come indicato nel tutorial .gitignore di Atlassian , puoi anche utilizzare il <repo>/.git/info/excludefile del tuo repository che puoi facilmente modificare con qualsiasi editor di testo. Funziona allo stesso modo di .gitignore.

Potrei facilmente ignorare i miei file intelliJ, dockerfile personali e cose con cui ho solo bisogno di lavorare.

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.