Having

Spring Boot 프로젝트 생성 및 GitHub 업로드 (feat. IntelliJ Community, Spring Initializr) 본문

gift-card-flea-market

Spring Boot 프로젝트 생성 및 GitHub 업로드 (feat. IntelliJ Community, Spring Initializr)

GHM 2023. 4. 19. 16:27

Spring Boot 로컬 프로젝트와 github를 연동하기에 앞서,
사용하는 IntelliJ 버전에 따라 지원하는 프레임워크가 다르기 때문에 Spring Boot 프로젝트 생성 방식에 차이가 존재합니다.
 

IntelliJ IDEA Ultimate VS Community

출처 : www.jetbrains.com/ko-kr/products/compare

 
두 버전이 지원하는 프레임워크를 확인할 수 있습니다. 위에서 볼 수 있듯이 IntelliJ Community 버전은 Spring, Spring Boot 프레임워크를 지원하지 않아 IntelliJ에서 직접 Spring 관련 프로젝트를 생성할 수 없습니다.

 

저는 IntelliJ Community 버전을 사용하고 있기 때문에, 해당 버전을 기준으로 글을 작성하고자 합니다.

 

준비 1. Spring Initializr에 접속해서 Spring Boot 프로젝트 생성

git-test 프로젝트 생성

준비 2. IntelliJ에서 프로젝트 open 

git-test 프로젝트 open


 
 
위에서 생성하고 오픈한 'git-test' 프로젝트는 로컬에 저장된 Spring Boot 프로젝트 파일입니다.

'git-test' 로컬 프로젝트를 github 원격 저장소에 연동해 업로드하는 2가지 방법에 대해 알아보겠습니다.

 

1. GitHub에 레포지토리를 생성하지 않은 경우

1-1. git-test 프로젝트 open 후, VCS 상단 바에서 Share Project On GitHub 클릭

1-2. GitHub에 새롭게 생성할 레포지토리 명, 설명 등을 입력하고 Share 클릭

깃허브 레포 명 : git-test

-> git-test 로컬 프로젝트 루트에 .git 파일(Git directory = Git repository)가 자동 생성됩니다.

1-3. git-test 프로젝트의 모든 파일 Add/Commit/Push를 한 번에 진행

1-4. GitHub에 git-test 원격 레포가 생성된 후,  git-test 로컬 프로젝트 업로드 확인

=> intelliJ를 통해 로컬에 존재하는 프로젝트를 GitHub 새 레포에 업로드 하는 방식 ! 매우 간단합니다 !


2. GitHub에 레포지토리를 미리 생성한 경우

2-1. GitHub에서 레포 생성

주의할 점 !

  • 레포 생성 시 README 파일 추가하면, main 브랜치를 가지는 레포가 생성됨
  • 추가하지 않으면, 브랜치가 없는 레포가 생성됨

 

README 파일이 없는 레포는 아무 파일도 없기 때문에 브랜치가 없습니다. 이 경우는 연동 후 commit/push만 하면되는 단순한 플로우이기 때문에 설명을 생략합니다. 아래는 README 파일을 추가해 main 브랜치를 가지는 레포를 기준으로 설명하겠습니다.
 

2-2. git-test 프로젝트 open 후, VCS 상단 바에서 Create Git Repository 클릭

2-3. Git Repository 생성

-> git-test 로컬 프로젝트 루트에 .git 파일(Git directory = Git repository) 생성

2-4. VCS -> Git 으로 변경되고..  Manage Remotes 클릭

2-5. GitHub에서 생성한 레포 주소 복사 후 붙여넣기

2-6. 연동 확인

-> 로컬 Git repository와 원격 Git repository 연동 성공 !

2-7. 로컬과 원격 브랜치가 각각 master/main으로 다르기 때문에, git fetch를 통해 원격 main 브랜치 가져오기

default 로컬 브랜치 : master

2-8. git fetch로 받아온 원격 레포의 main 브랜치로 checkout 하기

로컬 master -> origin/main으로 checkout

: master 로컬 브랜치가 main으로 변경되었습니다.

2-9. Commit/Push 

2-10. git-test 프로젝트가 올라간 것 확인