Github 디폴트 브랜치, Main으로 전환하기

인종차별 이슈가 불거지며 테크 업계에서도 자성의 목소리가 나기 시작했다.아래의 권고사항을 통해 인종차별적인 용어를 사용하지 않기위해 노력해야겠다.

Before After
Master Leader, Primary
Slave Follower, Replica
Whitelist Allowlist
Blacklist Denylist

기술 용어중 인종차별적인 용어들이 일부 있었는데, Github에서 가장 먼저 이를 바꾸는 움직임을 보였다.

Github의 디폴트 브랜치는 지금까지 Master라고 했었으나 10월부터는 디폴트 브랜치명이 Main으로 바뀐다. 본 포스트는 10월 전까지 생성한 레포지토리에 대한 디폴트 브랜치를 Main으로 바꾸는 법을 정리해보았다.

지금까지는 사용하던 저장소의 디폴트 브랜치이름을 master라고 불렀는데, 이 디폴트 브랜치이름을 더 직관적이면서 인종차별적인 의미를 제거하는 차원에서 main 으로 바꾸기로 결정되었다.

그럼 이제 디폴트 브랜치를 main 으로 바꾸는법을 알아보겠다.

Github 원격 저장소 디폴트 브랜치 변경하기

Github의 레포지토리 설정에서 디폴트 브랜치를 바꿀수 있다.
[Settings] - [Branches] 를 들어가면 아래와 같은 화면에서 바꿀수 있다.

여기에서 Mastermain 으로 바꾸고 Update 버튼을 클릭하면 레포지토리의 디폴트 브랜치명이 변경된다.


로컬 저장소 디폴트 브랜치 변경하기

로컬 환경에서는 어떻게 브랜치명을 바꿀수 있을까

Git 2.28 부터 브랜치를 디폴트 브랜치를 main으로 바꿀수 있게 되었다. 따라서 우선 git부터 2.28 버전으로 업데이트를 하자.

1
$ brew upgrade git

git config에서 디폴트 브랜치를 main으로 바꾸는 명령어가 필요하다.

1
$ git config --global init.defaultBranch main

이후부터 git init 으로 로컬에서 레포지토리를 생성하면 디폴트 브랜치가 main 브랜치로 생성될 것이다.


이미 생성한 프로젝트의 디폴트 브랜치 변경하기

기존에 디폴트 브랜치로 master 를 쓰고 있는 프로젝트도 main 으로 변경할 수 있다.

1
2
$ git checkout -B main
$ git push -u origin main

따로 생성하지 않아도 checkou 으로 main 브랜치 이동이 가능하다. 이 상태에서 원격 저장소에 push 하면 원격저장소에서 main브랜치가 올라간걸 확인할 수 있다.