본문 바로가기
개발~

IntelliJ에서 자주 쓰는 Git 명령어(feat. JIRA)

by 보배곰 2021. 5. 24.

저는 보통 IntelliJ 단축키를 이용해서 Git을 사용합니다. 그런데 가끔 터미널에서 Git 명령어를 쓸 때가 있습니다. IntelliJ에서 제가 자주 사용하는 단축키와 터미널에서 사용하는 단축키를 공유하려고 합니다.

단축키는 mac 기준입니다!

IntelliJ에서 단축키는 Preferences...(⌘,) -> Keymap 에서 확인할 수 있습니다.

IntelliJ 단축키를 이용한 Git

커밋 : ⌘K ( $ git commit -am '커밋메세지' )

커밋하기 위해 단축키를 입력하면 아래와 같은 창이 뜹니다.

파일의 변경 내용을 볼 수 있고, 어느 브랜치에서 작업한지도 표시됩니다. 또한 커밋 메세지도 입력할 수 있습니다.

파일을 더블 클릭해서 커밋하기 전에 파일 내용을 다시 확인하고, 수정할 수도 있습니다.

 

추가로, 이 상태에서 커밋 버튼을 누르려면 ⌘↩︎ 를 눌러야 합니다. 엔터만 누르면, 커밋메세지가 수정되거나 파일이 열려요~~

Push: ⌘⇧K ( $ git push origin 브랜치명 )

커밋을 하고 나서 원격 저장소에 푸시하는 단축키입니다.

단축키를 입력하면 창이 뜨게 되고, 커밋된 내용들을 볼 수 있습니다.

빨간색 체크된 곳을 클릭해서 원격저장소 브랜치도 수정할 수 있습니다.

Git pull, merge 받기: ⌘T, ⌃⌘P ( $ git merge origin 브랜치명 )

intelliJ에서는 update라고 나오는데.. Git에 fetch & merge 라고 생각하면 됩니다~ 해당 단축키가 기본적으로 ⌘T 입니다.

그리고 저는 추가적으로 세팅해놓은 단축키를 소개해드리겠습니다!

해당 브랜치나 다른 브랜치 pull ( fetch & merge ) 받을 때 intelliJ 에서 shift 2번 눌러서 pull 검색해서 사용할 수 있습니다.

저는 ⌃⌘P 로 단축키를 설정해놨습니다.

pull 받을 브랜치를 지정할 수 있습니다.

브랜치 비교 : ⌃⌘L ( $ git diff )

현재 파일을 다른 브랜치랑 비교하는 기능도 있습니다! 저는 단축키를 ⌃⌘L 로 설정해놨습니다.

이렇게 브랜치를 쭉 볼 수있고, 클릭하면, 현재 파일과 다른 브랜치에 있는 같은 파일을 비교할 수 있습니다.

브랜치 보기 : ⌃⌘B ( $ git branch -a )

IntelliJ 오른쪽 아래에서 클릭하면 브랜치를 볼 수도 있지만 저는 단축키를 지정해놨습니다.

이렇게 볼 수 있습니다.

브랜치를 변경하려면 클릭하면 됩니다. 명령어로는 $ git switch 브랜치명 입니다.

추가로, 저는 사실 브랜치 보기나 브랜치 변경은 잘 쓰지 않고, Task를 만들어서 Task를 바꾸면서 브랜치를 바꿉니다. 이렇게 하는 가장 큰 이유는 회사에서 JIRA로 개발 이슈 관리를 하는데, 브랜치명을 이슈명으로 설정합니다. 위 사진처럼요. 그럼.. 기억력이 좋지 않은 저는.. LM-1234가 무엇이었는지 기억하지 못합니다..ㅎㅎ 그런데 Task로 지정하면 아래처럼 JIRA 이슈 제목을 바로 확인할 수 있습니다. 따라서 어떤 브랜치에서 어떤 일을 하는지 명확합니다. 추천추천~

그런데, 변경점?도 Task에 따라 가는 것 같습니다. 그래서 Task를 변경할 때 마다 화면이나 changelist 관련 해서 나오기 때문에 Task를 사용하려면 해당 내용도 염두에 둬야 합니다. Task 변경은 ⇧⌥T 로 추가,변경할 수 있습니다.

Terminal 을 이용한 Git

IntelliJ 기능으로만 안되거나 터미널로 하는게 더 편한 경우가 있습니다. 이때는 그냥 터미널 명령어로 합니다!

임시 저장 하기 ( $ git stash )

가끔 개발하다 보면, 중간에 다른 브랜치를 가야할 경우가 있습니다. 이때 $ git stash 를 해서 임시저장을 하고, 다른 브랜치로 이동할 수 있습니다.

$ git stash save '이름' 이렇게 하면, 이름으로 저장됩니다.

$ git stash list 이렇게 하면 임시저장한 내용을 볼 수 있습니다.

$ git stash pop 이렇게 하면 가장 마지막에 저장한 임시저장 내역을 불러올 수 있습니다.

remote branch로 Reset 하기 ( $ git reset --hard origin/브랜치명 )

개발을 하다보면, 개발하고 커밋하고 그랬는데 다 했다고 생각했는데, 필요없어서 제대로 돌아가는 브랜치를 받아야할 때가 있습니다. 혹은 머지하다가 conflict 나서 .. 코드 맞추기 힘들때 remote에 있는 코드를 강제로 불러오고 싶을 때 사용합니다. 개발중인 코드가 모두 날아가는걸 염두에 두어야 합니다!
$ git reset --hard origin/브랜치명 이러면 해당 remote 브랜치 데이터로 내 로컬 데이터가 변경되게 됩니다.

add 되지 않은 파일 삭제하기 ( $ git clean -fd )

위에 처럼 reset 하게 되면, 이미 있는 파일에 수정한 건 돌아가는데, 추가로 만든 파일, 폴더는 add에서 빠지기만 하고, 내 프로젝트에는 계속 보이게 됩니다. 해당 파일,폴더 삭제하기 위해서는 아래 명령어를 이용하면 됩니다.
$ git clean -fd

'개발~' 카테고리의 다른 글

자주 사용하는 카프카 명령어  (0) 2021.11.04
Go tour  (0) 2021.08.09
vi 편집기 입력 에러  (1) 2020.05.18
Linux alias 설정하기  (0) 2020.03.20
참고 사이트  (0) 2017.03.06

댓글