기본 콘텐츠로 건너뛰기

2022 08 26 회사 워크샵

인텔리 J(intelliJ) 초보자를 위한 팁 #13 - Git 사용법

안녕하세요~

인텔리 j를 써가면서 제가 편하게 쓰는 팁들을 공유하고 싶어서 글을 올립니다... 하여!!

'몰라도 상관없지만 알면 좋은' 팁입니다.

인텔리 j를 시작하시는 분들에게 괜찮은 팁이 되었으면 좋겠습니다.

제가 인텔리 J 라고는 적었지만 인텔리J가 말고 웹스톰 파이참 등.. 젯 브레인에서 제공되는 ide 는 거의 공통으로 사용할 수 있는 팁들입니다~

지금까지 윈도우 단축키만 말씀드렸는데 맥 단축키도 최대한 안내해보도록 하겠습니다.
[맥은 제가 사용을 안해서 정확하게 단축키를 잘 알고 있지 않습니다.ㅠㅠ]


이번엔 Git 에 대해서 알아보겠습니다.
[버전관리로 git을 많이 쓰니.. svn은.. 패스 하는걸로......]

- Git 연결

git을 제공하는 사이트가 몇몇군데 있는걸로 압니다. 제가 대표적으로 아는것은 Gitlab , Github 인데요..

인텔리j는 github에 연결하기 쉽게 되어 있습니다.[다른것도 어렵진 않습니다.]

우선 github 부터 연결 및 소스 클론을 알아보고 다른것도 말씀드리겠습니다. 

file > Setting[Ctrl+Alt+s] > Version Control > GitHub 를 보시면

깃 허브를 연결할 수 있는 창이 나옵니다.

Add Accoount 를 웹사이트가 열리고.. 

Authorize in GitHub 를 클릭하시면 권한 확인하시고 나면


짠 연결이 되었습니다!

이렇게 되면 깃 연결은 완료 되었습니다!

- 소스 clone 

File > new > Get from Version Control 들어가시면

GitHub 를 눌러보시면 본인 git repository 가 등장합니다.

그럼 directory 를 정해주시고 Clone 를 받아주시면..


오른쪽 하단에 빨간박스처럼 master 가 나오면 제대로 연결 된것입니다.

다시한번 File > new > Get from Version Control 들어가서 보면


Repository URL / Space[2021.1 버전에 추가] 있습니다.

Repository URL 에서 GitHub가 아닌 다른 깃도 추가 하실 수 있습니다.

Space 는 제가 써본적이 없어서 안내를 못해드리겠습니다. ㅠ

- Git 사용


오른쪽 하단에 master 를 클릭하면 Git Branches 메뉴가 나옵니다.

하지만 저걸 마우스로 누르기가 귀찮으실 분들을 위해!

Ctrl+shift+` [ shfit+commad+` ] 을 열어보시면 


커서 위치에 똑같은 메뉴가 등장합니다. 

여기서 브런치를 만들어 보죠!

New Branch 클릭하시고


이름을 적으시고.. Create 를 눌르시면

하단 우측에 작성하신 브런치 명이 나오면 제대로 브런치가 생성된것입니다.

다시 한번 Git Branches 메뉴를 열어보면..


Local Branches 를 보시면 현재 로컬에 잇는 깃목록을 보실 수 있습니다.

- update / merge into Current

현재 브런치가 blogtest 인데 여기서 master 브런치의 내용을 받아오겠습니다.

인텔리 제이에서 깃을 쓰면서 가장 좋았던 기능입니다.

우선 Git Branches (Ctrl+shift+` [ shfit+commad+` ]) 를 여신후..


master > update 를 선택하시면 로컬 master 에 서버에서 소스를 업데이트 합니다.[체크아웃을 굳이 할 필요가 없습니다.]

그다음 Marge into Current 를 선택하시면 바로 blogtest 브런치에 머지 작업이 끝났습니다.. 

혹시나 컴플릿이 난다면


IDE 에서 문제가 난 파일을 안내해줍니다. Smart Merge 를 클릭해주시면

conflict 난 부분을 안내해주는 창이 나옵니다.

왼쪽은  제 코드 오른쪽은  머지 하는 코드  가운데는 컴플릿을 수정해서 최종결과물이 어떻게 되는건지 확인 가능합니다.


컴플릿 난 부분을 정리 해주시면 가운데 소스에서 Apply가 나옵니다..[스샷을 못찍었네요..ㅠ]  아래 Apply를 해주시면 가운데 결과물로 소스가 정리 됩니다.

- Commit (& Push)

이번엔 커밋을 해보겠습니다. 

Ctrl+k [ comman+k ] 해보시면..


커밋 창이 등장합니다. 

혹시 저처럼 안나오신다면 File > Setting > Version Control > commit 을 보시면

Use non-modal commit interface 를 체크 하시면 저처럼 나옵니다.[모달창이 편하시면 모달창을 쓰셔도 기능은 다른것이 없습니다.]

다시 돌아와서.. Commit[Alt+i] 할 파일을 선택하고 Commit을 하면 됩니다!
바로 push 까지 한다면 Commit and push.. [Alt+P 또는 Ctrl+Alt+k(option+comand+k)]를 하시면 됩니다.

- Another Changelist

위에 Commit 목록을 다시 보시면 application-local.properties 파일이 있습니다.
해당 파일은 local 설정 파일이니 굳이 커밋을 할필요가 없고 아마 다음에도 안할꺼 같습니다.

Commit 할때  해당 파일의 체크를 해제 하고 Commit 을 할 수 있지만 매번 Commit 할때마다 체크 해제 하는게 귀찮습니다.
[커밋창을 열면 변경된 리스트는 항상 체크가 되어있습니다.]

그래서 커밋 제외 목록을 설정해보겠습니다.

application-local.properties 에서 우클릭하면 Move to Anouther Changelist..[Alt+Shift+M] 를 선택합니다.

대충 이름을 적어주시고 OK를 하시면..

Commit 목록이 구분 지어졌습니다. 보시는거와 같이 Changelist 는 기본 체크박스가 체크 되어 있는데 not commit file 은 체크가 안되어 있습니다.

commit 이 굳이 필요없는 파일은 이처럼 non commit file 에 넣어두셔서 관리 하실 수 있습니다. [이거 말고도 다른 파일 모음집등으로 만들수도 있습니다. 제가 한건 하나의 예시입니다~]

- Commit Option

하단에 톱니바퀴를 누르면.. 옵션들이 나옵니다.

전 Before option 옵션만 보겠습니다. 커밋 전에 하는 작업입니다.
[전 다른건 딱히 쓸일이 없네요..;;;]

Reformat code / 커밋전 코딩 리포맷팅[Ctrl+Alt+L(option+commond+L)] 합니다.
Optimizie imports / 커밋전 import를 정리를 해줍니다.[사용안하는 Import 삭제]
Check TODO / 커밋전 TODO 항목을 확인시켜줍니다.
Cleanup / 커밋전 Clean 작업을 진행합니다.

제가 알고 사용하는것만 적어봤습니다...;;[다른건 잘 모르겠어요ㅠㅠ]

- push


오른쪽 하단에 녹색 불이 들어오는 일이 있습니다.
그럼 push 할 항목이 있다고 안내를 해주는 아이콘입니다.
[파란색은 업데이트 할 항목이 있다는 안내입니다.]

그럼 Push를 해보겠습니다.

 Git Branches [Ctrl+shift+` ( shfit+commad+` )] 열어봅니다.


blogtest / master 에 push 할 항목이 있습니다.

지금 현재 브런치인 blogtest 를 선택하시면 push 를 선택하시면


push할 항목이 나오고 push를 진행 할 수 있습니다. 

master 브런치도 blogtest 에서 하는것처럼 push를 하시면 됩니다.
[이번에도 update 때처럼 브런치 이동을 안하셔도 됩니다!!]

휴.. 짧게 쓰고 싶었는데 이번에도 길었네요.. 

처음 사용하시는 분들에게 조금이나마 도움이 되었으면 좋겠어요 ㅠ

제가 Git만 소개 드렸는데 svn도 크게 다르지 않습니다. push 만 없을뿐....;;;

그럼 이만 Git 사용법은 마치도록 하겠습니다.


다음에 다른 팁을 가지고 오겠습니다~

댓글