□ git init
git init 명령어는 현재 디렉토리를 Git 저장소로 만드는 명령어입니다. 이 명령어를 실행하면 현재 디렉토리 안에 .git이라는 숨겨진 폴더가 생성됩니다. 이 폴더는 Git 저장소의 모든 정보(커밋 기록, 브랜치 정보 등)를 담고 있습니다.
□ git add
git add 명령어는 변경된 파일이나 새로 생성된 파일을 Git의 Staging Area에 추가하는 명령어입니다. Staging Area는 커밋(commit)에 포함될 변경 사항들을 모아두는 곳입니다.
git add [파일명]
- 명령어를 입력하고 Enter 키를 누릅니다.
▷git add 명령어 옵션
- git add .: 현재 폴더의 모든 변경된 파일과 새로 생성된 파일을 Staging Area에 추가합니다.
- git add -u: 수정된 파일만 Staging Area에 추가합니다. 새로 생성된 파일은 추가되지 않습니다.
- git add -A: 모든 변경된 파일과 새로 생성된 파일을 Staging Area에 추가합니다.
(git add . 와 유사하지만, 삭제된 파일도 Staging Area에 반영합니다.)
▷ 주의 사항
- git add 명령어를 성공적으로 실행하면 Staging Area에 파일이 추가됩니다. Staging Area에 추가된 파일은 git status 명령어를 통해 확인할 수 있습니다.
- git add 명령어는 파일을 Staging Area에 추가하는 것일 뿐, 실제로 저장소에 저장하는 것은 아닙니다. 저장소에 파일을 저장하려면 git commit 명령어를 사용해야 합니다.
- .gitignore 폴더는 git add 명령어를 사용해도 영향이 없습니다. git 명령을 사용할 수 없는 공간 입니다
□ git commit
git commit 명령어는 Staging Area에 있는 변경 사항들을 Git 저장소에 기록하는 명령어입니다. 커밋은 Git에서 변경 이력을 관리하는 기본적인 단위이며, "스냅샷"이라고 생각할 수 있습니다. 즉, 특정 시점의 파일 상태를 저장하는 것입니다.
git commit -m "커밋 메시지"
- 명령어를 입력하고 Enter 키를 누릅니다.
▷ git commit 명령어 옵션
- -m "커밋 메시지": 커밋 메시지를 한 줄로 작성합니다.
- -a: Staging Area에 추가하지 않은 변경 사항까지 모두 커밋합니다.
- -v: 커밋 내용의 diff를 함께 보여줍니다.
▷ 주의 사항
- git commit 명령어는 Staging Area에 있는 파일들만 커밋합니다. 따라서, 변경된 파일을 커밋하기 전에 git add 명령어를 사용하여 Staging Area에 추가해야 합니다.
- 커밋(commit) 메시지는 간결하고 명확하게 작성하는 것이 좋습니다.
- 커밋 (commit)을 너무 자주 하는 것보다 의미 있는 변경 단위로 커밋하는 것이 좋습니다.
□ git checkout
git checkout 명령어는 Git에서 시간 여행을 하는 것과 비슷합니다. git checkout 명령어는 Git에서 브랜치(branch)를 전환하거나 특정 커밋(commit)의 상태로 되돌리는 데 사용되는 명령어입니다.
1. 브랜치 전환 (다른 시간대로 이동하기)
브랜치는 Git에서 여러 개의 작업 공간을 만드는 겁니다. 예를 들어, "master" 브랜치는 현재 진행 중인 프로젝트를 위한 공간이고, "feature/login" 브랜치는 새로운 로그인 기능을 개발하기 위한 공간일 수 있습니다.
git checkout [브랜치명]
- 지정된 브랜치로 전환합니다.
git checkout [브랜치명] 명령어를 사용하면 다른 브랜치로 이동할 수 있습니다. 마치 다른 시간대의 작업 공간으로 이동하는 것과 같습
2. commit 되돌리기 (특정 시점으로 되돌아가기)
커밋(commit)은 Git에서 특정 시점의 파일 상태를 저장하는 거예요. 마치 사진을 찍어 보관하는 것과 같습니다.
git checkout [커밋 해시] 명령어를 사용하면 특정 커밋 시점으로 되돌아갈 수 있습니다. 마치 과거의 사진을 보는 것처럼, 특정 시점의 파일 상태를 확인할 수 있습니다.니다.
커밋 해시, 어떻게 생겼나요?
1. 커밋 해시는 40자리의 16진수 문자열로 이루어져 있습니다. 예를 들어, a1b2c3d4... 와 같이 생겼습니다.
2. 이 문자열은 SHA-1이라는 암호화 알고리즘을 통해 생성됩니다.
3. 각 커밋의 내용 (파일의 변경 사항, 커밋 메시지 등)을 바탕으로 생성되기 때문에,
내용이 조금이라도 바뀌면 해시 값도 완전히 달라집니다.
git log 명령어를 사용하면 커밋 목록과 함께 각 커밋의 해시 값을 확인할 수 있습니다.
커밋 해시, 왜 중요할까요?
1. 버전 관리: 커밋 해시를 통해 모든 커밋을 추적하고, 특정 시점으로 되돌아갈 수 있습니다.
2. 협업: 다른 개발자와 동일한 커밋을 공유하고, 변경 사항을 추적할 수 있습니다.
3. 안전성: 커밋 해시는 데이터의 무결성을 보장합니다.
즉, 커밋 내용이 변경되면 해시 값도 달라지기 때문에, 데이터가 손상되었는지 여부를 확인할 수 있습니다
3. 파일 되돌리기
1) git checkout [파일명] 명령어를 사용하면 특정 파일을 마지막 커밋 상태로 되돌릴 수 있습니다. 마치 잘못 작성한 문서를 원래대로 되돌리는 것과 같습니다.
2) git checkout . : 모든 파일의 변경 사항을 되돌리고, 마지막 커밋 상태로 되돌립니다.
▷ git checkout 명령어 옵션
- -b [브랜치명] : 새로운 브랜치를 생성하고, 해당 브랜치로 전환합니다.
- -f 또는 --force : 강제로 브랜치를 전환합니다. (일반적으로 변경 사항이 있는 경우 브랜치 전환이 불가능합니다.)
▷git checkout 명령어 사용되는 이유
- 여러 작업을 동시에 진행할 수 있습니다. (브랜치)
- 과거의 특정 시점으로 돌아가 작업 내용을 확인하거나 복구할 수 있습니다. (커밋)
- 잘못된 수정을 되돌릴 수 있습니다. (파일)
▷ git checkout 명령어 사용 시 주의사항
- 커밋하지 않은 변경 사항은 덮어쓰여질 수 있으니 주의해야 합니다.
- 다른 브랜치로 전환하면 해당 브랜치에서 작업해야 합니다.
참고 동영상

'업무 자동화 > JavaScript For Creo' 카테고리의 다른 글
| 깃-허브 학습] 깃(Git)을 배워봅시다 #4 (0) | 2025.03.01 |
|---|---|
| 깃-허브 학습] 깃(Git)을 배워봅시다 #3 (0) | 2025.02.28 |
| 깃-허브 학습] repository 만들기 - 작업중 (0) | 2025.02.25 |
| 깃-허브 학습]깃-허브란? (0) | 2025.02.24 |
| 학습] 선택된 폴더에 포함된 파일 이름 모두 가져오는 html 파일 (0) | 2025.02.24 |