Git 튜토리얼 · 4 min read · Feb 14, 2026
고급 Git 튜토리얼

이 기사는 리눅스에서 GIT 시작하기라는 기존 기사에 이어지는 내용입니다. Git이 처음이라면, 먼저 이전 기사를 읽고 이 기사를 계속 진행하는 것을 추천합니다.
이 기사에서는 브랜치 생성, 태그, 브랜치 이름 변경 및 Git에서 커밋 되돌리기를 다룰 것입니다.
- 브랜치: 브랜칭은 메인 브랜치에서 혼란을 피하기 위해 새로운 개발 라인을 생성하는 데 도움이 됩니다.
- 태그: Git에서 태그는 Git 기록에 대한 참조입니다.
- 브랜치 이름 변경: 브랜치 이름 변경은 기존 브랜치의 이름을 변경하고 기존 코드를 새 이름의 브랜치에 두는 것을 의미합니다.
- 커밋 되돌리기: 되돌리기는 로컬 및 원격 저장소에서 변경 사항을 취소하는 데 도움이 됩니다.
전제 조건
- Git에 대한 기본 이해 (Git의 기본을 배우려면 여기를 클릭하세요.)
우리가 할 일은?
- 브랜치 생성.
- 브랜치를 메인 브랜치에 병합.
- 태그 생성.
- 브랜치 이름 변경.
- 커밋 되돌리기.
브랜치 생성
로컬 저장소로 이동하여 새 브랜치를 생성하기 전에 다음 명령어를 사용하여 브랜치와 상태를 확인하세요. 여기서 test-repo는 내 저장소 이름입니다.
pwdgit statusgit loggit branch
기존 저장소에서 새 브랜치를 생성하고 체크아웃합니다.
git branchgit branch my-feature-branchgit branchgit checkout my-feature-branchgit branch
새 파일을 생성하고 우리가 만든 브랜치에 푸시해 보겠습니다.
lltouch new-file-in-my-feature-branchgit statusgit add new-file-in-my-feature-branchgit commit -m "my-feature-branch에 새 파일을 생성했습니다"git pushgit push --set-upstream origin my-feature-branch
브랜치를 메인 브랜치에 병합
새 브랜치의 변경 사항을 메인 브랜치에 병합하려면 다음 명령어를 사용하여 원하는 브랜치에 변경 사항을 병합할 수 있습니다. 먼저 메인 브랜치로 체크아웃한 다음 우리가 만든 브랜치를 병합해야 합니다.
llgit branchgit checkout mainllgit merge my-feature-branchll
태그 생성
태그 생성은 브랜치 생성만큼 간단합니다. 먼저 저장소에서 몇 가지 변경을 한 다음 태그를 생성합니다. 원격 저장소에 푸시하기 전에 여전히 변경 사항을 커밋해야 합니다.
git taglltouch new-file-for-taggit statusgit add new-file-for-taggit tag -a mytag.v1 -mgit tag -a mytag.v1 -m "태그 생성"git taggit loggit statusgit commit -m "mytag.v1 태그 생성"git push
우리가 가진 모든 태그와 해당 태그에 대한 커밋을 확인할 수 있습니다. 브랜치를 푸시하는 방식으로 태그도 푸시할 수 있습니다.
git taggit show mytag.v1git push origin mytag.v1
브랜치에 체크아웃하는 방식으로 특정 태그에도 체크아웃할 수 있습니다.
git branchgit taggit checkout mytag.v1git branch
더 진행하기 전에 메인 브랜치로 체크아웃해 보겠습니다.
git branchgit checkout maingit branch
브랜치 이름 변경
때때로 브랜치 이름을 변경해야 할 필요성을 느낄 수 있습니다. 다음 명령어를 사용하여 매우 쉽게 할 수 있습니다.
git branchgit branch wrong-brachgit checkout wrong-brachtouch file-in-wrong-branchgit add file-in-wrong-branchgit commit -m "새 파일로 wrong-brach 브랜치 생성"git pushgit push --set-upstream origin wrong-brachgit branchgit branch --move wrong-brach correct-branchgit branchpush --set-upstream origin correct-branch
원격 저장소에서 브랜치를 삭제할 수도 있습니다.
git branchgit branch -agit push origin --delete wrong-brachgit branch -a
커밋 되돌리기
커밋을 되돌리고 로컬에서 변경 사항을 보존하고 싶다면 다음 명령어를 사용하여 소프트 리셋을 수행할 수 있습니다.
git branchgit checkout maingit loggit reset --soft HEAD~1git log
커밋을 되돌린 후에도 로컬 변경 사항이 여전히 사용 가능하다는 것을 확인할 수 있습니다.
git statusgit pullgit loggit status
커밋을 되돌리고 로컬에서 변경 사항을 보존하고 싶지 않다면 다음 명령어를 사용하여 하드 리셋을 수행할 수 있습니다.
git loggit reset --hard HEAD~1git statusgit log
이 경우 커밋을 되돌린 후 로컬에서 변경 사항이 없음을 확인할 수 있습니다.
git statusgit pullgit log
위의 두 시나리오에서는 로컬 커밋을 되돌리는 것을 보았습니다. 때때로 원격 저장소에서 커밋을 되돌려야 할 필요가 있을 수 있습니다. 그렇게 하려면 로컬에서 변경 사항을 되돌린 후 브랜치 이름 뒤에 “+”를 붙여서 변경 사항을 푸시해야 합니다.
git branchgit loggit reset --hard HEAD~1git push +maingit push origin +main
원격 저장소에는 되돌린 커밋이 포함되어 있지 않음을 확인할 수 있습니다.

결론
이 기사에서는 브랜치 및 태그 생성과 같은 시나리오를 다루었습니다. 기존 브랜치의 이름을 변경해야 할 필요성을 느낄 경우 브랜치 이름을 변경하는 방법을 보았습니다. 또한 로컬 저장소와 원격 저장소의 커밋을 되돌릴 수 있음을 보았습니다. 이제 이 기사에서 제공한 명령어를 사용하여 직접 시도해 볼 수 있습니다.
새 게시물을 받은 편지함에서 받기
스팸은 없습니다. 언제든지 구독 해지 가능합니다.