모든 Git 포스팅은 Git 기본 개념 포스팅에 의존합니다. Git을 설치하고 작업 디렉토리, 스테이지, 저장소 개념을 잘 숙지하고 있다면 이 포스팅을 읽어나가는데 전혀 무리가 없습니다. 그러나 Git의 3가지 공간(작업 디렉토리, 스테이지, 저장소) 개념을 숙지하지 못했다면 선수 포스팅(여기)을 먼저 읽고 이 포스팅을 읽기 바랍니다.
git add
작업 디렉토리에서 스테이지로 변경사항들을 올리는 것을 "스테이지에 추가(add)한다"라고 합니다. 이렇게 스테이지에 파일을 추가하는 명령어는 바로 "git add"입니다.
git add
git add <파일 이름> 형식으로 파일을 스테이징할 수 있습니다. 예시로 a.txt라는 파일을 스테이지에 올리고 싶다면 git add a.txt 라고 입력하면 됩니다. git add 명령어를 입력하고 git status로 파일 상태를 확인하면 스테이지에 올라간 a.txt 파일의 모습을 볼 수 있습니다
그런데, 만약 스테이지에 올리고 싶은 파일이 하나가 아니라 여러 개라면 어떻게 해야할까요 마찬가지로 스테이징하고자 하는 파일을 여러 개 적으면 됩니다.
git add 파일1 파일2 파일3
이 과정은 귀찮기도 하고 번거롭기에 모든 변경 내용을 스테이지에 올리고자 한다면 다음 git add . 명령어를 많이 사용합니다.
git add .
참고로 스테이징된 파일을 다시 취소하고 싶다면 git restore 명령어를 사용하면 됩니다. 이 명령어는 추후에 더 깊이 다루도록 하겠습니다.
git restore --staged
git commit
스테이지에 올라간 파일들을 저장소에 새로운 버전으로 만드는 것을 "커밋(commit)한다"라고 합니다. 스테이지에 올라간 파일들을 커밋하는 명령어는 "git commit -m"입니다. 이때 뒤에 붙는 -m과 함께 "커밋 메세지"를 작성해야 합니다. 커밋 메세지를 작성할 때는 반드시 따옴표로 감싸서 작성해야 합니다. (-m은 --message와 동일합니다.)
git commit -m "Commit Message"
그리고 git add와 git commit을 동시에 할 수 있는 명령어도 있습니다. 즉, 스테이징 작업과 커밋을 동시에 할 수 있는 명령어입니다. 바로 "git commit -am" 명령어를 사용하면 됩니다. (-am은 --all --message와 동일합니다.) 다만 이 명령어는 tracked 파일에만 사용가능합니다. untracked 파일에는 이 명령어를 사용할 수 없습니다.
git commit -am "Commit Message"
"git commit -m"은 커밋 메세지의 제목만 적는 것입니다. 만약 커밋 메세지에 제목 뿐만 아니라 자세하게 본문도 적고 싶다면 "git commit"을 사용하면 됩니다. git commit 명령어를 입력하면 vim 에디터가 뜨고 거기에 커밋 메세지를 자세히 적으면 됩니다.
git commit
Vim 에디터에서 편집을 시작할 때 a나 i를 입력하여 입력(쓰기) 모드로 전환하고, 내용을 입력합니다. 그리고 작성을 마치면 Esc를 눌러 명령 모드로 전환 후 세미콜론(:)과 w(저장), q(종료)를 같이 입력하여(:wq) vim 에디터를 빠져나오면 됩니다.