Git 사용 단계와 설명
아래는 Git의 주요 명령어를 단계별로 정리하고, 각 명령어가 어떤 작업을 위한 것인지 설명드리겠습니다.
1. Git 초기화 및 원격 저장소 연결
1-1. Git 초기화
git init
- 역할: 현재 디렉토리를 Git 저장소로 초기화합니다.
- 결과: .git 디렉토리가 생성되며, Git이 해당 디렉토리를 버전 관리할 준비가 됩니다.
1-2. 원격 저장소 연결
git remote add origin <원격 저장소 URL>
- 역할: 현재 로컬 저장소를 원격 저장소와 연결합니다.
- 예시:
git remote add origin https://github.com/username/repository.git - 결과: 로컬 저장소와 원격 저장소(origin)가 연결됩니다. 이후 git push 및 git pull로 데이터를 주고받을 수 있습니다.
2. 파일 작업 및 스테이징
2-1. 현재 상태 확인
git status
- 역할: 현재 디렉토리의 변경된 파일 상태를 확인합니다.
- 결과: 수정되었거나 새로 생성된 파일, 추적되지 않은 파일 등이 표시됩니다.
2-2. 파일 스테이징
git add <파일명>
- 역할: 특정 파일을 스테이징 영역에 추가합니다.
- 결과: 해당 파일이 Git 커밋 준비 상태로 전환됩니다.
- 모든 파일 추가:
git add .- 현재 디렉토리의 모든 변경 사항을 스테이징 영역에 추가합니다.
3. 커밋
3-1. 변경 사항 커밋
git commit -m "커밋 메시지"
- 역할: 스테이징된 파일을 커밋(버전 저장)합니다.
- 결과: Git에 버전 기록이 추가됩니다.
- 예시:
git commit -m "Update .gitignore file"
4. 원격 저장소와 데이터 동기화
4-1. 원격 저장소로 푸시
git push origin master
- 역할: 로컬 저장소의 master 브랜치 변경 내용을 원격 저장소의 master 브랜치에 업로드합니다.
- 결과: 원격 저장소에 로컬 변경 사항이 반영됩니다.
4-2. 원격 저장소에서 변경 내용 가져오기
git pull origin master
- 역할: 원격 저장소의 master 브랜치 변경 내용을 로컬 저장소로 가져옵니다.
- 결과: 로컬 저장소와 원격 저장소가 동기화됩니다.
5. 기타 유용한 명령어
5-1. 원격 저장소 확인
git remote -v
- 역할: 원격 저장소의 이름과 URL을 확인합니다.
5-2. 브랜치 확인
git branch
- 역할: 현재 작업 중인 브랜치를 확인합니다.
5-3. 새 브랜치 생성 및 전환
git checkout -b 브랜치이름
- 역할: 새로운 브랜치를 생성하고 전환합니다.
Git 사용 흐름 요약
- 저장소 초기화: git init → 원격 저장소 연결: git remote add origin URL.
- 작업 상태 확인: git status.
- 변경 파일 스테이징: git add 파일명 또는 git add ..
- 변경 내용 커밋: git commit -m "커밋 메시지".
- 변경 사항 원격 저장소로 푸시: git push origin master.
- 다른 사람의 변경 사항 가져오기: git pull origin master.
예시: 한 번의 Git 워크플로우
아래는 프로젝트에서 파일을 추가하고, 변경 사항을 원격 저장소로 푸시하는 전체 흐름입니다:
# 1. Git 초기화 및 원격 저장소 연결 (초기 1회만)
git init
git remote add origin https://github.com/username/repository.git
# 2. 파일 작업 후 상태 확인
git status
# 3. 변경된 파일 스테이징
git add .
# 4. 변경 사항 커밋
git commit -m "Initial commit with basic setup"
# 5. 원격 저장소로 푸시
git push origin master
이 과정을 반복하면서 프로젝트를 관리하면 됩니다.
'GIT' 카테고리의 다른 글
| GIT : 커밋 메시지 수정 방법 (0) | 2025.01.23 |
|---|---|
| GIT: 프로젝트 깃허브에 연동하기 (작업과정) (0) | 2025.01.22 |