Git을 사용하려면 PC나 서버 환경에 Git이 설치되어 있어야 합니다.
또한, GitHub를 사용할 예정이므로 GitHub 계정이 필요하며, Git Bash를 사용한다는 가정하에 진행합니다.
Git 공식 사이트: https://git-scm.com/
git --version
정상적으로 설치되었다면 Git 버전 정보가 표시됩니다.
Git을 설치하면 기본적으로 홈 디렉토리에 ~/.gitconfig 파일이 생성되며, 이 파일에 전역(Global) 설정이 저장됩니다.
각 프로젝트 폴더에는 .git/config 파일이 존재하며, 이 파일을 통해 저장소(Local) 설정을 관리할 수 있습니다.
로컬 설정은 전역 설정을 덮어쓸 수 있습니다.
Git은 각 커밋에 작성자 정보를 기록하기 때문에 올바른 사용자 정보 설정이 필수적입니다.
모든 프로젝트에 동일한 사용자 정보를 적용하려면 다음 명령어를 사용합니다.
git config --global user.name "홍길동"
git config --global user.email "gildong@example.com"
프로젝트마다 다른 사용자 정보를 설정하고 싶다면 --global 옵션을 제거한 후 해당 프로젝트 폴더에서 설정하면 됩니다.
설정된 정보를 확인하려면 다음 명령어를 실행합니다.
git config --list
이 명령어를 실행하면 user.name과 user.email이 원하는 값으로 설정되었는지 확인할 수 있습니다.
Git을 사용하려면 프로젝트 폴더에서 Git 저장소를 초기화해야 합니다.
mkdir my-git-project
cd my-git-project
git init
mkdir my-git-project: 새로운 프로젝트 폴더 생성 cd my-git-project: 해당 폴더로 이동 git init: .git 디렉토리가 생성되며, 해당 폴더가 Git 로컬 저장소로 등록됨 프로젝트에 대한 설명을 담은 README.md 파일을 생성하고 내용을 작성합니다.
echo "# My Git Project" > README.md
echo "이 저장소는 Git 명령어 실습을 위한 예제 프로젝트입니다." >> README.md
이제 README.md 파일이 생성되었으며, Git에서 아직 추적하지 않는 언트래킹 상태입니다.
git add)Git에 파일을 추가하려면 git add 명령어를 사용하여 스테이징 영역에 올려야 합니다.
git add README.md
git add <파일명> git add .git restore)Git에서 변경 사항을 취소하는 방법은 두 가지입니다.
git add를 하지 않은 경우, 파일을 원래 상태로 되돌립니다.git restore 파일명
git add를 실행한 경우, 스테이징을 해제하려면 --staged 옵션을 추가해야 합니다.git restore --staged 파일명
정리
git restore 파일명 → git add 하기 전에 변경 사항 되돌리기 git restore --staged 파일명 → git add 했지만 커밋 전 변경 사항 되돌리기 git status)현재 Git 저장소의 상태를 확인하려면 다음 명령어를 실행합니다.
git status
이 명령어를 실행하면 새로 생성된 파일, 수정된 파일, 스테이징된 파일 등을 확인할 수 있습니다.
git log)지금까지의 커밋 기록을 확인하려면 다음 명령어를 실행합니다.
git log
git log --oneline: 커밋 해시와 메시지만 간략히 표시 git log --graph: 브랜치 구조를 시각화 git diff)파일의 변경 내용을 확인하고 싶다면 git diff 명령어를 사용합니다.
git diff # 워킹 디렉토리 vs. 스테이징 영역
git diff --staged # 스테이징 영역 vs. 마지막 커밋
변경된 줄 앞에 +(추가), -(삭제) 표시가 나타납니다.
git commit)스테이징 영역에 있는 변경 사항을 커밋하려면 다음 명령어를 실행합니다.
git commit -m "Add README.md as initial project description"
커밋이 생성된 후 git log로 확인하면 해당 커밋이 추가된 것을 볼 수 있습니다.
파일을 수정한 뒤 다시 add 및 commit을 실행하는 방법을 보겠습니다.
echo "현재 버전: v0.1" >> README.md
git add README.md
git commit -m "Update project version in README"
이제 git log --oneline으로 확인하면, 기존 커밋 뒤에 새로운 커밋이 추가된 것을 볼 수 있습니다.
git reset)최신 커밋에 문제가 있어 이전 버전으로 되돌리고 싶다면 git reset 명령어를 사용할 수 있습니다.
.gitignore 파일 활용Git에서 빌드 결과물, 임시 파일, 민감한 정보 등을 관리 대상에서 제외하려면 .gitignore 파일을 사용합니다.
.gitignore 파일 생성프로젝트 루트 폴더(예: my-git-project)에 .gitignore 파일을 생성합니다.
# 빌드 결과물 무시
/build
# 운영체제별 임시 파일 무시
*.log
*.tmp
# 민감 정보 파일 무시
.env
secret.key
.gitignore에 추가된 파일들은 git add .을 실행해도 자동으로 무시됩니다.
이미 추적 중이던 파일을 .gitignore에 추가했을 경우, 다음 명령어를 실행해야 합니다.
git rm --cached <파일명>
Git 환경 설정
git --version: Git이 설치되어 있는지 확인 git config --global user.name "이름" / git config --global user.email "이메일": 사용자 정보 설정 Git 저장소 초기화 및 파일 관리
git init: Git 저장소 초기화 git add 파일명: 파일을 스테이징 영역에 추가 git commit -m "커밋 메시지": 변경 사항을 커밋 Git 상태 확인 및 기록 관리
git status: 저장소 상태 확인 git log: 커밋 이력 확인 git diff: 변경 사항 비교 Git에서 변경 사항 되돌리기
git restore 파일명: 워킹 디렉토리 변경 사항 취소 git restore --staged 파일명: 스테이징 해제 git reset --hard <커밋 해시>: 특정 커밋으로 되돌리기 .gitignore 활용
git rm --cached 파일명으로 기존에 추적 중이던 파일 제거