들어가며
혼자서만 하는 개발에 Git을 형상 관리도구로 쓰고 있다면, 시간이 지나도 결국 사용하는 Git 명령은 한정되어 버린다.
최근 개인 프로젝트를 하고 있는데, 거의 아래의 명령에서 벗어나지 않는 나를 발견했다.
$ git add program.file $ git commit -m "메시지" $ git push origin master
개인이 아니라 팀 안에서 개발하게 되었을 때, 원활하게 진행하기 위해 알아두면 좋은 git 기본 명령 6가지를 꼽아봤다. (사실 git add 명령은 협업과는 거리가 있으니 5가지가 맞을수도..)
git branch
git branch 명령은 로컬에 있는 git 브랜치를 표시할 때 사용하는 명령이다.
현재 사용중인 브랜치는 처음에 *가 붙어있다.
$ git branch * branch_main branch_1 branch_2
git checkout
git checkout 명령은 브랜치를 변경할 때 사용한다. 브랜치를 만들고 이동할 수도 있는데, 이 때에는 -b 옵션으로 사용하면 된다.
$ git checkout -b branch_name
브랜치는 버그가 발견됐을 때, master 브랜치에서 작업하지 않고 하위 브랜치를 만들어서 수정한 뒤 커밋 풀 요청을 보내서 병합을 하는 흐름으로 개발할 경우에 매우 편리하다. 참고로, 브랜치를 만들 때는 브랜치에서 또다른 브랜치를 다시 만드는 것은 자체하고 메인 브랜치로 전환한 다음 다른 브랜치를 만드는 것이 좋다.
git pull
git pull 명령은 브랜치를 최신으로 업데이트한다. 팀의 누군가가 작업한 수정 내역이 메인 브랜치에 반영되었을지도 모르기 때문에 새로운 브랜치를 만들 때 반드시 먼저 실행해서 브랜치를 최신으로 업데이트해주는 것이 좋다.
$ git pull
git status
git status 명령은 변경된 파일이나 add 한 파일을 확인할 수있다. 잘못 add 한 파일이나 add 를 잊은 파일이 없는지 커밋하기 전에 확인하자.
$ git status
git diff
git diff 명령은 파일의 수정된 부분을 표시해 준다. 불필요한 로그 출력 등이 제대로 꺼져 있는지 커밋 전에 확인하자.
$ git diff program.file
git add
git add 는 가장 기초적인 명령이지만, 파라메터가 따라서 달라지는 것을 좀더 다뤄보려고 한다.
git add 는 작업 트리에 새로 만든 또는 변경된 파일을 add할 때 사용한다. 즉, rm 명령 등으로 삭제된 파일은 add되지 않는다.
git add -u 는 하나 이전의 스테이지와 비교해서 변경된 부분만 add한다. 즉, 새롭게 만들어진 파일은 add되지 않는다.
git add -A 는 git add 와 git add -u 를 더한 것으로 새로 만든 것, 수정, 삭제 등 모든 변경된 파일을 add 해주게 된다.
$ git add -A
마치며
기억해두면 팀과 함께 개발할 때 유용한 Git 명령 6가지에 대해서 알아보았다. Git이 막연하게 어렵게 느꼈다면 먼저 이 6개의 명령어에 익숙해져보는 것은 어떨까? 손에 익고 나면 훨씬더 친근하게 다가오는 Git을 경험할 수 있을 것이다.