git commit -m “message”
Stage 에서 repository 로 이동시켜 version 관리를 실제로 시작하게 하는 명령어.
즉, 현재 stage의 snapshot을 repository에 기록.
note: snapshot 방식이란?
- 현재 repository에 저장된 최신의 내용(
HEAD가 해당 내용을 가르킴)과 현재 stage의 내용의 차이를 비교하여 - 차이점 만을 저장하는 방식을 가르킴.
- 기존의 VCS와 Git의 차이점 중의 하나.
- 마치 차이점을 사진을 찍듯이 저장한다는 의미로 snapshot방식이라고 부름.
HEAD(일종의 포인터)가 가르키고 있는 commit된 내용(=가장 최신의 repository내용)을 기본으로 삼아 현재의 stage의 내용과 비교하여 차이점을 기록함.
다음 글에 이어지는 예제:2024.05.20 - [utils/git and github] - [Git] git add
Example
git commit -m "add first_file.txt"
-m옵션(=로그를 inline으로 편집하는 option)을 빼고 수행시,
shell에서 EDITOR에 등록된 편집기 SW가 수행되어 해당 commit에 대한 로그를 남기게 됨.commit을 할 경우, 각각의 commit을 구별할 수 있는 메시지가 필요함.- 이를 commit message라고 하며, 일종의 해당 commit에 대한 설명서임.
- GIT에서는 반드시 commit 메시지를 작성해야함.
- 사실
--allow-empty-message사용할 경우, commit message가 없는 commit 생성가능.
git config --global core.editor명령으로 어떤 editor sw를 사용할지 선택 가능함.
아래 그림과 같은 출력이 나옴.

- 여기서는 최초로 git commit을 수행한 경우로, "유저가 누구인지를 입력하라는 메시지"를 볼 수 있음.
- 이 경우 시키는 대로 유저 정보를 git에 설정하고나서 commit 을 수행하면 됨.
https://dsaint31.tistory.com/722
Git: 사용자와 이메일 정보 설정 및 확인하기-git config
시작하기기본적으로 git 에서 명령어를 실행은 다음과 같음.git 명령어 -옵션(or --옵션) 인자git 에서 모든 설정은 사용자에게 global하게 적용되는 것은 .gitconfig 에 저장되고, 프로젝트 저장소(reposit
dsaint31.tistory.com
정상적으로 모든 untracked files가 add 와 commit 을 거쳐 version 관리 상태 가 되면
git status수행시 다음과 같이 nothing to commit, working tree clean 메시지를 볼 수 있음.

특정 파일 버전관리에 추가방법: add, commit
즉, 다음과 같은 과정이 일반적으로 특정 파일의 버전관리에 반복됨.
- working tree에서 파일 수정을 하고나서
git add를 통해 stage로 보내고,- 로그와 함께 repository에서 version 관리에 등록 하기 위해
git commit -m “message”를 이용함.
add+commit : stage 상태로 올리면서 commit 동시에 수행하기.
git commit -am 명령어를 수행시 한번에 처리가 가능함.
- 현재의 tracked 상태의 모든 파일들에 대한 변경사항을 stage로 올리고나서 commit 을 수행.
- 즉, 새로운 파일을 작성한 경우는 untracked 상태이기 때문에
-a옵션을 사용한 동시 처리는 안됨.
같이 보면 좋은 자료들
2024.05.20 - [utils/git and github] - [Git] Git Summary (작성중)
[Git] Git Summary (작성중)
git이란2024.05.20 - [utils/git and github] - Git : 소개 git 설치 후 해줘야 하는 작업들[Git] git 설치 후 우선 해줘야 하는 작업들 (tistory.com)local repository 초기화2024.05.20 - [utils/git and github] - [Git] init : local repo
ds31x.tistory.com
'utils > git and github' 카테고리의 다른 글
| [Git] Git Summary (작성중) (0) | 2024.05.20 |
|---|---|
| git commit —amend (0) | 2024.05.20 |
| git add (0) | 2024.05.20 |
| git status (0) | 2024.05.20 |
| git init : local repository 생성. (0) | 2024.05.20 |