[IntelliJ] Git에서 멀티 프로젝트 Checkout 구성 방법

프로젝트를 진행하면 단일 프로젝트로 구성되는 경우보다는 기능 별로 프로젝트가 나뉘어 있는 경우가 더 많습니다. 팀원 간 프로젝트를 협업하다 보면 깃(Git)을 이용해서 프로젝트를 내려받아야 합니다. 하지만 프로젝트가 여러 개의 경우 이클립스(Eclipse)와 다르게 인텔리제이(IntelliJ)에서 구성 방식과 설정에 대해 약간의 헷갈림이 있습니다. (물론, 저처럼 개발 초보자는 인텔리제이에 익숙하지 않거나 처음 해보시는 분들은 도큐먼트(Document)를 봐도 이해하기 힘듭니다.)

 

현업 실습을 경험하면서 깨우친(?) 깃에 있는 여러 개의 프로젝트를 인텔리제이에 구성하고 체크아웃(Checkout) 할 수 있도록 설정하는 방법을 설명드리도록 하겠습니다. (자신의 PC 디렉토리 구조와 터미널에서 기본적인 깃 사용 방법은 알고 있어야 합니다.)

 

아래 글을 읽기 전 인텔리제이 멀티 프로젝트(모듈)에 대해 잘 모르시는 분은 이 글을 참고하시면 이해하시는데 도움이 될 수 있습니다.

 

[1] Git에서 프로젝트 Clone 하기

[그림 1.1] 디렉토리 생성

터미널을 실행 후

자신이 원하는 위치에 여러 개의 프로젝트를 클론(Clone) 하기 위한 디렉토리를 mkdir 명령어로 생성해주세요.

(파인더로 해당 위치의 디렉토리로 이동하여 직접 폴더를 생성해도 상관없습니다.)

 

 새로 생성한 폴더(test-web)는 인텔리제이에서 루트 프로젝트로 사용됩니다.

 mkdir /.../[디렉토리 위치]/[새로운 폴더명]

 


 

[그림 1.2] 현재 디렉토리 위치 변경

새로 생성한 폴더의 위치로 cd 명령어로 변경해주세요.

cd /.../[디렉토리 위치]/[이동할 폴더명]

 


 

[그림 1.3] Clone 할 프로젝트 확인

클론을 수행할 프로젝트가 있는 깃으로 이동해주세요.

저는 Spring Boot + Maven 기반의 프로젝트 3개를 예시로 설명드리겠습니다.

 


 

[그림 1.4] web URL 복사

클론 하기 위한 프로젝트로 이동 후 Web URL을 복사해주세요.

저는 3개의 프로젝트 중 test-web-common을 먼저 수행하도록 하겠습니다.

 


 

[그림 1.5] 프로젝트 Clone

복사한 Web URL을 터미널에서 git clone 명령어와 함께 입력하여 프로젝트를 클론 해주세요.

(자신이 생성한 디렉토리 위치에서 명령어를 수행하여야 합니다.)

git clone [복사한 Web URL]

 


 

[그림 1.6] 모든 프로젝트 Clone

[그림 1.4 ~ 그림 1.5]와 동일한 방법으로 나머지 프로젝트도 클론 해주세요.

ls -l 명령어로 해당 디렉토리 위치에서 프로젝트가 클론 된 걸 확인할 수 있습니다.

 


[그림 1.7] 디렉토리 확인

해당 디렉토리로 직접 이동하여 확인해봐도 정상적으로 프로젝트가 클론 된 걸 확인할 수 있습니다.

그러면 이제 인텔리제이에 구성할 프로젝트 준비는 끝났습니다.

 

[2] IntelliJ에 프로젝트 열기

[그림 2.1] 프로젝트 열기

인텔리제이를 실행 후 시작 화면(Welcom Screen)에서 Open을 클릭해주세요.

 


 

[그림 2.2] 프로젝트 선택

준비한 루트 프로젝트(test-web)를 선택 후 Open을 클릭해주세요.

 


 

[그림 2.3] 인텔리제이 프로젝트 확인

루트 프로젝트(test-web) 하위에 준비한 3개의 프로젝트가 구성된 걸 확인할 수 있습니다.

 


[3] 프로젝트 Module 설정하기

[그림 3.1] 모듈 설정을 진행할 프로젝트 선택

이제 준비한 프로젝트를 루트 프로젝트(test-web)의 모듈(Module)로 설정해주도록 하겠습니다.

모듈 설정을 진행할 프로젝트를 선택해주세요.

 

저는 test-web-admin 프로젝트를 먼저 진행하도록 하겠습니다.

 


 

[그림 3.2] 선택한 프로젝트 모듈 설정

프로젝트를 선택 후 File > New > Module from Existing Sources... 를 클릭해주세요.

 


 

[그림 3.3] 디렉토리 선택

루트 프로젝트(test-web) 티렉토리 위치로 이동 후 선택한 프로젝트와 동일한 디렉토리를 선택 후 Open을 클릭해주세요.

 

저는 인텔리제이에서 test-web-admin 프로젝트를 선택하였기 때문에 test-web-admin 디렉토리를 선택해주었습니다.

 


 

[그림 3.4] 빌드 선택

프로젝트 설정되어 있는 빌드를 선택 후 Next를 클릭해주세요.

(저는 Maven으로 구성된 프로젝트이므로 Maven을 선택하겠습니다.)

 


 

[그림 3.5] 프로젝트 옵션 설정

'Import Maven projects automatically'를 체크 후 Next를 클릭해주세요.

 


 

[그림 3.6] Import Module

모듈로 설정할 프로젝트를 선택 후 Finish를 클릭해주세요.

(각각의 프로젝트를 따로 설정해주므로 해당 프로젝트에 관련된 것 한개만 목록에 나올 거예요.)

 


 

[그림 3.7] 모듈 설정 완료

test-web-admin 프로젝트가 정상적으로 루트 프로젝트(test-web)의 모듈로 설정되었습니다.

 

[4] Module로 설정된 프로젝트 실행 환경설정

[그림 4.1] Edit Configurations...

프로젝트가 모듈로 설정이 되었으면 실행 환경설정도 해주어야 합니다.

Edit Configurations... 를 클릭해주세요.

 


 

[그림 4.2] Working directory 설정

Run/Debug Configurations 창 목록에서 해당 프로젝트의 Application을 선택 후 Environment를 클릭해서 펼쳐주세요.

그리고 Working directory의 목록에서 '$MODULE_WORKING_DIR$'을 선택 후 OK를 클릭해주세요.

 

test-web-admin 프로젝트의 모듈 실행 환경설정까지 모든 설정이 끝났습니다.

 

[5] 여러 개 프로젝트를 Multi Module로 설정하기

[그림 5.1] 하위 프로젝트 모듈 설정

test-web-common 프로젝트 경우 하위에 2개의 프로젝트가 추가로 포함되어 있습니다.

이 경우 또한 [그림 3.1 ~ 그림 4.2]와 동일한 방식으로 각 프로젝트에 대해 모듈 설정을 해주면 됩니다.

 


 

[그림 5.2] 멀티 프로젝트(모듈) 설정 완료

[그림 3.1 ~ 그림 4.2]와 동일한 방식으로 나머지 프로젝트도 모듈 설정을 전부 해주면 됩니다.

모듈 설정실행 환경설정을 정상적으로 하였다면 프로젝트 실행도 정상적으로 작동되는 걸 확인할 수 있습니다.

 


 

[그림 5.3] 각 모듈별 git 설정

모듈 설정이 완료된 프로젝트를 확인해보면 모듈 별로 깃(git) 설정이 정상적으로 돼있는 걸 확인할 수 있습니다.

모듈 별로 깃 설정 및 기능을 사용할 수 있습니다.

댓글