Czy mogę utworzyć plik gitignore dla konkretnego użytkownika?

112

Chcę zmienić gitignore, ale nie wszyscy w zespole chcą tych zmian. Jak użytkownik może mieć własny, specyficzny plik ignorowania git?

asdsadasds
źródło

Odpowiedzi:

93

W przypadku ignorowania plików specyficznych dla użytkownika i repozytorium należy wypełnić następujący plik:

$ GIT_DIR / info / exclude

Zwykle $ GIT_DIR oznacza:

twoja_ścieżka_repo / .git /

grzuy
źródło
5
Dla tych mylić o ścieżce: your_repo/.git/info/exclude. Plik jest sformatowany jak standardowy plik .gitignore .
Stevoisiak
3
Jeśli twój plik zawiera już zmiany niestacjonarne, może być konieczne uruchomienie git update-index --skip-worktree [<file>...](z hashrocket.com/blog/posts/ ... )
Daniel Olivares,
118

Możesz stworzyć swój własny plik .gitignore za pomocą

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

Następnie umieść żądane wpisy w tym pliku.

Dave Kincaid
źródło
16
Jeśli nie chcesz, aby był globalny, możesz umieścić swój .user_gitignoreplik w .gitkatalogu repozytorium i dodać go za pomocągit config core.excludesfile .git/.user_gitignore
orad
6
Porada od Tima Pope'a : użyj, ~/.cvsignoreponieważ narzędzia takie jak rsync również będą używać tego pliku.
Peter Rincker
4
@orad Myślę, że Twój komentarz zasługuje na osobną odpowiedź.
Stevoisiak
Weź pod uwagę, że sugestia orada / Dave'a nadpisze domyślne core.excludesfilewskazanie na twój globalny plik ignorowania, tj ~/.gitignore. : . Jeśli chcesz zachować globalne wykluczenia i mieć również wykluczenia specyficzne dla repozytorium, odpowiedź @ grzuy jest do zrobienia
sgimeno
1
Coś tu chyba brakuje. Wykonałem to polecenie, ale nie ~/.gitignorebyło tam pliku, więc utworzyłem go. Wstawiam dokładnie jeden wpis: knexfile.jsa kiedy wracam do repozytorium i uruchamiam git statusnadal mam plik na liście zmian.
anon58192932
34

W ich .gitconfig:

[core]
    excludesfile = ~/.global_gitignore

W ten sposób mogą globalnie ignorować określone typy plików. Każdy użytkownik może mieć swój własny globalny plik ignorowania.

Rafe Kettler
źródło
1
Możesz uzyskać dostęp do .gitconfiguruchamiając git config --local -ew repo chcesz
Peter Graham
6

Na przykład chcesz zignorować ~/some/path/.ideafolder:

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

# 2. Add gitignore file to gitconfig
git config --global core.excludesfile ~/.gitignore
Sergey Zhigalov
źródło
3

Jak wskazano w samouczku Atlassian .gitignore , możesz również użyć <repo>/.git/info/excludepliku repozytorium, który możesz łatwo edytować za pomocą dowolnego edytora tekstu. Działa tak samo jak .gitignore.

Mogłem łatwo zignorować moje pliki intelliJ, osobiste pliki docker i rzeczy, z którymi tylko potrzebuję pracować.

niejasne18
źródło