프로그래밍

Git 개발자가 Git을 구성하는 방법

Victory_HA 2025. 3. 10. 10:03

https://blog.gitbutler.com/how-git-core-devs-configure-git/
https://news.hada.io/topic?id=19441


Git 코어 개발자가 Git을 설정하고 사용하는 방법

  • Git 코어 개발자들이 Git을 더 효율적으로 사용하기 위해 설정하는 방법에 대해 알아보겠습니다.
  • 이 설정들은 Git의 기본 기능을 개선하여 개발자들이 작업을 더 쉽게 할 수 있도록 돕습니다.

Git을 확실히 더 좋게 만드는 설정

1. 브랜치 목록 정렬

  • 설명: 기본적으로 Git은 브랜치를 알파벳 순으로 정렬하지만, 최근 커밋 날짜 순으로 정렬하는 것이 더 유용할 수 있습니다.
  • 설정:
git config --global column.ui auto
git config --global branch.sort -committerdate

2. 태그 목록 정렬

  • 설명: 태그를 알파벳 순이 아닌 버전 순으로 정렬하려면 다음 설정을 사용합니다.
  • 설정:
git config --global tag.sort version:refname

3. 기본 브랜치 이름 설정

  • 설명: 새로운 저장소를 초기화할 때 기본 브랜치 이름을 설정하려면 다음과 같이 설정합니다.
  • 설정:
git config --global init.defaultBranch main

4. 향상된 diff 설정

  • 설명: 기본 diff 알고리즘을 'histogram'으로 변경하여 더 정확한 비교를 수행하고, 코드 이동을 감지하고 색상으로 표시합니다.
  • 설정:
git config --global diff.algorithm histogram
git config --global diff.colorMoved plain
git config --global diff.mnemonicPrefix true
git config --global diff.renames true

5. 향상된 push 설정

  • 설명: 다음 설정을 통해 push 동작을 개선할 수 있습니다.
  • 설정:
git config --global push.default simple
git config --global push.autoSetupRemote true
git config --global push.followTags true

6. 향상된 fetch 설정

  • 설명: fetch 시 불필요한 브랜치와 태그를 자동으로 제거하려면 다음 설정을 사용합니다.
  • 설정:
git config --global fetch.prune true
git config --global fetch.pruneTags true
git config --global fetch.all true

안 쓸 이유가 없는 설정

1. 자동 수정 프롬프트

  • 설명: 명령어 입력 시 오타를 감지하고 제안하도록 설정합니다.
  • 설정:
git config --global help.autocorrect prompt

2. 커밋 할 때 diff

  • 설명: 커밋 메시지 작성 시 변경된 내용을 함께 표시합니다.
  • 설정:
git config --global commit.verbose true

3. 충돌 해결 재사용

  • 설명: 이전의 충돌 해결을 자동으로 재사용합니다.
  • 설정:
git config --global rerere.enabled true
git config --global rerere.autoupdate true

4. 전역 .gitignore 파일 설정

  • 설명: 전역적으로 무시할 파일을 지정합니다.
  • 설정:
git config --global core.excludesfile ~/.gitignore

리베이스 설정 개선

1. 리베이스 시 자동 스쿼시 및 스태시

  • 설명: 리베이스 시 자동으로 스쿼시 및 스태시를 수행합니다.
  • 설정:
git config --global rebase.autoSquash true
git config --global rebase.autoStash true
git config --global rebase.updateRefs true

취향에 따른 설정

1. 향상된 머지 충돌 표시

  • 설명: 병합 충돌 시 기본 버전도 함께 표시합니다.
  • 설정:
git config --global merge.conflictstyle zdiff3

2. pull 시 리베이스 사용

  • 설명: git pull 시 자동으로 리베이스를 수행합니다.
  • 설정:
git config --global pull.rebase true

3. 파일 변경 감지 속도 향상

  • 설명: git status 등의 성능을 향상시킵니다.
  • 설정:
git config --global core.fsmonitor true
git config --global core.untrackedCache true

'프로그래밍' 카테고리의 다른 글

Topshelf + Serilog  (0) 2025.03.05
[LLM] Ollama 모델 사용기 - 2  (0) 2025.01.09
[LLM] Ollama 모델 사용기 - 1  (0) 2025.01.09
[WPF] MaterialDesign 아이콘 사용하기  (0) 2024.12.17
클래스 간의 관계 (UML)  (0) 2024.12.06