🔥딱 8일간! 인프런x토스x허먼밀러 역대급 혜택

깃 배운내용

# Git 기본 개념 및 명령어 정리

## Git 사용 목적

1. 파일 및 폴더 변경 사항 관리

2. 팀 개발 협업 관리

## Git vs GitHub

- Git: 로컬에서 파일 변경 사항들을 관리하는 도구

- 도구 종류: Git CLI 명령어, TortoiseGit, SourceTree

- GitHub: 로컬에서 만든 파일을 원격지에서 관리할 수 있도록 지원하는 사이트

## OS 시스템 명령어

| 명령어 | 설명 |

|--------|------|

| cd 폴더명 | 현재 폴더 위치 변경 |

| dir | 현재 폴더의 파일 및 폴더 조회 |

## Git 기본 용어

- Branch: Git의 작업영역(work area)

- Master: Git의 기본 브랜치 이름

- Commit: 현재 작업한 내용들을 Git에 저장하는 완료 기능

- HEAD: 현재 작업 브랜치의 위치

- Remote/Origin: Git의 원격지에 대한 이름

## Git 명령어 상세 정리

### 1. 환경 설정 명령어

```bash

# Git 환경 정보 조회

git config --list

# 사용자 이름 설정

git config --global user.name "사용자이름"

# 사용자 이메일 설정

git config --global user.email "이메일주소"

# 현재 폴더에 Git 초기화

git init

```

### 2. 파일 상태 관리 명령어

```bash

# Git에서 관리하는 파일들의 상태 확인

git status

# 파일을 staged area로 추가

git add 파일명1 파일명2

git add * # 전체 파일

# staged area에서 파일 제거 (unstaged로 이동)

git rm --cached 파일명

# staged area의 파일들을 commit

git commit -m "커밋 메시지"

```

### 3. 히스토리 조회 명령어

```bash

# 커밋 히스토리 조회

git log

# 커밋 내용까지 자세히 조회

git log -p

# 변경 사항 비교

git diff

```

### 4. 커밋 수정 명령어

```bash

# 마지막 커밋 메시지 변경

git commit --amend -m "새로운 메시지"

# 최근 3개 커밋 수정 (대화형)

git rebase -i HEAD~3

```

### 5. 버전 되돌리기 명령어

```bash

# 마지막 커밋을 스테이징 전 상태로 되돌리기

git reset HEAD^

# 마지막 커밋 1개 삭제 + 변경된 파일도 함께 되돌림

git reset --hard HEAD^

# 마지막 커밋 2개 삭제 + 변경된 파일도 함께 되돌림

git reset --hard HEAD^^

# 마지막 커밋 내용 완전 삭제

git update-ref -d HEAD

```

### 6. 원격 저장소 관리 명령어

```bash

# 원격 저장소 연결 (최초 1회)

git remote add origin 원격저장소URL

# 로컬 작업 내용을 원격 저장소에 업로드

git push

# 원격 저장소의 모든 내용을 로컬로 복제

git clone 원격저장소URL

# 원격 저장소의 최신 변경사항을 가져와서 병합

git pull

# 원격 저장소의 변경사항만 가져오기 (병합하지 않음)

git fetch

# 가져온 변경사항을 현재 브랜치와 병합

git merge

```

## Git 작업 프로세스

### 로컬에서 원격지로 파일 적용하는 과정

1. 파일 생성/수정/삭제

2. git add (파일을 staged area로 추가)

3. git commit (변경사항을 로컬 저장소에 저장)

4. git push (로컬 저장소를 원격 저장소에 업로드)

### 원격지에서 로컬로 파일 적용하는 과정

1. 원격지 연결 (최초 1회만)

2. git pull (원격 저장소의 변경사항을 가져와서 병합)

## Clone 시 추가 고려사항

- git clone 명령어 사용 시 자동으로 원격 저장소가 연결됨

- 복제된 저장소는 이미 Git이 초기화된 상태

- 기본 브랜치로 자동 전환됨

- 원격 저장소의 모든 히스토리를 포함하여 복제됨

## Git 파일 상태 흐름도

```

작업 디렉터리 → [git add] → Staged Area → [git commit] → 로컬 저장소 → [git push] → 원격 저장소

↑ ↓

└─────────────────── [git pull] ←─────────────────────────────┘

```

이러한 Git 명령어들을 숙지하면 효율적인 버전 관리와 팀 협업이 가능합니다.

댓글을 작성해보세요.

채널톡 아이콘