터미널 및 VS 코드의 Git 커밋 메시지 템플릿

최근에 better commit messages 을 써보려고 합니다. 내 ADHD에 대한 내 좌우명은 항상 적어두기 때문에 동료가 git 커밋 메시지 템플릿에 대해 이야기했을 때 기뻤습니다.

시작하기 위해 모든 메시지에 포함시키려는 내용을 정리했습니다.
  • conventional commit type
  • 설명 제목
  • 무엇을 왜 설명하는 본문
  • 발행 번호

  • 나는 또한 Lisa's template's wrap lines git이 줄을 끝내기 전에 그녀가 마지막 유효한 열에 octothorpe를 넣은 것을 좋아했습니다.

    이를 기반으로 홈 디렉토리에 .gitmessage 파일을 만들었습니다.

    <type>: <title>
    # No more than 50 chars. #### 50 chars is here: #
    
    <body> 
    # Wrap at 72 chars. ################################## which is here: #
    
    Issue #
    


    그리고 나는 달렸다

    git config --global commit.template ~/.gitmessage
    


    터미널에서 한 줄로 모든 작업을 수행하려면 다음을 실행합니다.

    printf "<type>: <title>\n# No more than 50 chars. #### 50 chars is here: #\n\n<body>\n# Wrap at 72 chars. ################################## which is here: #\n\nIssue #" > ~/.gitmessage && git config --global commit.template ~/.gitmessage
    


    원하는 경우 명령에서 --global 플래그를 제거하고 보유한 각 리포지토리에 대해 다른 git 커밋 메시지 템플릿을 만들 수 있습니다. .gitmessage 파일에 대한 경로가 절대 경로가 아닌 경우 저장소 루트에 상대적으로 처리됩니다.

    이 모든 것이 훌륭하게 작동합니다 ... 터미널에서 일반적으로 git commit를 실행하는 경우. 나는 커밋할 때 VS Code's Source Control panel을 사용하는 데 익숙하며 메시지 템플릿의 주석 처리된 프롬프트가 거기에 표시되지 않습니다. 나는 완전히 좋아할 수 있습니다 alias something in my .zshrc :

    alias commit="git add . && git commit && git push && git pull"
    


    ...하지만 작은 커밋 확인 표시가 마음에 들었습니다. 대신 두 가지 커밋 메시지 확장 옵션을 찾았습니다.

    Commit Message Editor에는 VS Code 내의 UI와 명확한 지침이 있습니다. 소스 제어 패널에서 연필 아이콘을 클릭한 후 기존 git 메시지 템플릿 스타일 또는 양식 중에서 선택할 수 있습니다.

    VS Code Git Commit Editor에는 설정을 구성하는 데 도움이 되는 외부 UI와 많은 옵션이 있으며 더 많은 자동화를 원하는 사람에게 어필할 것입니다. 유사한 템플릿을 실행하려면 내 settings.json 에 다음 코드를 추가해야 했습니다.

    {
      ...
      "vscodeGitCommit.template": [
        "{type}: {title}\n\n{body}\n\nIssue #{issue}"
      ]
    }
    


    그런 다음 소스 제어 패널에서 채팅 아이콘을 클릭하면 해당 문자열에서 중괄호 안에 값을 입력하라는 메시지가 표시됩니다.

    꽤 깔끔한! 나는 주석 처리된 프롬프트를 원하기 때문에 Commit Message Editor를 사용하게 되었으며 이제 터미널과 텍스트 편집기에서 다루게 되었습니다.

    좋은 웹페이지 즐겨찾기