`.gitconfig`에서 여러 개의`core.excludesfile`을 설정하는 방법은 무엇입니까?


13

dropbox를 사용하여 우분투와 Mac에서 파일을 동기화 ~/.gitconfig하고 ~/.gitignore심볼릭 링크를 만들었습니다.

그리고 이렇게 excludesfile선언됩니다.

[core]
        editor = /usr/bin/vim
        excludesfile = /Users/username/.gitignore

문제는 홈 디렉토리가 os에 따라 다르므로 excludesfile에 대해 여러 설정이 필요합니다.

여러 개를 정의 할 수 core.excludesfile있습니까?

답변:


17

하나만 가질 수 있습니다 core.excludesfile. 마지막 설정이 사용됩니다. 그러나 여러 파일이 필요하지 않습니다. git은 ~홈 디렉토리의 약어로 지원합니다 .

[core]
    excludesfile = ~/.gitignore

일반적으로 제외 파일이 여러 개 있어야하는 경우 가장 간단한 해결책은 다른 파일을 연결하는 단일 파일을 생성하고 파일 중 하나가 변경 될 때마다 업데이트하는 것입니다.


.gitconfig사실은 git의 버전 관리하에 있습니다. 불행히도 git ~은 전체 경로로 확장 되고 절대 경로로 자체를 $HOME업데이트합니다 .gitconfig. 그 동작은 괜찮지 만 스테이지되지 않은 변경으로 표시되므로 git update-index --assume-unchanged .gitconfig확장을 무시하는 데 사용 합니다 (파일의 나머지 부분과 함께).
Dolph

2
@Dolph status-norepro~ 확장 을 위해 무엇을 했 습니까? 나는 얻는다 : git config --global core.excludesfile '~/.gitignore'; git config --global core.excludesfile~/.gitignore(git 1.7.9.5)
Gilles 'SO

1
@Dolph 대부분 쉘 확장 일 것입니다. 결국, 당신이 git config --global core.excludesfile ~/.gitignore그렇다면 실제로 실행되는 것은 git config --global core.excludesfile /path/to/home/.gitignore입니다.
Radon Rosborough

1
@Gilles, git-scm 당 파일 ~/.config/git/ignore이 존재하는 경우 전역 구성이 필요없이 전역 적으로 자동 무시됩니다.
Acumenus
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.