기본 개념
저장소
Repository
engineerdoge/math-ai-tools뜻
Git이 변경 이력을 추적하는 프로젝트 폴더이며, 보통 GitHub에도 같은 저장소가 있습니다.
어떻게 쓰이나
프로젝트 분석, 커밋, 브랜치 비교를 요청할 때 작업 단위가 되는 대상입니다.
예시
engineerdoge/math-ai-tools요청 예시
현재 저장소 상태를 확인해줘.
프로그래밍
저장소, 브랜치, 커밋, pull/push, PR, merge, 충돌, reset, stash처럼 GitHub 작업 중 자주 만나는 용어를 정리한 검색형 참고 자료입니다.
33 개 항목
기본 개념
Repository
engineerdoge/math-ai-toolsGit이 변경 이력을 추적하는 프로젝트 폴더이며, 보통 GitHub에도 같은 저장소가 있습니다.
프로젝트 분석, 커밋, 브랜치 비교를 요청할 때 작업 단위가 되는 대상입니다.
engineerdoge/math-ai-tools현재 저장소 상태를 확인해줘.
기본 개념
Working tree
git status내 컴퓨터에 펼쳐져 있는 현재 파일 상태이며, 아직 커밋하지 않은 수정도 포함합니다.
이미 기록된 커밋과 지금 수정 중인 내용을 구분할 때 사용합니다.
git status작업 트리에서 무엇이 변경됐는지 보여줘.
기본 개념
Staging area
git add src/components/SiteHeader.tsx다음 커밋에 포함할 변경사항을 임시로 골라두는 영역입니다.
서로 관련 있는 파일이나 일부 변경만 묶어서 커밋할 수 있게 해줍니다.
스테이징만으로 이력이 저장되지는 않습니다. 실제 기록은 커밋에서 만들어집니다.
git add src/components/SiteHeader.tsxGit 용어 페이지 관련 파일만 스테이징해줘.
기본 개념
Commit
git commit -m "Add Git terms reference"선택한 변경사항을 저장소 이력에 저장한 기록입니다.
나중에 변경을 검토, 비교, 배포, 되돌리기 할 수 있게 해줍니다.
git commit -m "Add Git terms reference"간단한 메시지로 커밋을 만들어줘.
기본 개념
Diff
git diff두 파일 상태 사이에서 어떤 줄이 바뀌었는지 보여주는 비교 결과입니다.
커밋 전에 정확히 무엇이 바뀌었는지 검토할 때 가장 자주 사용합니다.
git diff예상하지 못한 변경이 있는지 diff를 검토해줘.
브랜치
Branch
qwen3.5다른 작업 흐름과 분리해서 움직일 수 있는 이름 붙은 작업 줄기입니다.
main에 바로 영향을 주지 않고 기능을 따로 개발할 때 사용합니다.
qwen3.5현재 어떤 브랜치를 보고 있는지 알려줘.
브랜치
main branch
main보통 안정 버전이나 배포 기준이 되는 기본 브랜치입니다.
현재 작업 브랜치와 main을 비교해서 어떤 변경이 생겼는지 확인합니다.
main이 브랜치를 main과 비교해줘.
브랜치
checkout
git switch qwen3.5작업 트리를 다른 브랜치나 커밋 상태로 바꾸는 동작입니다.
다른 브랜치를 확인하거나 이어서 작업해야 할 때 사용합니다.
커밋하지 않은 수정이 덮어써질 위험이 있으면 브랜치 이동이 막힐 수 있습니다.
git switch qwen3.5커밋하지 않은 변경을 확인한 뒤 qwen3.5 브랜치로 이동해줘.
브랜치
merge
git merge main한 브랜치의 변경사항을 다른 브랜치에 합치는 작업입니다.
main의 변경을 작업 브랜치에 가져오거나, 작업 브랜치를 main에 합칠 때 사용합니다.
두 브랜치가 같은 줄을 다르게 수정했다면 충돌이 생길 수 있습니다.
git merge mainmain을 이 브랜치에 병합하기 전에 어떤 일이 생길지 설명해줘.
브랜치
rebase
git rebase main현재 브랜치의 커밋들을 다른 기준 커밋 위에 다시 올리는 작업입니다.
기능 브랜치를 합치기 전에 이력을 일직선처럼 정리할 때 사용합니다.
리베이스는 커밋 이력을 다시 쓰므로 공유 브랜치에서는 조심해야 합니다.
git rebase main아직 rebase하지 말고, 먼저 이 브랜치에서 위험한 점을 설명해줘.
동기화
clone
git clone https://github.com/user/project.git원격 저장소를 내 컴퓨터에 복제하는 작업입니다.
기존 GitHub 프로젝트 작업을 시작할 때 보통 가장 먼저 하는 작업입니다.
git clone https://github.com/user/project.git이 저장소를 clone하고 사용 가능한 브랜치를 보여줘.
동기화
remote
origin git@github.com:user/project.git로컬 저장소와 GitHub 같은 외부 저장소를 연결한 이름 있는 접속 정보입니다.
pull과 push가 어디와 통신할지 결정합니다.
origin git@github.com:user/project.git설정된 remote를 보여줘.
동기화
fetch
git fetch origin내 작업 파일은 바꾸지 않고 원격 브랜치 정보를 내려받는 작업입니다.
내 브랜치를 최신 원격 상태와 비교하기 전에 사용합니다.
git fetch originorigin에서 fetch한 뒤 이 브랜치를 main과 비교해줘.
동기화
pull
git pull origin main원격 변경사항을 가져와 현재 브랜치에 적용하는 작업입니다.
다른 곳에서 push된 변경을 내 로컬 브랜치에 반영할 때 사용합니다.
pull은 현재 브랜치를 변경할 수 있고 충돌이 날 수 있습니다.
git pull origin mainpull하기 전에 로컬에 커밋하지 않은 변경이 있는지 확인해줘.
동기화
push
git push origin qwen3.5로컬 커밋을 원격 저장소에 올리는 작업입니다.
내 로컬 커밋을 GitHub 같은 원격 저장소에서 볼 수 있게 합니다.
push는 커밋만 올립니다. 커밋하지 않은 작업 트리 수정은 올라가지 않습니다.
git push origin qwen3.5빌드가 통과한 것을 확인한 뒤 현재 브랜치를 push해줘.
동기화
origin
git push origin qwen3.5clone한 원격 저장소에 보통 붙는 기본 이름입니다.
대부분의 push, pull, fetch 예시에서 원격 이름으로 origin을 사용합니다.
git push origin qwen3.5origin이 원하는 GitHub 저장소를 가리키는지 확인해줘.
검토
Pull Request
Open a PR from qwen3.5 into main브랜치 변경사항을 검토하고 main 같은 대상 브랜치에 합치기 위한 GitHub 페이지입니다.
변경 파일 검토, 자동 검사, 댓글 논의, 안전한 병합을 위해 사용합니다.
Open a PR from qwen3.5 into mainPR 설명에 들어갈 내용을 요약해줘.
검토
Review
Review requested changes코드 변경에서 버그, 회귀, 가독성, 누락된 테스트를 확인하는 작업입니다.
브랜치를 공용 코드에 합치기 전에 문제를 잡는 데 도움이 됩니다.
Review requested changes이 브랜치에서 버그와 빠진 테스트가 있는지 리뷰해줘.
충돌
Merge conflict
CONFLICT (content): Merge conflict in src/app/page.tsx서로 다른 브랜치의 변경사항을 Git이 자동으로 합칠 수 없는 상황입니다.
병합을 계속하려면 어떤 내용이 최종본인지 직접 선택해야 합니다.
한쪽 내용을 무작정 선택하면 안 됩니다. 먼저 의도한 동작을 확인해야 합니다.
CONFLICT (content): Merge conflict in src/app/page.tsx충돌 내용을 설명하고 가장 안전한 해결 방향을 제안해줘.
충돌
Conflict marker
<<<<<<< HEAD충돌한 버전을 보여주기 위해 Git이 파일 안에 넣는 표시 문자열입니다.
어느 부분이 현재 브랜치이고 어느 부분이 들어오는 브랜치인지 보여줍니다.
충돌 표시자는 커밋된 코드에 남아 있으면 안 됩니다.
<<<<<<< HEAD남아 있는 충돌 표시자가 있는지 찾아줘.
충돌
Untracked file
?? src/lib/git-github.ts폴더에는 있지만 아직 Git 추적 대상으로 추가되지 않은 파일입니다.
새 페이지나 컴포넌트는 스테이징 전까지 보통 미추적 파일로 표시됩니다.
?? src/lib/git-github.ts미추적 파일을 나열하고 이번 기능에 속하는 파일을 알려줘.
충돌
Modified file
M src/components/SiteHeader.tsx마지막 커밋 버전과 내용이 달라진 추적 중인 파일입니다.
현재 작업에서 어떤 기존 파일이 수정됐는지 확인하는 데 사용합니다.
M src/components/SiteHeader.tsx이번 작업에서 수정된 파일을 보여줘.
안전 작업
stash
git stash push -m "before branch switch"커밋하지 않은 변경을 잠시 보관해서 작업 트리를 깨끗하게 만드는 기능입니다.
아직 커밋할 준비가 안 됐지만 브랜치를 이동해야 할 때 사용합니다.
stash한 작업은 잊기 쉽습니다. 이름을 명확히 붙이고 의식적으로 다시 적용해야 합니다.
git stash push -m "before branch switch"브랜치를 이동하기 전에 현재 수정을 명확한 메시지로 stash해줘.
안전 작업
reset
git reset --soft HEAD~1브랜치나 스테이징 상태를 다른 커밋 또는 상태로 되돌리는 작업입니다.
soft나 mixed reset은 공유 전 로컬 커밋을 정리할 때 사용할 수 있습니다.
hard reset은 작업을 버릴 수 있습니다. 사용 전에 반드시 설명을 들어야 합니다.
git reset --soft HEAD~1변경을 잃지 않고 마지막 로컬 커밋을 되돌리는 가장 안전한 방법을 설명해줘.
안전 작업
revert
git revert abc1234이전 커밋의 변경을 취소하는 새 커밋을 만드는 작업입니다.
이미 push된 커밋을 처리할 때는 이력을 다시 쓰는 것보다 보통 revert가 안전합니다.
git revert abc1234공유 이력을 다시 쓰지 않고 문제가 있는 커밋을 revert해줘.
안전 작업
force push
git push --force-with-lease origin qwen3.5원격 브랜치 이력을 내 로컬 브랜치 이력으로 덮어쓰는 작업입니다.
개인 작업 브랜치에서 로컬 이력을 다시 쓴 뒤 가끔 사용합니다.
강제 push는 다른 사람의 원격 커밋을 지울 수 있습니다. 먼저 확인하고 force-with-lease를 선호해야 합니다.
git push --force-with-lease origin qwen3.5강제 push하지 말고, force-with-lease가 필요한 상황인지 먼저 설명해줘.
안전 작업
.gitignore
.next/Git이 추적하지 않아야 할 파일이나 폴더를 지정하는 파일입니다.
빌드 결과물, 의존성 폴더, 로컬 환경 파일, 임시 파일을 제외할 때 사용합니다.
.next/빌드 결과물이 제대로 ignore되고 있는지 확인해줘.
명령어
git status
git status --short브랜치, 스테이징된 변경, 수정 파일, 미추적 파일을 보여주는 명령입니다.
수정, 커밋, pull, 브랜치 이동 전에 자주 확인합니다.
git status --shortgit status를 실행하고 중요한 변경만 요약해줘.
명령어
git log
git log --oneline -5커밋 이력을 확인하는 명령입니다.
최근 커밋을 찾거나 작업을 비교하거나 revert할 커밋을 찾을 때 사용합니다.
git log --oneline -5최근 커밋 5개를 간단한 형식으로 보여줘.
명령어
git add
git add src/lib/git-github.ts다음 커밋에 넣을 변경사항을 스테이징하는 명령입니다.
커밋 범위를 좁히고 싶을 때는 파일 경로를 명시해서 사용합니다.
git add src/lib/git-github.ts이번 페이지를 위해 생성한 파일만 git add 해줘.
명령어
git commit
git commit -m "Add Git terms reference"스테이징된 변경사항을 저장소 이력에 기록하는 명령입니다.
무엇을 바꿨고 왜 필요한지 드러나는 메시지를 사용합니다.
git commit -m "Add Git terms reference"스테이징된 변경을 명확한 메시지로 커밋해줘.
명령어
git pull
git pull --ff-only원격 브랜치의 변경으로 현재 브랜치를 업데이트하는 명령입니다.
--ff-only 옵션은 예상치 못한 병합 커밋 생성을 피할 때 유용합니다.
git pull --ff-only안전하다면 ff-only로 pull해줘.
명령어
git push
git push origin HEAD로컬 커밋을 원격 브랜치에 업로드하는 명령입니다.
테스트가 통과하고 커밋을 공유할 준비가 됐을 때 사용합니다.
git push origin HEADlint와 build 실패가 없는지 확인한 뒤 이 브랜치를 push해줘.