Bisakah saya membuat file gitignore khusus pengguna?

112

Saya ingin mengubah gitignore, tetapi tidak semua orang di tim menginginkan perubahan ini. Bagaimana cara pengguna memiliki file abaikan git spesifik mereka sendiri?

asdsadasds.dll
sumber

Jawaban:

93

Untuk file khusus pengguna dan khusus repo yang mengabaikan Anda harus mengisi file berikut:

$ GIT_DIR / info / kecualikan

Biasanya $ GIT_DIR adalah singkatan dari:

your_repo_path / .git /

grzuy
sumber
5
Bagi mereka bingung tentang jalan: your_repo/.git/info/exclude. File diformat seperti file .gitignore standar .
Stevoisiak
3
Jika file Anda sudah berisi perubahan yang tidak bertahap, Anda mungkin perlu menjalankan git update-index --skip-worktree [<file>...](dari hashrocket.com/blog/posts/… )
Daniel Olivares
118

Anda dapat membuat .gitignore Anda sendiri menggunakan

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

Kemudian masukkan entri yang Anda inginkan ke dalam file itu.

Dave Kincaid
sumber
16
Jika Anda tidak ingin menjadi global, Anda dapat meletakkan .user_gitignorefile Anda di bawah .gitdirektori repo dan menambahkannya dengangit config core.excludesfile .git/.user_gitignore
orad
6
Pro-tip dari Tim Pope : gunakan ~/.cvsignorekarena utilitas seperti rsync akan menggunakan file ini juga.
Peter Rincker
4
@orad Saya pikir komentar Anda layak menjadi jawaban tersendiri.
Stevoisiak
Mengambil di account yang orad ini / saran Dave akan menimpa default core.excludesfilemenunjuk ke global Anda mengabaikan file yaitu: ~/.gitignore. Jika Anda ingin mempertahankan pengecualian global dan juga memiliki pengecualian khusus repositori, jawaban @ grzuy adalah caranya
sgimeno
1
Saya pasti melewatkan sesuatu di sini. Saya menjalankan perintah ini tetapi tidak ada ~/.gitignorefile di sana jadi saya membuatnya. Saya memasukkan tepat satu entri: knexfile.jsdan ketika saya kembali ke repo dan menjalankan, git statussaya masih menyimpan file tersebut di daftar perubahan.
anon58192932
34

Di .gitconfig mereka:

[core]
    excludesfile = ~/.global_gitignore

Dengan begitu, mereka dapat mengabaikan jenis file tertentu secara global. Setiap pengguna dapat memiliki file abaikan global mereka sendiri.

Rafe Kettler
sumber
1
Anda dapat mengaksesnya .gitconfigdengan menjalankan git config --local -erepo yang Anda inginkan
Peter Graham
6

Misalnya, Anda ingin mengabaikan ~/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
sumber
3

Seperti yang ditunjukkan dalam tutorial .gitignore Atlassian , Anda juga dapat menggunakan <repo>/.git/info/excludefile repo yang dapat Anda edit dengan mudah dengan editor teks apa pun. Ini bekerja sama seperti .gitignore.

Saya dapat dengan mudah mengabaikan file intelijen, file docker pribadi, dan hal-hal yang hanya perlu saya tangani.

obscure18
sumber