Git

[Git] Branching

SangRok Jung 2022. 12. 26. 22:05
반응형

Branching


Branch

프로젝트내 일종의 타임라인으로서 원할 때 마다 별도의 콘텍스트를 생성할 수 있게 한다.

각각의 브랜치는 서로 영향을 미치지 않는다.

현재 branch에서 작업을 진행 한 후 변경 사항을 저장하지 않을 경우 오류가 발생하므로 commit 혹은 stashing을 한 후 이동 해야한다.

 

 

 

 


 

 

 

master

git init 명령을 실행 했을 때 자동적으로 시작하는 기본 branch.

* git hub는 2020년 master에서 main으로 기본 브랜치명을 변경하였다.

 

 

 

 

Head

저장소에서 현재 위치를 가리키는 포인터.

브랜치 래퍼런스.

항상 master branch에서 가장 최근에 commit한 branch를 가리킨다.

 

 

 

 

 


 

 

 

git branch

git branch

저장소에 있는 현재 존재하는 branch목록을 보여준다.

 

 

 

 

 

 

Creating Branches

공백을 포함하면 안된다.

Head가 가리키고 있는 branch 기준으로 생성된다.

git branch branch-name

 

 

 

 

Switching Branches

해당 brach로 이동한다.

git switch branch-name

 

switch와 checkout은 같은 행동을 취하지만 checkout이 많은 작업량을 요구한다.

git checkout branch-name

해당 branch를 생성함과 동시에 이동한다.

git checkout -c branch-name

 

 

 

 

 

git commit -a -m "message"

스테이지에 모든 변경사항을 업로드한다.

git commit -a -m "message"

 

 

 

 

Delete branches

현재 위치의 branch는 삭제 할 수 없다.

merge하지 않은 branch또한 삭제 할 수 없다.

git branch -d branch-name

merge 여부에 상관없이 강제 삭제를 허용한다.

git branch --force branch-name
git branch -D branch-name

 

 

 

 

 

 

Rename branches

변경하려는 branch를 현재 Head로 잡아야한다.

git branch -m new-name

 

 

 


 

 

 

 

 

 

 

 

 

반응형

'Git' 카테고리의 다른 글

[Git] Cloning  (0) 2022.12.28
[Git] Merging  (0) 2022.12.26
[Git] Ignoring files  (0) 2022.12.26
[Git] Amending Commits  (0) 2022.12.26
[Git] Committing  (0) 2022.12.26