Atomic Commits
작업들을 그룹화하여 단일 작업으로 커밋한다.
- Atomic : 더 이상 줄일 수 없는 기본 단위로 큰 시스템을 구성하는 단일 요소
- 커밋은 단일 기능이나 단일 변화, 수정을 포함해야 한다(=각각의 커밋은 한 가지에 집중해야 한다)
- 각 커밋을 한 가지에 집중할 수 있도록 최대한 원자성을 유지하는 것이 중요하다
- 파일 하나가 아닌 작업하고 있는 하나의 기능, 하나의 작업을 의미한다.
- 여러 작업을 수정했을 경우
git add .
명령을 사용하면 단일 작업이 아닌 변경된 모든 사항이 스테이지에 올라간다.
git add 파일명
또는 git add -p
명령어를 사용하여 단일 작업을 스테이지에 올린 뒤 커밋한다.
- 나는 주로
git add -p
를 통하여 변경사항을 확인한 기능별로 분류한 다음 커밋한다.
단일 목적을 유지해야 하는 이유
- 한 커밋에 모든 변경사항들을 통합했을 경우 커밋을 롤백하면 엄청나게 많은 작업들을 취소해야 할 수도 있다.
- 하지만 커밋을 원자적으로 단일 목적으로 유지했다면 누군가 작업 중 하나를 실행취소해도 다른 작업들은 모두 유지할 수 있다.
- 코드를 컴토할 때 검토하기 쉽게 해준다.
git add patch
[Git] Git Add Patch
참고
【한글자막】 Git & Github 실무 활용 완벽 가이드