Git,깃,Git명령어,Git기초,Merge,Conflict,GitHub,clone,push,버전관리
| Git 기초 – 명령어, Merge, 원격 저장소(GitHub) |

Git의 기초 명령어부터 브랜치 병합(Merge), 원격 저장소(GitHub) 연동까지의 흐름을 정리합니다. 협업(Fork → Pull Request) 흐름은 별도 글에서 다룹니다.
📌 이어지는 글: Git 협업 – Fork와 Pull Request로 이해하기 · 이전 복습: 버전 관리 용어 정리
목차
버전 관리 핵심 용어
| 용어 | 의미 |
| 저장소(Repository) | 변경 이력을 보관하는 공간 |
| 가져오기(Import) | 외부 자료를 저장소로 가져오기 |
| 체크아웃(Checkout) | 저장소의 내용을 작업 공간으로 가져오기 |
| 커밋(Commit) | 수정한 내용을 저장소에 기록(갱신) |
| 브랜치(Branch) | 독립적으로 작업하기 위해 갈라낸 가지 |
기초 명령어
먼저 터미널(우분투/Git Bash)에서 자주 쓰는 기본 명령어입니다.
whoami # 현재 로그인 계정 확인
pwd # 현재 디렉터리 경로 확인
git status # Git 저장소의 현재 상태 확인
git init # 현재 디렉터리를 Git 저장소로 초기화
파일을 만들거나 수정한 뒤, 저장소에 기록하는 흐름은 다음과 같습니다.
# test.html을 새로 만들어 기록
git add test.html
git commit -m "test.html 커밋"
# 파일을 수정한 뒤 다시 기록
git add test.html
git commit -m "test.html 두 번째 수정"
참고로 자주 쓰는 명령은 별칭(alias)으로 지정할 수 있습니다. (예: alias dir="ls -al") 브랜치를 삭제할 때는 git branch -d <브랜치명>을 사용합니다.
브랜치 병합 (Merge)

git merge <브랜치명> # 현재 브랜치에 다른 브랜치를 병합
현재 브랜치로 다른 브랜치의 내용을 가져와 합칩니다. 오류 없이 합쳐지면 좋지만, 같은 부분을 서로 다르게 수정한 경우 충돌(Conflict)이 발생할 수 있습니다.
충돌이 나면 해당 파일을 편집기(vi 등)로 열었을 때 HEAD 부분과 병합 대상 브랜치의 내용이 함께 표시됩니다. 충돌 부분을 직접 정리한 뒤, 다시 add와 commit을 하면 정상적으로 반영됩니다.
git add *
git commit -m "충돌 해결"
# 커밋 그래프 로그 확인
git log --graph --decorate --oneline
충돌을 줄이려면, 평소 master(main) 브랜치의 변경 내용을 자주 가져와 반영하고 커밋해 두는 습관이 도움이 됩니다.
원격 저장소 – GitHub
GitHub는 버전 제어와 협업을 위한 코드 호스팅 플랫폼입니다. 세계 최대 규모의 Git 저장소로, 수많은 개발자가 프로젝트를 진행하며, 많은 오픈소스가 GitHub를 통해 Git 호스팅·이슈 트래킹·코드 리뷰를 수행합니다. (2018년 마이크로소프트에 인수되었습니다.)

원격 저장소를 복제(clone)하거나, 로컬 저장소를 원격에 연결해 push하는 명령은 다음과 같습니다.
git clone [주소] # 원격 저장소 복제 (clone 시 자동으로 git 관리 설정됨)
git remote add origin [주소] # 원격 저장소를 'origin'이라는 별칭으로 연결
git push -u origin master # 로컬 커밋을 원격 저장소로 반영
여기서 origin은 원격 저장소를 가리키는 별칭(alias)으로, 다른 이름으로 지정할 수도 있습니다. 이후 git push로 커밋을 원격 저장소에 올릴 수 있습니다.
정리
이번 글에서는 Git에서 커밋하는 개념과, GitHub에 프로젝트 파일을 올리는(push) 기초 흐름을 살펴봤습니다. 명령어는 처음에는 낯설지만, 직접 쳐 보며 익히는 것이 가장 빠릅니다. 협업 흐름이 궁금하다면 Fork와 Pull Request 글로 이어서 보시길 권합니다.
[이미지 출처: 도라가이드]