본문 바로가기

IT공부/스프링

STS에서 Git 사용하기

STS에서 Git 사용하기

저장소 만들기

프로젝트 우클릭 > Team > Share Project.

 

Create 버튼을 누르면 로컬 컴퓨터에 저장소를 생성하기 위한 경로를 지정하는 창이 나온다. 경로를 지정하고 Finish 버튼을 누른다. 아래 사진과 다르게  Use ~~를 체크하고 그아래 Creat Repo~ 버튼을 클릭해서 프로젝트 안에 .git이 생기게 생성한다.

원격저장소에 푸시하기

깃헙에서 레포지토리를 하나 생성한다. 생성시 README.md 파일 생성 체크를 해제하고 생성한다. 그리고 주소를 복사한다.

 

STS 퍼시펙티브를 Git으로 변경한다.

 

아래와 같이 Remote 우클릭 > Create Remote를 클릭한다.

 

깃헙 레포지토리 경로를 입력해준다. Configure push를 클릭하자(사진 잘못됨).  Create를 클릭한다.

그 다음 Change 버튼 클릭 후 복사한 레포지토리 경로와 깃헙 아이디 비번을 입력하고 아래 Store in Secure Store를 체크한다. 아이디와 비번을 저장함으로서 푸시할 때마다 입력하는 창이 안나온다. save 클릭.

 

Remote 하위에 아래와 같이 나오면 성공한 것이다.

그  후 gitignore 빈파일 생성 후 다른 파일과 함께 푸시한다.

gitignore 파일 등록

gitignore 파일은 커밋 시 제외시킬 파일의 목록을 가지고 있다. gitignore 파일 안에 커밋 시 제외시킬 파일목록을 적고 푸시하면 커밋 시 해당 파일이 제외된다. 파일을 제외하는 이유는 IDE가 생성하는 파일들을 깃헙에 푸시하고 그걸 다른 사람이 내려받게 되면 실행이 안되는 경우가 있다. IDE가 생성하는 파일은 해당 사용자 환경에 고유하기 때문에 다른 사람이 그것을 내려받게 되면 다른 환경의 값을 참조하게되어 실행이 안된다. 그래서 제외시킨다.

 

gitignore 파일을 생성하기 전에 아래와 같이 숨김파일을 볼 수 있게 하자.

프로젝트 우클릭 후 File을 선택한뒤 '.gitignore' 파일을 만든다.

gitignore.io사이트 접속한 뒤 windows, eclipse, java를 입력한 뒤 나오는 내용을 붙여넣자.

 

 

아래와 같이 입력한 뒤 푸시한다.

 

.settings
.classpath
.project
.springBeans 
/target

그러면 커밋 시 해당 폴더 하위에 있는 파일들은 제외될 것이다.

Git으로 협업하기 

Manage access 설정

깃헙에서 Settings > Manage access > invite a colaborator > username 입력하여 팀원을 초대한다.

새로운 브랜치를 생성한다.

 

'develop' 브랜치를 생성한다.

아래와 같이 develop 브랜치로 체크아웃된 것을 확인하고 push 한다.

깃헙에서 develop 브랜치를 default 브랜치로 정한다. develop 브랜치를 선택한 다음 update 버튼을 클릭한다. 이제는 master 브랜치가 아닌 develop 브랜치를 기반으로 개발할 것이다.

 

협업

Git으로 협업을 하기 위해 Git Flow 전략을 사용하여 협업을 한다. Git Flow 전략이란 브랜치를 효율적으로 관리하기 위한 기법이다. 이 기법을 프로젝트 상황에 맞게 커스텀하여 적용한다.

 

Git Flow에는 5가지 브랜치가 존재한다.

  • master : 배포브랜치(제품으로 출시되는 브랜치)
  • develop : 개발브랜치(다음 출시 버전을 개발하는 브랜치)
  • feature : 기능브랜치(기능을 개발하는 브랜치)
  • release : 출시브랜치(이번 출시 버전 브랜치, master에 병합된다.)
  • hotfix : 긴급수정브랜치(이미 배포한 운영버전에서 발생한 문제를 해결하는 브랜치)

현재 프로젝트는 단기 프로젝트이며 소규모 인원으로 진행되기 때문에 master - develop - feature 3가지 브랜치만 사용하여 프로젝트를 관리한다.

 

'IT공부 > 스프링' 카테고리의 다른 글

게시판 페이징 처리  (0) 2020.07.08
게시판 CRUD구현  (0) 2020.07.06
스프링에서 MyBatis 사용하기  (0) 2020.07.04
스프링 MVC  (0) 2020.07.04
MyBatis 연동  (0) 2020.07.03