안녕하세요! 오늘은 개발자의 필수 도구, Git에 대해 쉽게 설명해드릴게요.
Git이 뭔가요? 🤔
타임머신을 상상해보세요!
- 과거의 어느 시점으로든 돌아갈 수 있고
- 평행우주처럼 다른 버전도 만들 수 있고
- 친구들과 협업도 가능한
Git은 바로 코드를 위한 타임머신입니다!
핵심 개념 📚
1. Repository (저장소)
# 새로운 Git 저장소 만들기
git init
- 여러분의 프로젝트를 담는 특별한 공간
- 마치 타임머신의 본체같은 것!
2. Commit (커밋)
# 변경사항 스테이징
git add .
# 커밋하기
git commit -m "로그인 기능 추가"
- 코드의 스냅샷을 찍는 것
- 마치 게임의 세이브 포인트처럼!
3. Branch (브랜치)
# 새 브랜치 만들기
git branch feature/login
# 브랜치 이동
git checkout feature/login
- 평행우주를 만드는 것
- 메인 코드는 그대로 두고 새로운 실험 가능!
실제 작업 흐름 💫
- 작업 시작하기
# 원격 저장소에서 프로젝트 가져오기 git clone https://github.com/username/project.git
새 브랜치 만들고 이동
git checkout -b feature/new-feature
2. **변경사항 저장하기**
```bash
# 변경된 파일 확인
git status
# 변경사항 스테이징
git add index.html
# 커밋하기
git commit -m "헤더 디자인 변경"
- 변경사항 공유하기
# 원격 저장소에 푸시 git push origin feature/new-feature
자주 쓰는 명령어 모음 🛠️
기본 명령어
git init # 저장소 초기화
git clone [url] # 원격 저장소 복제
git add [file] # 파일 스테이징
git commit -m # 커밋하기
git push # 원격 저장소에 업로드
git pull # 원격 저장소에서 받기
브랜치 관련
git branch # 브랜치 목록 보기
git checkout [branch] # 브랜치 전환
git merge [branch] # 브랜치 병합
git branch -d [branch] # 브랜치 삭제
실무에서 이렇게 써요! 💼
1. 기능 개발 시나리오
# 1. 새 기능 개발 시작
git checkout -b feature/login
# 2. 코드 작성 후 커밋
git add .
git commit -m "로그인 폼 추가"
# 3. 메인 브랜치에 병합
git checkout main
git merge feature/login
2. 버그 수정 시나리오
# 1. 긴급 수정 브랜치 생성
git checkout -b hotfix/login-error
# 2. 버그 수정 후 커밋
git commit -m "로그인 오류 수정"
# 3. 메인에 바로 병합
git checkout main
git merge hotfix/login-error
주의할 점 ⚠️
커밋 메시지는 상세하게
- "수정함" (❌)
- "로그인 실패 시 에러 메시지 표시 추가" (⭕)
자주 커밋하기
- 작은 단위로 자주 커밋하면 문제 추적이 쉬워요
- 하루 작업을 한 번에 커밋하지 마세요
.gitignore 활용하기
```.gitignore 예시
node_modules/
.env
*.log
## 유용한 Git 설정 팁 🔧
### 1. 글로벌 설정
```bash
git config --global user.name "Your Name"
git config --global user.email "your@email.com"
2. 별칭(alias) 설정
git config --global alias.co checkout
git config --global alias.br branch
git config --global alias.st status
마치며 🎁
Git은 마법 같은 도구입니다! 처음에는 어려워 보일 수 있지만, 기본 개념만 이해하면 정말 편리하게 사용할 수 있어요. 이 글이 여러분의 Git 여행에 도움이 되길 바랍니다!
References:
- Git 공식 문서: https://git-scm.com/doc
- Pro Git Book: https://git-scm.com/book/ko/v2
- GitHub Guides: https://guides.github.com
728x90
'100===Dev Ops > Git' 카테고리의 다른 글
Gitlab Introduced (0) | 2024.06.11 |
---|---|
How do you sync your local repository with a remote one with git? (0) | 2024.06.09 |
Git Introduced (0) | 2024.05.26 |