프로젝트 수준 gitconfig 설정

1786 단어 postsconfigbashgit
지난 주에 시스템을 Arch Linux로 완전히 전환했으며 이 과정에서 일부 구성, 설정 등을 잃어버렸습니다.

git config도 그중 하나였습니다. 이전에는 작업 중인 프로젝트를 기반으로 사용할 사용자 이름, 이메일, ssh 키와 같은 별도의 구성이 있었습니다.
예를 들어 내 작업 프로젝트에는 개인 프로젝트에서 사용하는 자격 증명과 다른 자격 증명(사용자 이름, 이메일, ssh-key) 집합이 필요합니다.

저도 예전에 해봤지만 시간이 지나면 어떻게 하는지 잊어버리는 경향이 있습니다. 이번에는 필요할 때 참고할 수 있도록 포스팅에 적어봅니다.

단계


  • 프로젝트를 저장한 디렉토리로 이동하고 원하는 자격 증명으로 .project.gitconfig를 만듭니다.

  • [user]
        name = work-username
        email = [email protected]
    

  • 다음 조건을 포함하도록 .gitconfig 아래에 있는 사용자 수준$HOME/.gitconfig을 편집합니다.

  • [includeIf "gitdir:ABSOLUTE_PROJECT_DIRECTORY_PATH"]
        path = "ABSOLUTE_PROJECT_DIRECTORY_PATH/.project.gitconfig"
    

    기본적으로 git:

    "If you find a .git directory nested under this path then, use these set of credentials."


    확인하다



    이제 work/project-root 디렉터리 내의 프로젝트로 이동하여 올바른 자격 증명이 사용되고 있는지 확인합니다.

    git config --list | grep -P "user|email"
    


    참고(또는 Gotcha)



    이 구성은 해당 경로 또는 상위git 디렉토리에서 .git 디렉토리를 찾은 경우에만 .git에서 사용됩니다.
    예를 들어:

    work/
    |- .work.gitconfig
    |- project-a/
       |- .git/
    |- project-b/
       |- .git/
    


    이제 my .work.gitconfig 는 내가 project-a 또는 project-b 내부에 있을 때 사용되지만 work 내부에는 사용되지 않습니다.

    좋은 웹페이지 즐겨찾기