Git Add
마지막 업데이트
git add는 변경 사항을 스테이징 영역(인덱스)으로 옮겨 다음 커밋에 포함되도록 표시합니다. 파일 하나를 스테이징하거나, git add . 로 한 번에 전부, 또는 -p 로 개별 청크를 대화식으로 선택할 수 있습니다. 스테이징은 파일을 편집한 후 커밋하기 전 사이의 단계입니다.
이것들을 터미널 플레이그라운드에서 사용해 보세요 - 브라우저 안의 진짜 셸이며, 설치할 것이 없습니다.
문법
| Command | What it does |
|---|---|
git add file.txt | 파일 하나 스테이징 |
git add . | 현재 폴더의 모든 변경 사항 스테이징 |
git add -A | 저장소 전체의 모든 변경 사항 스테이징 |
git add -p | 선택한 청크를 대화식으로 스테이징 |
git add *.js | 패턴에 일치하는 파일 스테이징 |
git restore --staged file.txt | 파일 언스테이징(변경 사항은 유지) |
자주 있는 경우
| Goal | Command |
|---|---|
| 전부 스테이징 | git add . |
| 파일의 일부만 스테이징 | git add -p |
| 파일 언스테이징 | git restore --staged file.txt |
| 무엇이 스테이징되었는지 보기 | git status |
git add 자주 묻는 질문
git add는 무엇을 하나요?
변경 사항을 스테이징합니다 - 다음 커밋에 포함되도록 인덱스로 복사합니다. 파일을 편집한다고 스테이징되지는 않으며,
git add <file>을 실행해 준비되었다고 표시합니다. 그 다음 git commit이 스테이징된 내용을 그대로 기록합니다. 스테이징을 통해 일부 변경 사항만 커밋하고 나머지는 나중으로 남길 수 있습니다.git add . 와 git add -A 의 차이는 무엇인가요?
git add .는 현재 디렉터리와 그 하위의 변경 사항을 스테이징하며, 새로 추가·수정·삭제된 파일을 포함합니다. git add -A는 현재 디렉터리와 상관없이 저장소 전체의 변경 사항을 스테이징합니다. 저장소 루트에서는 둘이 동일하게 동작하고, 하위 폴더에 있을 때 차이가 납니다.파일의 일부만 스테이징하려면 어떻게 하나요?
git add -p(패치 모드)를 사용하세요. Git이 각 변경("헝크")을 하나씩 보여 주며 스테이징할지 물으므로, 한 파일 안의 관련 없는 편집을 별도의 커밋으로 나눌 수 있습니다. 헝크를 스테이징하려면 y, 건너뛰려면 n, 더 잘게 나누려면 s를 누르세요.파일을 언스테이징하려면 어떻게 하나요?
git restore --staged <file>(최신 Git) 또는 git reset <file>(구버전)을 실행하세요. 둘 다 작업 트리의 편집 내용은 유지한 채 파일을 스테이징 영역에서 제거합니다 - git add의 반대입니다.이것을 온라인에서 연습할 수 있나요?
네. 터미널 플레이그라운드를 열어 브라우저 안의 진짜 셸에서
git add를 실행하세요 - 설치할 것이 없습니다. Coddy의 무료 대화형 Git 강좌에서도 스테이징과 커밋을 단계별로 다룹니다.