Git 명령어, 저장소 변경 등

1. 주요 개념 및 명령어

branch : 기존 코드에 영향을 주지 않고 독립적으로 작업할 수 있는 가상 공간입니다. A라는 브랜치에서 작업을 진행하며 코드를 수정 및 삭제해도 main 브랜치는 유지되며, 작업 완료 후 main 브랜치에 병합(Merge)할 수 있습니다.
# 현재 브랜치 확인 (* 표시가 현재 위치)
git branch 

# 새로운 브랜치 생성 (생성만 하고 이동하지 않음)
git branch <새로운 브랜치명>

# 해당 브랜치로 이동
git switch <브랜치명>  # 또는 git checkout <브랜치명>

# 새로운 브랜치 생성과 동시에 이동
git switch -c <새로운 브랜치명> 

# 다른 브랜치의 내용을 현재 브랜치로 합침
git merge <브랜치명> 

# 작업이 끝난 브랜치 삭제
git branch -d <브랜치명>

작업 과정 (Workflow)

변경사항(Worktree) 스테이징(Staging) 커밋(Commit) 서버 전송(Push)
# 현재 폴더를 Git 저장소로 초기화 (최초 1회)
git init

# 변경된 파일을 스테이징 영역에 추가
git add .

# 메시지와 함께 변경사항 기록
git commit -m "메시지 내용"

# 원격 저장소(GitHub 등)로 업로드
git push origin <브랜치명>

2. 실무 예시 1: 브랜치 작업 및 병합

1단계: 새로운 기능 개발 준비

# 'test'라는 브랜치를 만들고 바로 이동
git switch -c test

2단계: 파일 수정 및 기록 (커밋)

# 파일 수정 후 스테이징
git add .

# 새로운 브랜치에 기록 남기기
git commit -m "기능 구현 완료"

3단계: 메인 브랜치로 돌아가기

결과를 합치기 위해 원래의 main 브랜치로 이동합니다. (합치기 전까지 main에는 test의 수정 내용이 보이지 않습니다.)

git switch main

4단계: 합치기 (Merge)

test에서 작업한 내용을 main으로 가져옵니다. 이제 main 브랜치에서도 신규 기능이 나타납니다.

git merge test

5단계: 브랜치 삭제 (정리)

git branch -d test
Tip. GitHub 연동 시 :
로컬의 test 브랜치를 서버(origin)에도 올리고 싶다면 push 시 이름을 지정합니다.
git push origin test

3. 실무 예시 2: 최신 코드 동기화

# 1. 서버의 최신 코드 가져오기
git pull

# 2. 코드 수정 및 작업 진행...
# 3. 이후 add -> commit -> push 반복