IntelliJ와 GitHub를 연동하면 GitHub Desktop이나 SourceTree와 같은 Git GUI 없이 쉽게 Git을 사용할 수 있다.
Version : IntelliJ(2021.3.2), Git(2.33.0) OS : Windows 10, Windows 11
1. Repository 생성
먼저 IntelliJ와 연동할 GitHub 계정에 새로운 repository를 생성한다. GitHub에서 로그인 후 우측 상단의 + 버튼을 눌러서 생성하면 된다. 그 후 Repository 명을 입력하고 공개 여부를 결정하고 생성한다.
HTTPS 주소는 추후 IntelliJ 연동 시 필요한 주소이니 미리 복사해 놓아도 좋다.
2. IntelliJ에 Git/GitHub 설정
메뉴에서 File-Settings를 선택한다.
Settings 창이 뜨면 Version Control에서 Git을 선택한다. 우측 상단의 Test 버튼을 누른다. Git을 별도로 설치하지 않은 상태라면 손쉽게 IntellJ에서 설치하도록 안내한다. Download and Install을 클릭하면 된다. 별도록 직접 설치하고 싶다면 여기를 참고하여 진행하면 된다.
설치가 완료되었다면 시작 메뉴에서 아래와 같이 Git 프로그램이 PC에 설치된 것을 확인할 수 있다.
다음으로 Settings 창에서 Git 메뉴 아래에 있는 GitHub를 선택한다. 그 후 Add account를 선택하고 Log in via GitHub를 선택한다.
그러면 브라우저에 다음과 같이 로그인 진행을 위한 페이지가 뜨고 본인의 GitHub 계정으로 로그인하면 된다.
로그인이 성공하면 아래와 같이 GitHub 계정이 연동되는 것을 확인할 수 있다.
3. Repository 연결
메뉴에서 VCS를 선택한 후 Enable Version Control Integration을 선택한다. 그러면 새로운 창이 하나 뜨는데 거기서 Git을 선택한 후 OK를 누른다.
그러면 메뉴의 VCS가 Git으로 변경된 것을 확인할 수 있다. 그리고 좌측 파일명의 색상이 빨간색으로 변경된다. 빨간색은 Git에 추가되지 않은 워크스페이스 파일이라는 의미이다.
앞서 생성한 Repository와 연동하기 위하여 Git 메뉴를 누른 후 Manage Remotes를 선택한다. 그러면 Git Remotes 창이 뜨는데 +를 선택한다. 그러면 Define Remote 창이 뜨고 URL에 앞서 생성한 Repositoty의 HTTP 주소를 입력한다.
여기까지 진행하면 일단 GitHub에 Push 할 준비가 완료된 것이다. 그러나 좀 더 효율적인 반영에 도움을 주는 ignore 플러그인을 설치한 후 Push를 진행할 것이다.
다시 Settings 창으로 돌아와서 Plugins를 선택하고 ignore를 검색한다. 그리고 설치한다.
설치 후 프로젝트에서 New를 보면 ignore File이 생긴 것을 확인할 수 있다. 여기서 .gitignore File (Git)을 선택한다.
Ignore File Generator 창이 뜨면 좌측에서 Example user template 선택한다. (또는 본인에게 맞는 설정을 찾아서 선택하면 된다.) 그 후 Generate를 통해 생성하고 Add를 누른다.
그러면 아래와 같이 git에 Add 된 상태를 의미하는 녹색으로 파일명이 보이는 gitignore 파일이 생성된 것이 보일 것이다. 해당 파일을 열어서 다음과 같이 .gradle과 build도 추가한다. 그러면 이 파일에 설정된 곳의 파일들은 Git에 반영할 때 무시되어 보이지 않아서 편리하다.
그럼 확인 차 Commit 하기 위해서 메뉴의 Git을 선택한다. 그러면 좌측에 아직 Git에 추가되지 않은 파일 목록이 보이는데 ignore에 등록된 부분의 파일들은 무시되어 보이지 않는다. 따라서 반영이 불필요한 부분은 쉽게 거를 수 있다. 반영할 파일들을 선택하고 Commit 메시지를 작성 후 좌측 하단의 Commit을 누른다. 그러면 그 아래 Git이라는 메뉴가 생긴다.
Commit 한 것을 Push 하기 위해서 다시 Git 메뉴를 선택하고 Push를 선택한다. 그러면 Push Commits to $your_repository 창이 뜨는데 다시 한번 Push 버튼을 누르면 최종적으로 반영된다.
잘 반영되었는지 GitHub에 가서 확인해 보자. 아래와 같이 잘 반영되었다면 연동 완료이다.