터미널에서 Remote branch(원격 브랜치)를 생성하고 삭제하는 방법을 소개합니다.
1. 리모트 브랜치 생성
GitHub에 저장소(Repository)에 리모트 브랜치를 추가하는 것을 보여드리겠습니다.
아래 화면은 GitHub에 생성한 Repository인데, 기본적으로 master
브랜치만 있습니다.
1.1 로컬 브랜치 생성 및 commit 추가
기본적으로 리모트 브랜치를 추가하려면, 로컬에 새로운 브랜치를 만들고 그 브랜치를 리모트에 추가하면 됩니다.
현재 로컬에 저장된 git의 모든 브랜치를 확인해보면 아래와 같습니다.
$ git branch -a
* master
remotes/origin/HEAD -> origin/master
remotes/origin/master
여기서 아래 명령어로 master 브랜치를 베이스로 dev
브랜치를 만들고 checkout하였습니다.
$ git checkout -b dev master
Switched to a new branch 'dev'
다시 모든 브랜치 리스트를 확인해보면, dev
라는 이름으로 로컬 브랜치가 추가된 것을 확인할 수 있습니다.
$ git branch -a
* dev
master
remotes/origin/HEAD -> origin/master
remotes/origin/master
이제 로컬 브랜치 dev
를 리모트에 추가하면 됩니다.
1.2 리모트 브랜치 추가
아래와 같이 git push [remote] [branch]
명령어로, 로컬 브랜치 dev
를 리모트 브랜치로 추가할 수 있습니다. (remote는 따로 설정하지 않으면 origin
)
$ git push origin dev
Enumerating objects: 4, done.
Counting objects: 100% (4/4), done.
Delta compression using up to 8 threads
Compressing objects: 100% (2/2), done.
Writing objects: 100% (3/3), 270 bytes | 270.00 KiB/s, done.
Total 3 (delta 1), reused 0 (delta 0)
remote: Resolving deltas: 100% (1/1), completed with 1 local object.
remote:
remote: Create a pull request for 'dev' on GitHub by visiting:
remote: https://github.com/codechacha/Test-Driven-Development-ByExample/pull/new/dev
remote:
To github.com:codechacha/Test-Driven-Development-ByExample.git
* [new branch] dev -> dev
모든 브랜치 리스트를 확인해보면 리모트 브랜치에 dev
가 추가된 것을 확인할 수 있습니다.
$ git branch -a
* dev
master
remotes/origin/HEAD -> origin/master
remotes/origin/dev
remotes/origin/master
GitHub에도 dev
브랜치가 추가된 것을 확인할 수 있습니다.
2. 리모트 브랜치 삭제 (1)
아래와 같이 git push [remote] --delete [branch]
명령어로 리모트에서 dev
브랜치를 삭제할 수 있습니다.
$ git push origin --delete dev
To github.com:codechacha/Test-Driven-Development-ByExample.git
- [deleted] dev
전체 브랜치를 확인해보면 리모트에서 dev
브랜치가 삭제되었고, 로컬 dev
브랜치는 남아있는 것을 확인할 수 있습니다.
$ git branch -a
* dev
master
remotes/origin/HEAD -> origin/master
remotes/origin/master
3. 리모트 브랜치 삭제 (2)
다른 방법으로, git branch -d -r [branch]
명령어로 리모트 브랜치를 삭제할 수 있습니다.
다음과 같이 리모트에 dev
브랜치가 있을 때,
$ git branch -a
* dev
master
remotes/origin/HEAD -> origin/master
remotes/origin/dev
remotes/origin/master
아래와 같은 명령어로 리모트 브랜치를 삭제할 수 있습니다. 브랜치 이름에서 remotes/
는 제외하고 origin/dev
만 입력하셔야 합니다.
$ git branch -d -r origin/dev
Deleted remote-tracking branch origin/dev (was 1ed9fa9).
삭제 후, 브랜치 리스트를 확인해보면 리모트에서 dev
브랜치가 삭제된 것을 확인할 수 있습니다.
$ git branch -a
* dev
master
remotes/origin/HEAD -> origin/master
remotes/origin/master
관련 문서
Related Posts
- Git Alias - 단축/커스텀 명령어 설정
- Git에서 .gitignore 설정 방법
- git clone 명령어로 원격 저장소를 로컬에 저장
- Git - 두개 commit의 차이점 확인 (코드 차이, 파일 차이)
- Git - 브랜치 이름 변경하는 방법
- Git - 특정 commit 삭제, 되돌리기 (reset, revert)
- Git - 리모트 브랜치 생성과 삭제
- GitHub에 ssh-key 등록 방법 (Windows10)
- git log - 특정 author의 commit 리스트만 출력
- git log - commit 리스트 간단하게 출력 (pretty)
- Git - revert 명령어(commit 되돌리기)
- git diff 명령어로 파일 변경 내용 확인
- git show 명령어로 commit 정보 확인
- Git - 브랜치 생성, 삭제, 체크아웃
- Git - 원격 저장소(remote) 추가, 해제
- Git - Staging 영역의 파일을 Untracked로 변경
- Git - commit log에서 수정된 파일 목록 보기
- Git - 마지막 commit 수정, 삭제 방법 (reset, amend 명령어)
- git commit message 에디터 변경 (Vim, Sublime, Atom, VSCode)
- Git - blame 명령어, 코드 수정한 사람과 Commit 찾기
- Git - Patch 파일 만들기 & 적용하기