programing

Git 구성을 저장소의 일부로 저장하는 방법은 무엇입니까?

testmans 2023. 6. 29. 19:53
반응형

Git 구성을 저장소의 일부로 저장하는 방법은 무엇입니까?

여기에 설명된 것처럼 체크아웃 중에 파일을 망치기 위해 필터를 사용하고 있습니다.이제 문제는 필터 정의가 로컬 구성 파일에만 저장된다는 것입니다.

$ cat .git/config
....
[filter "dater"]
        smudge = /home/.../expand_date
        clean = perl -pe \"s/\\\\\\$Date[^\\\\\\$]*\\\\\\$/\\\\\\$Date\\\\\\$/\"

내 동료들이 이것으로부터 이익을 얻고 싶다면,Date확장, 그들은 내 필터 정의를 복사해야 합니다.그리고 제가 그것을 바꾸면, 그들에게 알려야 하는 등.

이 필터 정의 부분을 저장할 수 있습니까?.git/config저장소에 저장하고 깃이 그것을 사용하도록 만들 것인가요?

지원되는 범위는 3가지입니다..gitconfig파일:--system, --global, --local사용자 정의 구성 파일을 생성하여 지원되는 파일 중 하나에 포함할 수도 있습니다.

고객의 요구에 맞는 맞춤형 솔루션을 선택할 수 있습니다.필터를 기록하는 대신.git/config당신은 그것을 저장해야 합니다..gitconfig저장소 루트의 파일:

your-repo/
│
├── .git/
│   ├── config
│
├── .gitconfig
│

다음을 생성합니다..gitconfig필터를 사용하여 변경 내용을 커밋합니다.그러면 동료들은 항상 업데이트를 유지하지만 수동으로 포함해야 합니다.Git 단독으로는 사용자 지정 구성 파일을 자동으로 포함할 수 없습니다. Git만으로는 보안 취약성이 발생하기 때문입니다.

단일 리포지토리에 이 구성을 적용하려면 각 사용자가 다음 명령을 실행해야 합니다.your-repo/:

git config --local include.path ../.gitconfig

참조: https://git-scm.com/docs/git-config#_includes

사용자 정의에 개인 데이터를 저장하지 않도록 주의합니다..gitconfig,맘에 들다user.*당신의 글로벌에 그것들을 보관합니다..gitconfig.

사용할 수 없습니다..gitconfig기본적으로 git 저장소에 있는 파일이지만 git 구성이 버전이 되도록 연결할 수 있습니다.

다음과 같이 링크할 수 있습니다.

[include]
  path = ../.gitconfig

간단한 스크립트를 만들었습니다. gitconfig.sh어떤 것이 당신을 위해 그것을 할 수 있습니까 (복사보다 더 빨리) + 단순합니다..gitconfig파일을 작성하여 원하는 경우 이 repo https://github.com/HoBi/dotfiles 을 참조하십시오.


편집: 파일을 삭제했지만 https://github.com/tenhobi/dotfiles/blob/7e4376c006c508370b82bc7bd37173fab51dbd01/git/ .gitconfig.sh 에서 찾을 수 있습니다.

언급URL : https://stackoverflow.com/questions/18329621/how-to-store-a-git-config-as-part-of-the-repository

반응형