글로벌 Git 구성을 어떻게 표시합니까?


1076

구성된 모든 Git 섹션을 표시하고 싶습니다.

나는 만 찾았 git config --get core.editor으며 구성된 기본 편집기뿐만 아니라 전역 적으로 구성된 모든 것을 출력하고 싶습니다.


3
.gitconfig를 보는 데 문제가 있습니까?
Rook

1
곧 (Q3 / Q4 2015)에는 git 2.6 옵션이 --name-only있으며 값없이 구성 키만 나열합니다. 아래 답변을
VonC

41
$ git config --list 설정 확인
TarranJones

5
여기에git config --global --list 더 깊이 설명되어 있어야합니다
prosti

답변:


1721

당신이 사용할 수있는:

git config --list

또는 ~/.gitconfig파일을보십시오. 로컬 구성은 저장소 .git/config파일에 있습니다.

사용하다:

git config --list --show-origin

해당 설정이 정의 된 위치 (전역, 사용자, 저장소 등)를 확인합니다.


24
고마워, 둘 다 공감 했어 내가 알고 싶어 git config --list내가 저장소의 효과적인 설정을 볼 수 있기 때문에 명령을 내가 적절한 매개 변수와 지역, 글로벌 및 시스템 설정을 다를 수 있습니다 ( --global, --local, --system). 나는 당신이 있었기 때문에 할 수있어 자마자 답변을 받아 들일 겁니다 몇 초 더 빠른 :)
wullxz

2
git 구성에 대한 많은 잠재적 소스가 있습니다. 파일을 보면 일부만 제공됩니다. @linquize의 대답은 사실 정확합니다.
vonbrand

2
@vonbrand : --list는 -l과 같습니다.
Cameron Skinner

9
속기 (예 :와 같은 -l)는 파워 유저가되고 기능을 자주 사용하면 더 적은 문자를 입력하면 이익을 얻을 수 있습니다. 긴 --list옵션을 쉽게 찾고 기억할 수 있습니다. 덜 명백한 속기를 위해 종종 그들이 무엇을 의미하는지 확인해야하므로 긴 이름을 선호합니다. 실제로 모든 문자를 입력 할 필요는 없지만 여전히 전체 옵션 이름을 볼 때 명령 완료로 훨씬 더 쉽습니다.
Krzysztof Jabłoński

1
어떤 경우 git config --list인쇄 아무것도?
Matej J

247

가장 짧은

git config -l

시스템, 전역 및 로컬에서 상속 된 모든 값을 표시합니다.


13
이것이 git config --list 와 다른가 , 아니면 그것을 쓰는 더 짧은 방법 일까?
Magnilex

8
@ Magnilex 그것은 그것을 작성하는 짧은 방법입니다
LemenDrop

3
구성 파일에는 모든 상속 된 구성이 항상 표시되지는 않지만 git config -l모든 것이 표시됩니다. autocrlf설치를 위해 Windows 용 git이 설정 되어 있고 찾을 수있는 구성 파일이 없기 때문에 나를 저장 했습니다.
geneorama

예, C : \ ProgramData \ Git \ config 파일도 있습니다. 이것은 전역 또는 시스템 git 구성 파일 인 것 같습니다
Alex

129

글로벌 Git 구성을 어떻게 편집 합니까?

짧은 답변: git config --edit --global


Git 구성을 이해하려면 다음을 알아야합니다.

힘내 구성 변수는 세 가지 다른 수준으로 저장할 수 있습니다. 각 수준은 이전 수준의 값보다 우선합니다.

1. 시스템 수준 (시스템의 모든 사용자 및 모든 리포지토리에 적용)

  • git config --list --system수 있습니다 (필요할 수도 있음 sudo)
  • 설정, git config --system color.ui true
  • 시스템 구성 파일을 편집하려면 git config --edit --system

2. 글로벌 수준 (사용자에게 개인적으로 특정한 가치).

  • 보기 위해 git config --list --global
  • 설정, git config --global user.name xyz
  • 전역 구성 파일을 편집하려면 git config --edit --global

3. 리포지토리 수준 (해당 단일 리포지토리에만 해당)

  • 보기 위해 git config --list --local
  • 설정 git config --local core.ignorecase true( --local선택 사항)
  • 저장소 구성 파일을 편집하려면 git config --edit --local( --local선택 사항)

모든 설정을 보려면 어떻게합니까 ?

  • run git config --list, system , global 및 (저장소 내에있는 경우) 로컬 구성 표시
  • Run git config --list --show-origin, 각 구성 항목의 원본 파일도 표시

하나의 특정 구성을 어떻게 읽습니까?

  • 실행 git config user.name얻을 user.name예를 들어,.
  • 당신은 또한 옵션을 지정할 수 있습니다 --system, --global, --local특정 수준에서 그 값을 읽을 수 있습니다.

참조 : 1.6 시작하기-처음 Git 설정


1
git config --list글로벌, 시스템 및 로컬을 모두 표시 하시겠습니까? 나는 확인이 필요하다 :)
Adi Prasetyo

2
구성 파일의 위치를 ​​추가하려면 다음을 수행하십시오. 시스템 : C : \ ProgramData \ Git \ config (Windows). 글로벌 : C : \ Users \ user \ .gitconfig (Windows) ~ / .gitconfig (Linux) 로컬 : project-repo / .git / config
Alex

@AdiPrasetyo 예. git config --list --show-origin각 구성 항목의 출처를 찾기 위해 실행할 수 있습니다 .
kgf3JfUtW

109
git config --list

갈 길입니다. 나는 보통 그냥 엽니 다 .gitconfig.


2
~/.gitconfigFILES 섹션에 언급 된 다른 파일 을 의도 했거나 다른 파일 중 하나 git help config입니까?
chwarr

1
@chwarr-죄송합니다. 내가 "의도"했습니까?
Rook

1
~/.gitconfiggit은 .gitconfig현재 디렉토리에서 사용자가 어디에 있든 찾지 않기 때문에 " 보통 그냥 열어 봅니다." 라고 말한 것으로 생각합니다 . ( .gitconfig~/.gitconfig다른 파일 이름을 [ 보통 ].) 언급 된 git help config다른 파일은 다른 파일 이름을 가지므로 가정합니다.
chwarr

32

git config -e편집기에서 직접 구성 파일을 열도록 호출 할 수도 있습니다. Git 구성 파일은 -l출력 보다 훨씬 읽기 쉽기 때문에 항상 -e플래그 를 사용하는 경향이 있습니다 .

요약하면 다음과 같습니다.

git config -l  # List Git configuration settings (same as --list)
git config -e  # Opens Git configuration in the default editor (same as --edit)
  • 매개 변수가 없으면 local과 상호 작용합니다 .git/config.
  • 으로 --global그것은와 상호 작용 ~/.gitconfig.
  • 그리고 --system그것과 상호 작용합니다 $(prefix)/etc/gitconfig.

(실제로 무슨 $(prefix)뜻 인지 찾지 못했지만 기본값은로 보입니다 $HOME.)



11

Git 2.6 (2015 년 9 월 10 일)은 다음과 --name-only같이 출력을 단순화하는 옵션 을 추가합니다 git config -l.

참조 a92330d 커밋 , f225987 커밋 , 9f1429d 커밋 에 의해 (2015년 8월 20일) 제프 킹 ( peff) .
참조 ebca2d4 커밋 (2015년 8월 20일을), 및 905f203 커밋 , 578625f 커밋 에 의해 (2015 8월 10일) SZEDER 가보를 ( szeder) .
(의해 병합 Junio C 하마노 - gitster-fc9dfda 커밋 31 팔월 2015)

config: --name-only변수 이름 만 나열하려면 ' '옵션을 추가하십시오.

' git config'는 값 또는 이름-값 쌍만 표시 할 수 있으므로 쉘 스크립트에 설정된 구성 변수의 이름이 필요한 경우에는 ' git config --list'또는 ' --get-regexp' 를 실행 하고 구성 변수 이름을 해당 값과 구분하기 위해 출력을 구문 분석해야합니다.
그러나 이러한 구문 분석은 여러 줄 값을 처리 할 수 ​​없습니다.

' git config'는 개행 안전 구문 분석을 위해 널 종료 출력을 생성 할 수 있지만 쉘은 널 문자를 처리 할 수 ​​없으므로 이러한 경우에는 사용되지 않습니다.

우리 자신의 bash 완성 스크립트조차도 이러한 문제로 어려움을 겪고 있습니다.

구성 변수의 이름 만 나열하도록 --name-only' --list'및 ' --get-regexp' 의 출력을 수정 하는 ' '옵션을 도입하여 완료 스크립트 및 쉘 스크립트를 일반적으로 도와 주므로 오류가 발생하기 쉬운 사후 처리를 수행 할 필요가 없습니다. 변수 이름을 더 이상 값과 분리하십시오.


10

한 가지 중요한 점 git config:

git config--local, --global그리고 --system수준 및 해당 파일.

따라서 git config --local, git config --global및을 사용할 수 있습니다 git config --system.

구성 옵션이 전달되지 않으면 기본적 git config으로 로컬 수준에 기록됩니다 . 로컬 구성 값은 저장소의 .git 디렉토리에서 찾을 수있는 파일에 저장됩니다..git/config

글로벌 레벨 구성은 사용자마다 다르므로 운영 체제 사용자에게 적용됩니다. 전역 구성 값은 사용자의 홈 디렉토리에있는 파일에 저장됩니다. ~/.gitconfig유닉스 시스템과 C:\Users\<username>\.gitconfigWindows에서.

시스템 레벨 구성은 전체 머신에 적용됩니다. 여기에는 운영 체제의 모든 사용자 및 모든 리포지토리가 포함됩니다. 시스템 레벨 구성 파일 gitconfig은 시스템 루트 경로 와 다른 파일에 있습니다. Linux 시스템에서 $ (접두사) / etc / gitconfig Windows에서이 파일은에서 찾을 수 있습니다 C:\ProgramData\Git\config.

따라서 옵션은 해당 전역 .gitconfig파일 을 찾아서 편집하는 것입니다.

또는을 사용할 수 있습니다 git config --global --list.

이것은 정확히 당신이 필요로하는 라인입니다.

여기에 이미지 설명을 입력하십시오


7

alias , core , remote 등과 같이 Git 구성의 한 부분 만 나열 하려면 grep을 통해 결과를 파이프하면됩니다. 다음과 같은 것 :

git config --global -l | grep core

4

Linux 기반 시스템에서는 다음을 통해 구성 파일을보고 편집 할 수 있습니다.

vi/vim/nano .git/config

Git init 폴더 안에 있는지 확인하십시오.

작업 할 경우 --global config, 그것은이다

vi/vim/nano .gitconfig

/ home / userName에서

https://help.github.com/categories/setup/ 편집에 도움이됩니다.


3

모든 구성을 찾으려면 다음 명령을 작성하십시오.

git config --list

내 로컬 에서이 명령을 실행합니다.

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 명령은 전역 또는 로컬 프로젝트 레벨에서 Git 구성 값을 설정하는 데 사용되는 편리한 기능입니다. 이 구성 수준은 .gitconfig 텍스트 파일에 해당합니다. 자세한 내용은 여기를 참조하십시오 : atlassian.com/git/tutorials/setting-up-a-repository/git-config
infomasud

좋아요, 답변에 추가 할 수 있습니까?
RamenChef

1

Git 2.26.0 부터는 다음 --show-scope옵션 을 사용할 수 있습니다 .

git config --list --show-scope

출력 예 :

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

그것은 결합 될 수 있습니다

  • --local프로젝트 구성, --global사용자 구성, --system모든 사용자 구성
  • --show-origin 정확한 설정 파일 위치를 보여주기 위해
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.