[git] git add 명령어

 

 

 

 

 

 

 

 

git 기본 개념에 대해서 예전에 써둔 글이 있습니다. git init 포스팅을 보고 오셨다면, git 기본 개념 포스팅도 보고 오시는 것을 추천드립니다. 

 

 

[git] git 기본 개념

git은 정말 많이 사용되는 버전 관리 시스템입니다. 지옥에서 온 관리자라고 불릴 만큼 매우 어렵습니다. 하지만 천천히 접근을 하게 된다면 어느 정도 적응이 되고 활용할 수 있습니다. git 정의

77monkey.tistory.com


 

git add 명령어는 가장 기본적인 git 명령어 중에 하나라고 할 수 있습니다. 지금까지 git init 명령어 하나 배웠는데, git add에 대해서도 알아보도록 합시다.

 

git add 명령어

기본적으로 파일을  수정하거나 새로 생성하거나 삭제하고 repository에 저장하지 않으면 해당 수정사항은 반영이 되지 않게 됩니다. 이 의미는 집에서 코드를 수정했는데, 해당 내용을 학교나 직장에서 보고 싶어도 볼 수 없다는 이야기입니다. 그러면 어떻게 해야 repository에 저장할 수 있을까요? 바로 stage area를 거쳐서 repository에 저장해야 볼 수 있습니다.

git work area
git work area

그럼 현재 작업하고 있는 work  tree에서 stage area로 가려면 어떻게 해야 할까요? 네, 맞습니다. 바로 git add 명령어를 통해서 work area를 변경할 수 있습니다. area 이야기를 하다 보니, 엄청 어려운 느낌도 들게 되는데, git add 명령어는 기본적인 파일 추가/변경/삭제 등을 통해서 work tree에서 stage area로 추가해 줍니다.

 

git add 명령어 옵션

git add <파일명>

제가 가장 많이 쓰는 git add 명령어입니다. 아무래도 많은 파일을 수정하기보다는 일부 파일만 수정하기 때문에 해당 파일만 stage area로 추가하기 위해서 사용합니다. 

$ git add 77monkey.c

 

이렇게 git add 명령어를 쓰게 되면, 77monkey.c 파일이 stage area에 있습니다. 

 

git add .

그다음에 제가 많이 쓰이는 git add 명령어입니다. git add <파일명>으로 하나씩 해도 되지만, 해당 경로에 수정한 파일이 많으면 파일명을 다 작성하지 않고 위 명령어를 사용하게 됩니다. 그러면 현재 명령어를 입력하는 경로에 있는 파일들을 다 포함하게 됩니다.

$ git add .

 

git add -A

여러 경로에서 파일을 수정했다면 이 명령어가 유용할 것입니다. 해당 옵션을 주게 되면 git init 명령어로 생성된 repository의 모든 변경된 파일을 stage area에 추가하게 됩니다.

$ git add -A

 

git add -u

여러 경로에서 파일을 수정을 하고 빌드가 잘 되었는지 확인을 하면 실행파일  또는 부수적인 파일들이 생성되게 됩니다. 이때 사용하면 좋은 git add 명령어가 바로 git add -u입니다. 이렇게 사용하게 되면 수정한 코드에만 반영이 되고, 빌드와 같이 부수적으로 생성된 파일들은 stage area에 추가되지 않습니다. 

$ git add -u

 

마무리

git add 명령어에 대해서 알고는 있지만 git add 옵션에 대해서 이렇게까지 아시는 분들은 드물 것이라고 생각됩니다. 보통 git add <파일명>을 활용하시거나 git add .까지 사용하시는 것을 볼 수 있습니다. -A 옵션, -u 옵션도 익히셔서 git을 사용하실 때 좀 더 수월하게 작업하시면 좋을 것 같습니다.