Global Git yapılandırmamı nasıl gösterebilirim?


1076

Tüm yapılandırılmış Git bölümlerini göstermek istiyorum.

Sadece buldum git config --get core.editorve yalnızca yapılandırılmış varsayılan düzenleyicinin değil, küresel olarak yapılandırılmış her şeyin çıktısını almak istiyorum.


3
.Gitconfig'e bakmanın nesi yanlış?
Kale

1
Yakında (Q3 / Q4 2015) git 2.6 ile --name-onlydeğerleri olmadan yalnızca yapılandırma anahtarlarını listeleme seçeneğine sahip olacağınızı unutmayın . Aşağıdaki cevabımı
VonC


5
O olmalı git config --global --listdaha derine açıklandığı gibi burada
prosti

Yanıtlar:


1722

Kullanabilirsiniz:

git config --list

veya ~/.gitconfigdosyanıza bakın. Yerel yapılandırma deponuzun .git/configdosyasında olacaktır.

kullanın:

git config --list --show-origin

bu ayarın nerede tanımlandığını görmek için (genel, kullanıcı, repo vb.)


24
Teşekkürler, ikinizi de iptal ettim. Bilmek istediğim git config --listben bir depo etkili yapılandırma bakabilirsiniz çünkü komuta ve ben uygun parametresi yerel, küresel ve sistem yapılandırma farklılık ( --global, --local, --system). Cevabını en kısa sürede kabul edeceğim çünkü sen birkaç saniye daha hızlıydın :)
wullxz

2
Dikkatli olun, git yapılandırması için birçok potansiyel kaynak var. Dosyaya bakmak sadece bir parça verir. @ linquize'in cevabı aslında doğrudur.
vonbrand

2
@vonbrand: --list, -l'ye eşdeğerdir.
Cameron Skinner

9
Kısayollar (örneğin -l), güçlü bir kullanıcı olduğunuzda ve özelliği daha az karakter yazarak kazanç sağlamak için yeterince sık kullandığınızda kullanışlı olur. Uzun --listseçeneği bulmayı ve hatırlamayı daha kolay buluyorum . Daha az belirgin stenolar için genellikle neyi temsil ettiklerini kontrol etmek zorundayım, bu yüzden uzun isimleri tercih ederim. Komut tamamlandığında, tüm karakterleri gerçekten yazmak zorunda kalmamanız, ancak yine de tüm seçenek adını görmeniz daha kolaydır.
Krzysztof Jabłoński

1
Ya git config --listhiçbir şey basmazsa?
Matej J

247

En kısa,

git config -l

tüm devralınan değerleri gösterir: sistem, genel ve yerel


13
Bu git config --list'ten farklı mı yoksa yazmak için daha mı kısa bir yol var?
Magnilex

8
@Magnilex yazmak için daha kısa bir yol
LemenDrop

3
Yapılandırma dosyaları her zaman devralınan tüm yapılandırmaları git config -lgöstermeyebilir , ancak her şeyi gösterir. Beni kurtardı çünkü autocrlfkurulum için windows setleri git ve bulabileceğim herhangi bir yapılandırma dosyasında değil.
geneorama

evet, ayrıca C: \ ProgramData \ Git \ config dosyası var - Sanırım bu global veya sistem git config dosyası
Alex

129

Global Git yapılandırmamı nasıl düzenlerim ?

Kısa cevap: git config --edit --global


Git yapılandırmasını anlamak için şunu bilmelisiniz:

Git yapılandırma değişkenleri üç farklı düzeyde saklanabilir. Her seviye bir önceki seviyedeki değerleri geçersiz kılar.

1. Sistem seviyesi (sistemdeki her kullanıcıya ve tüm depolarına uygulanır)

  • görüntülemek, git config --list --system(gerekebilir sudo)
  • kurmak, git config --system color.ui true
  • sistem yapılandırma dosyasını düzenlemek için, git config --edit --system

2. Global seviye (kişisel olarak size, kullanıcıya özel değerler).

  • görüntülemek için, git config --list --global
  • kurmak, git config --global user.name xyz
  • global yapılandırma dosyasını düzenlemek için, git config --edit --global

3. Depo düzeyi (bu tek depoya özgü)

  • görüntülemek için, git config --list --local
  • ayarlamak için git config --local core.ignorecase true( --localisteğe bağlı)
  • havuz yapılandırma dosyasını düzenlemek için git config --edit --local( --localisteğe bağlı)

Tüm ayarları nasıl görüntülerim ?

  • Çalıştırma git config --list, sistem gösterme , genel ve (bir havuzun içindeyse) yerel yapılandırmalar
  • Çalıştır git config --list --show-origin, her yapılandırma öğesinin başlangıç ​​dosyasını da gösterir

Belirli bir yapılandırmayı nasıl okurum?

  • Örneğin git config user.namealmak user.nameiçin koş .
  • Ayrıca seçenekleri belirleyebilir --system, --global, --localbelli bir seviyede bu değeri okumak için.

Referans: 1.6 Başlarken - İlk Kez Git Kurulumu


1
git config --listtüm küresel, sistem ve yerel gösterilsin mi? onaylamaya ihtiyacım var :)
Adi Prasetyo

2
sadece yapılandırma dosyalarının bulunduğu yeri eklemek için: Sistem: C: \ ProgramData \ Git \ config (pencerelerde). Genel: C: \ Kullanıcılar \ kullanıcı \ .gitconfig (Windows) ~ / .gitconfig (Linux) Yerel: project-repo / .git / config
Alex

@AdiPrasetyo Evet. git config --list --show-originHer yapılandırma öğesinin kaynağını bulmak için çalıştırabilirsiniz .
19:10

109
git config --list

gitmek için bir yol. Genellikle sadece açıyorum .gitconfig.


2
~/.gitconfigDosyasının DOSYALARI bölümünde belirtilen dosyalardan birini mi istediniz git help config?
chwarr

1
@chwarr - Üzgünüm, anlamadım. Ben "niyetledim" mi?
Kale

1
Nerede olursanız olun ~/.gitconfiggit .gitconfiggeçerli dizinde arama yapmadığından "Ben genellikle sadece açıyorum" demek istediniz . ( .gitconfigve ~/.gitconfigfarklı dosyaları adlandırın [ genellikle ].) Belirtilen diğer dosyaların git help configfarklı dosya adları vardır, dolayısıyla varsayım.
chwarr

32

git config -eYapılandırma dosyasını doğrudan düzenleyicinizde açmak için de arayabilirsiniz . Git yapılandırma dosyası -lçıktıdan çok daha okunabilir olduğundan, her zaman -ebayrağı kullanma eğilimindeyim .

Özetlemek gerekirse:

git config -l  # List Git configuration settings (same as --list)
git config -e  # Opens Git configuration in the default editor (same as --edit)
  • Parametreler olmadan yerel ile etkileşime girer .git/config.
  • Bununla --globaletkileşime girer ~/.gitconfig.
  • Ve --systemonunla etkileşir $(prefix)/etc/gitconfig.

(Gerçekten ne $(prefix)anlama geldiğini bulamadım , ancak varsayılan olarak görünüyor $HOME.)



11

Git 2.6 (Eylül / Ekim 2015) --name-onlyaşağıdakilerin çıktısını basitleştirme seçeneğini ekleyecektir git config -l:

Bkz. Taahhüt a92330d , taahhüt f225987 , taahhüt 9f1429d (20 Ağu 2015), Jeff King ( peff) .
Bkz. Taahhüt ebca2d4 (20 Ağu 2015) ve taahhüt 905f203 , taahhüt 578625f (10 Ağu 2015) SZEDER Gábor ( szeder) .
(Göre Birleştirilmiş Junio Cı Hamano - gitster- içinde fc9dfda tamamlama , 31 Ağustos 2015)

config: --name-onlyyalnızca değişken adlarını listelemek için ' ' seçeneği ekle

' git config' yalnızca değerleri veya ad-değer çiftlerini gösterebilir; bu nedenle, bir kabuk komut dosyasının ayarlı yapılandırma değişkenlerinin adlarına ihtiyacı varsa ' git config --list' veya ' --get-regexp' komutunu çalıştırmalı ve çıktıyı yapılandırma değişken adlarını değerlerinden ayırmak için ayrıştırmalıdır.
Ancak, böyle bir ayrıştırma çok satırlı değerlerle baş edemez.

' git config' Yeni satır güvenli ayrıştırma için boş sonlandırılmış çıktı üretebilmesine rağmen , böyle bir durumda işe yaramaz, çünkü kabuklar boş karakterlerle baş edemez.

Kendi bash tamamlama komut dosyamız bile bu sorunlardan muzdarip.

Yalnızca yapılandırma değişkenlerinin adlarını listelemek için --name-only' --list' ve ' --get-regexp' çıktısını değiştirme seçeneğini tanıtarak tamamlama komut dosyasına ve kabuk komut dosyalarına genel olarak yardımcı olun; değişken isimlerini artık değerlerinden ayırmak.


10

Hakkında önemli bir şey git config:

git config vardır --local , --globalve --systemdüzeyleri ve ilgili dosyaları.

Yani kullanabilirsiniz git config --local , git config --globalve git config --system.

Varsayılan olarak, git configbir yerel yapılandırma seçeneği geçirildiği takdirde seviyesinde. Yerel yapılandırma değerleri, deponun .git dizininde bulunan bir dosyada depolanır:.git/config

Genel düzey yapılandırması kullanıcıya özgüdür, yani bir işletim sistemi kullanıcısına uygulanır. Genel yapılandırma değerleri, kullanıcının ana dizininde bulunan bir dosyada depolanır.~/.gitconfigUnix sistemlerinde ve C:\Users\<username>\.gitconfigWindows'da.

Sistem düzeyinde yapılandırma tüm makineye uygulanır. Bu, bir işletim sistemindeki tüm kullanıcıları ve tüm depoları kapsar. Sistem düzeyi yapılandırma dosyası birgitconfig , sistem kök yolunun dışındaki dosyada bulunur. Linux sistemlerinde $ (prefix) / etc / gitconfig. Windows'ta bu dosya bulunabilir C:\ProgramData\Git\config.

Yani sizin seçeneğiniz küresel .gitconfig dosyayı ve düzenlemek.

Veya kullanabilirsiniz git config --global --list .

Bu tam olarak ihtiyacınız olan çizgi.

Resim açıklamasını buraya girin


7

Git yapılandırmasının takma ad , çekirdek , uzaktan kumanda vb. Gibi bir bölümünü listelemek istiyorsanız , sonucu grep aracılığıyla yönlendirebilirsiniz. Gibi bir şey:

git config --global -l | grep core

4

Linux tabanlı sistemlerde şu şekilde bir yapılandırma dosyasını görüntüleyebilir / düzenleyebilirsiniz:

vi/vim/nano .git/config

Git init klasörünün içinde olduğunuzdan emin olun.

Eğer çalışmak istiyorsan --global config,

vi/vim/nano .gitconfig

on / home / userName

Bu düzenlemeye yardımcı olmalıdır: https://help.github.com/categories/setup/


3

Tüm yapılandırmaları bulmak için şu komutu yazmanız yeterlidir:

git config --list

Yerelimde bu komutu çalıştırıyorum.

Md Masud@DESKTOP-3HTSDV8 MINGW64 ~
$ git config --list
core.symlinks=false
core.autocrlf=true
core.fscache=true
color.diff=auto
color.status=auto
color.branch=auto
color.interactive=true
help.format=html
rebase.autosquash=true
http.sslcainfo=C:/Program Files/Git/mingw64/ssl/certs/ca-bundle.crt
http.sslbackend=openssl
diff.astextplain.textconv=astextplain
filter.lfs.clean=git-lfs clean -- %f
filter.lfs.smudge=git-lfs smudge -- %f
filter.lfs.process=git-lfs filter-process
filter.lfs.required=true
credential.helper=manager
user.email=infomasud@gmail.com
filter.lfs.smudge=git-lfs smudge -- %f
filter.lfs.process=git-lfs filter-process
filter.lfs.required=true
filter.lfs.clean=git-lfs clean -- %f

Git config komutu, Git yapılandırma değerlerini genel veya yerel proje düzeyinde ayarlamak için kullanılan bir kullanışlılık işlevidir. Bu yapılandırma düzeyleri .gitconfig metin dosyalarına karşılık gelir. Daha fazla bilgiyi
infomasud

Harika, cevabınıza ekleyebilir misiniz?
RamenChef

1

Git 2.26.0'dan beri --show-scopeseçeneği kullanabilirsiniz :

git config --list --show-scope

Örnek çıktı:

system  rebase.autosquash=true
system  credential.helper=helper-selector
global  core.editor='code.cmd' --wait -n
global  merge.tool=kdiff3
local   core.symlinks=false
local   core.ignorecase=true

İle birleştirilebilir

  • --localproje yapılandırması için, --globalkullanıcı yapılandırması --systemiçin, tüm kullanıcıların yapılandırması için
  • --show-origin tam yapılandırma dosyasının konumunu göstermek için
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.