git config --global은 어디에 기록됩니까?


1024

git config --global설정 하는 데 사용할 때 어떤 파일에 쓰나요?

예:

git config --global core.editor "blah"

다음 위치에서 찾을 수 없습니다.

C:\Program Files\Git\etc\gitconfig

C:\myapp\.git\config

ENV를 설정하지 않았습니까?

내 힘내 버전 : 1.6.5.1.1367.gcd48 – Windows 7


1
msysgit 또는 다른 것을 사용하고 있습니까?
codeguru

359
git config --global --edit어떤 종류의 설정을하든 정확한 위치를 알려줘야합니다. 편집기에서 어떤 파일이 나타나는지 살펴보십시오.
MatrixFrog

55
git config --global --listgit이 예상하는 위치를 알려주기 때문에 존재하지 않을 때에도 유용했습니다.
AJP

4
@ AJP : 이것은 정확히 내 문제이지만 저장 / 읽기를 원하는 위치를 변경하는 방법 ??
Stijn de Witt

1
git config --list --show-origin이 위치를 알려줄 것입니다
eddyP23

답변:


1238

2016 업데이트 : git 2.8 (2016 년 3 월)을 사용하면 다음을 간단히 사용할 수 있습니다.

git config --list --show-origin

Git 2.26 (Q1 2020)을 사용하면 옵션을 추가 할 수 있습니다--show-scope

git config --list --show-origin --show-scope

어느 구성이 어디에 설정되어 있는지 확인할 수 있습니다.
" Git 구성의 설정은 어디에서 제공됩니까? "를 참조하십시오.

마찬가지로 스티븐 Vascellaro는 지적 코멘트에 ,

비표준 설치 위치에서 작동합니다. (즉, Git Portable )

(최신 PortableGit-2.14.2-64-bit.7z.exe, 원하는 곳에서 압축 해제 할 수 있음)


원문 답변 (2010)

에서 워드 프로세서 :

-전역

쓰기 옵션의 경우 : ~/.gitconfig저장소가 아닌 글로벌 파일에 씁니다 .git/config.

Git for Windows를 사용하고 있기 때문에 이것이 어떤 위치에 해당하는지 명확하지 않을 수 있습니다. 그러나 etc / profile (에서 C:\Program Files\Git) 을 보면 다음과 같이 표시됩니다.

HOME="$HOMEDRIVE$HOMEPATH"

의미:

C:\Users\MyLogin

(Windows 7에서)

이는 파일이 C:\Users\MyLogin\.gitconfigWindows 7의 Git에 있음을 의미합니다 .


8
나는 정말 멍청했고 편집 명령에 "--global"플래그를 추가하지 않았다! "git config --global --edit"는 모든 설정 변경 사항이있는 파일을 보여주었습니다. "git config --edit"는 내가 열어 놓고 생각한 파일입니다. 많은 감사합니다.
이안 본

6
감사. % USERPROFILE %에 있다고 말한 다른 장소를 보았습니다. 내 컴퓨터에서 HOMEDRIVE 및 HOMEPATH가 네트워크 드라이브로 다시 매핑됩니다. 로컬 드라이브에서 검색 한 결과가 없습니다. 그래서 이것은 많은 도움이되었습니다.
Mike M. Lin

2
정말 유용합니다. 같은 문제가 발생했습니다. 홈 드라이브가 매핑 된 도메인에있는 경우 git 구성을 생성하려고 시도합니다. 이것은 좋은 기능 요청을 할 것입니다-% HOMEDRIVE % 또는 % USERPROFILE % 사용
plasmid87

2
한 명의 사용자에게만 적용되는 이유는 무엇입니까? (유닉스의 경우) /etc/gitconfig"글로벌"이 아니고 ~/.gitconfig"로컬"일뿐입니다 ..... 그리고 .git/config"하이퍼 로컬"이라고 생각합니다. 명명법에 대한 합당한 이유가 있는지 궁금해하고 있었습니까?
Peter Ajtai

7
@PeterAjtai "글로벌"은 모든 저장소를위한 것이기 때문입니다. "로컬"(하나의 리포지토리 만) 또는 "시스템"(모든 리포지토리, 모든 사용자를위한)과 달리
VonC

123

또한 .gitconfigWindows 컴퓨터 에서 전역 을 찾고 있었고 git을 사용하여 깔끔한 트릭을 발견했습니다.

를 수행 git config --global -e하고 운이 좋으면 다음, 당신은 당신의 글로벌로드 텍스트 편집기를 얻을 것이다 .gitconfig파일을. 단순히 폴더를 검색하거나 다른 이름으로 저장을 시도하십시오. :-)


내가 찾던 것! -e 명령! 한 번에 속성을 편집하는 것이 중요하지 않기 때문입니다.
Patareco

1
이 명령을 실행하면 C:\Users\<user_name>\.gitconfig누락 된 경우 도 작성 됩니다.
pmbanka

비 창문 모드에서 실행 중이고 위치를 찾을 수 없음
Triynko

73

* nixes에서는에 ~/.gitconfig있습니다. 집에 해당 파일이 있습니까?

Windows에서는 git bash를 입력 할 수 있습니다

notepad ~/.gitconfig

6
이것은 Windows에서 동일해야합니다.
Felix Kling

2
당신이 쉽게 그것을 얻고 싶다면, 별명을 쓰십시오 :) 여기가 있습니다 : alias gitconfig='open -a Sublime\ Text.app ~/.gitconfig'. 원하는 텍스트 편집기를 사용하십시오.
8월

43

msysgit의 경로는 다음과 같습니다.

윈도우 XP -C:\Documents and Settings\<user_name>\.gitconfig

Windows Vista + C:\Users\<user_name>\.gitconfig


17
아마도 이것을 % USERPROFILE %로 설명하는 것이 더 좋을 것입니다. 그러면 과거, 현재, 미래의 모든 Windows 버전에서 대답이 작동합니다.
jarmod

3
다른 답변에서와 같이 실제로 % HOMEDRIVE %% HOMEPATH %라고 생각하는 것을 제외하고는 많은 경우에 % USERPROFILE %과 동일하지만, 일부는 IT 부서가 대신 매핑 된 드라이브를 가리 키도록합니다.
ojchase

34

HOME 환경 변수를 정의하지 않은 경우 글로벌 위치는 HOMEDRIVE 및 HOMEPATH 환경 변수를 사용하여 Windows MsysGit에서 파생됩니다. 자세한 내용은 'profile'스크립트에 자세히 나와 있습니다.

회사 환경에서 HOMEDRIVE는 H :이며 네트워크 URL \\ share \ $에 매핑됩니다. 그런 다음 전체 로트는 "내 문서"로 매핑되며 다른 곳에서는 기대할 수 없습니다. 드라이브 대 URL 재 매핑에 추가 문제가있을 수 있습니다. 어쨌든 HOMEDRIVE 또는 HOMEPATH 변수를 조정할 수조차 없습니다.

필자의 경우 개인 HOME 환경 변수를 정의하고 D : \ git \ GitHOME을 가리키고 모든 GIT 파일 (확장자없이 확장 가능)을 GitHOME 디렉토리에 복사하여 안전하게 보관했습니다.

Windows 환경 변수는 내 컴퓨터 속성 대화 상자의 고급 탭을 통해 설정할 수 있습니다.


1
Bower를 사용하는 동안 나를 잡아 냈기 때문에 HOMEDRIVEand HOMEPATH변수 에 게시하려는 답변을 스크롤했습니다 . Windows의 <system>:\User\<username>\.gitconfig, while the Git tool itself saves to % HOMEPATH % \. gitconfig . I had to go one step further and copy the updated config file from my H :`(네트워크에서 동일한 드라이브 문자를 사용)에서 로컬 사용자 폴더로 읽은 많은 유틸리티가 보인다 .

1
@ZaLiTHkA, 회사 네트워크에서 사용자의 홈 (H :) 드라이브는 C : \ User \ 위치로 다시 매핑되므로 눈치 채지 못했습니다. 실수를 저지른 FOSS 유틸리티를 식별 할 수 있으면 해당 도구를보고 / 수정하는 데 도움이되는 유용한 정보가됩니다. 내부 회사 도구 인 경우 귀하는 본인의 ;-)
Philip Oakley

간단한 setter 줄보다 복잡하지 않으면 etc \ profile 스크립트에 HOME이 정의되어 있지 않습니다. 여전히 설명 된대로 작동하는 것 같지만 요즘 HOME이 어디에 설정되어 있는지는 확실하지 않습니다.
ojchase

@ojchase --glob config가 Windows와 관련하여 작성된 곳의 대답에 대한 나의 부분. 핵심 리눅스 git은 XDG가 지시하는 곳과 같은 곳에 쓰기를합니다 (즉, 리눅스가 다른 곳에 쓰기를하고 다른 규칙을 가지고 있다는 것을 알고 있습니다. 그리고 중요한 것은 Windows에 '드라이브'가있는 동안 루트 디렉토리를 가지고 있습니다. ;-)
Philip Oakley

@PhilipOakley 실제로 Windows도 언급했습니다. 미안하지만 명확하지 않았습니다. 귀하의 답변과 다른 것들을 결합하여 일종의 HOME = $HOMEDRIVE$HOMEPATH(또는 유사한) 줄을 기대하고 C:\Program Files\Git\etc\profile있었고 그 줄은 존재하지 않는 것 같지만 아마도 익숙한 것입니까? 내가 선호하지 않는 환경 변수에 의해 설정되지 않는 한 $ HOME을 설정하는 것을 정확히 알 수 없었습니다.
ojchase

12

Windows PC에서 TortoiseGit을 사용하는 경우 다음을 사용할 수 있습니다.

Settings / Git / Config / Edit global .gitconfig

전역 .gitignore 파일을 엽니 다.

그러나 Windows (7) PC를 ​​도메인에서 사용하는 경우 프로필 디렉토리는 네트워크 공유 (드라이브로 마운트) 일 수 있습니다. 이 경우 TortoiseGit (최소 : 1.6.5.0)가 잘못된 디렉토리 (c : ...)를 가리키고 있습니다. 자세한 내용은 비공개 TortoiseGit 문제 922 를 참조하십시오. 또는 % HOMEDRIVE %% HOMEPATH %를 사용하여 .gitignore 파일이 포함 된 디렉토리를여십시오.


10

Windows 8.1에서 msysgit과 함께 SmartGit 을 사용 하고 있으며 gitconfig파일에 대해 세 가지 다른 위치가있을 수 있습니다 .

%USERPROFILE%\.gitconfig
C:\Program Files (x86)\Git\etc\gitconfig
C:\Program Files (x86)\SmartGitHg\git\etc\gitconfig

그러나 사용되는 것은에서 나온 것 %USERPROFILE%\.gitconfig입니다.


6

참고할 때 유용합니다 (* nix 플랫폼의 경우) : /usr/share/git-core/git 자동 완성 스크립트 및 다음 (기본) 훅과 같은 일부 유형의 전역 git 구성 / 정보가에 저장됩니다 .

  • applypatch-msg
  • 업데이트 후
  • 사전 커밋
  • 준비 커밋 메시지
  • commit-msg
  • 사전 신청
  • 사전 리베이스
  • 최신 정보

이들 각각은 해당 파일 이름으로 설명 된 시간에 실행할 고유 한 명령 세트를 포함 할 수 있습니다.


2
OP 질문에는 유용하지 않습니다.
orbfish 2013

5

나는 또한 내 글로벌에 문제가 있었다 .gitconfig 이것은 누군가 가이 이상한 경우

자식은 말했다 :

치명적 : 구성 파일을 읽는 동안 알 수없는 오류가 발생했습니다.

이제 고쳤습니다. .gitconfig이 폴더에서 두 번째 문제가 발생했습니다 .

c : \ 사용자 \ myUser.config \ git \ config

어디에서 왔는지 모르겠지만 이제는 모든 것이 매력처럼 작동합니다.


5

전역 .gitconfig 파일은 언제 작성됩니까?

우선, git은 설치 중에 전역 구성 파일 (.gitconfig)을 자동으로 만들지 않습니다. 파일을 처음 쓸 때까지 파일이 작성되지 않습니다. 시스템 변수를 설정하지 않은 경우 파일 시스템에 없습니다.문제의 원인 일 수 있습니다.

Git에게 요청하는 한 가지 방법은 편집을 요청하는 것입니다. 그렇게하면 파일이 만들어집니다.

git config --global --edit

이 명령을 실행할 때 사용자의 홈 폴더를 모니터링하면 .gitconfig 파일이 마술처럼 나타납니다.

자식 구성은 어디에 저장됩니까?

다음은 세 가지 Git 범위, 즉 system , globallocal 과 관련된 구성 파일의 이름과 위치에 대한 빠른 설명입니다 .

  • 시스템 Git 구성 : -git-install-location- / ming <32> / etc 에있는 gitconfig 라는 파일
  • 전역 Git 구성 : 사용자의 홈 폴더 (C : \ Users \ git user) 에있는 .gitconfig 라는 파일
  • 로컬 Git 구성 : 로컬 저장소 의 .git 폴더config 라는 파일

물론 보는 것은 믿기 때문에 각 파일과 각 위치를 보여주는 이미지가 있습니다. 주제에 대해 쓴 기사에서 이미지를 가져 왔습니다.

Windows Git 구성 파일 위치 (TheServerSide.com)

Git 구성 파일의 위치


1
휴대용 설정이라는 4 번째 장소가 있습니다. 여기 에서 4 개의 장소를 언급합니다. Windows 용 Git은 4 가지 수준의 구성을 지원합니다. 가장 낮은 수준 "휴대용"로 알려진 기계 특정 구성 설정이며, "% 경우 ProgramData % \ 힘내 \ 설정"삶
바드르 Elmers

1
마음을 날려! 새로운 정보로 기사를 업데이트하겠습니다. 건배!
카메론 맥켄지

4

Windows 7을 실행 중이며 GitHub의 지침에 따라 git을 설치 프로그램으로 사용하고 있습니다 (1 년 또는 2 년). 내가 생각했던 다소 일반적인 유스 케이스. 위의 답변 중 어느 것도 도움이되지 않았으며 많은 좌절을 겪은 후에 다음 디렉토리에서 '실제'gitconfig 파일을 찾았습니다.

C : \ Users \ Bill \ AppData \ Local \ GitHub \ PortableGit_054f2e797ebafd44a30203088cd 3d58663c627ef \ etc

PortableGit_ 뒤에 고유 한 GUID 또는 유사한 이름 인 사용자 이름과 접미사를 대체하십시오.


1
Windows 용 GitHub를 사용하는 경우에만 해당됩니다.

3

이 인용문을 게시하는 것이 중요하다고 생각합니다.

Windows 용 Git은 4 가지 수준의 구성을 지원합니다. 가장 낮은 수준은 "휴대용"으로 알려진 컴퓨터 별 구성 설정이며 "% ProgramData % \ Git \ config"입니다. 우선 순위는 "\ mingw64 \ etc \ gitconfig"에있는 "시스템"으로 알려진 설치 특정 구성 설정입니다. 이 두 구성 파일은 일반적으로 수정하려면 높은 권한이 필요합니다.

"% UserProfile % .gitconfig"에서 찾을 수있는 "글로벌"구성이라는 사용 특정 값부터 "사용자 편집 가능"구성 파일을 찾습니다. 최우선 순위 구성 설정은 "로컬"구성에 있으며 일반적으로 ".git \ config"에 있습니다.

링크 된 블로그에서 "시스템"또는 "설치"특정 구성 설정을 수정하는 것이 좋습니다. 그러나 사용자는 다른 Git 설치가 해당 설정을 흡수하지 않을 것으로 예상해야합니다. 시스템 전체 설정을 원하면 "휴대용"구성 파일을 사용하고, 그렇지 않으면 "전역"또는 "로컬"구성 파일을 선택하십시오.

다행스럽게도 사람들은이 정보가 유용하다고 생각합니다.

출처


3

@MatrixFrog가 주석 에서 지적했듯이 목표가 구성을 편집하는 것이라면 다음을 실행하십시오.

git config --global --edit

이 명령은 --global선택한 편집기 에서 구성 파일 (이 경우 하나)을 열고 파일이 닫힐 때까지 기다 git rebase -i립니다 (.


당신은 세계 어디에 알아 내기 위해 이것을 사용할 수 .gitconfig있습니다 -. 한 에디터는 파일에있는 어떤 디렉토리를 알려줍니다으로 당신은 또한 다른 스위치 (사용할 수 있습니다 --system, --local찾아 편집 다른 등) .gitconfig위치. PS -e--edit
LightCC

1

Msysgit를 제거하고 Cygwin + Git을 설치하십시오. 그러면 전역 '.gitconfig'가 여기에 있습니다 : C : \ cygwin (64) \ home \ [userName] \. gitconfig

이제 다른 프로그램에서 사용할 수있는 환경 변수에 대해 걱정할 필요가 없습니다. 예를 들어, 내 환경 변수는 작업 창 도메인 환경에서 매핑 된 드라이브를 가리 켰습니다. 내 글로벌 .gitconfig가 "홈"매핑 된 드라이브에 앉아있는 것을 원하지 않습니다. 또한 해당 Windows 환경 변수에 의존 할 수있는 다른 응용 프로그램에 어떤 일이 발생할지 모릅니다. 운영 부서는 환경 변수를 맵핑 된 드라이브로 설정해야 할 수도 있습니다.

또한이 방법을 사용하여 전역 '.gitconfig'에 대한 특정 경로를 지정하면 Mysysgit이 '프로필'구성 설정을 덮어 쓰는 것에 대해 걱정할 필요가 없습니다.

일반적으로 자신을 구하고 Windows에서 cygwin bash 쉘을 사용하고 더 행복하십시오.


1

비슷한 문제가있었습니다. 문제는 .gitconfig파일이

C:\Users\MyLogin\.gitconfig\

(Windows 7에서)

즉, 파일이 C:\Users\MyLogin\.gitconfig\.gitconfigon 대신에 위치했습니다 C:\Users\MyLogin\.gitconfig(Git이 파일을 찾는 위치).


1

.gitconfig 파일 위치

macOS 테스트 OK

글로벌

# global config
$ cd ~/.gitconfig

# view global config
$ git config --global -l

현지

# local config
$ cd .git/config

# view local config
$ git config -l

어쩌면 당신에게 보너스 : Vim또는 VSCodegit 설정 편집


# open config with Vim

# global config
$ vim ~/.gitconfig

# local config
$ vim .git/config


# open config with VSCode

# global config
$ code ~/.gitconfig

# local config
$ code .git/config


0

나는 Git을 다음과 같이 설치했다. C:\Users\_myuserfolder_\AppData\Local\Programs\Git

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.