fast-forward merges
git merge 중에서 가장 깔끔하고, 간단함.
master branch에서 새로운 branch가 생성된 이후에 master branch의 변동사항이 없다면
merge를 할 때 master branch가 가리키고 있는 pointer를 d가 아닌 f로 옮겨 놓기만 하면 된다.
그리고 branch를 삭제하면
그래서 fast-foward가 가능하다면 항상 이렇게 merge하는 것을 선호한다.
장점일 수도 있고 단점일 수도 있는 점:
history에 merge가 되었다는 사실이 남지 않는다.
feature-A branch가 있었고, master branch 에 merge가 되었다는 것이 commit으로 남지않음
순수하게 모든 것을 history에 남기길 좋아하는 팀이면 별도로 merge commit을 만든다.
master branch에서 feature-A feature-B branch가 파생되었고 두가지의 COMMIT이 있는 상황 그리고 BRANCH가 파생된 이후에는 따로 COMMIT이 없다.,
feature-A를 마스터 브랜치에 merge할 것임.
merge :
feature-A에서 작업한 내용을 master branch로 가져오는 것임.
merge할 준비
master 하면 1234 파일 나오고
feature-a branch로 가서 ls 하면 56도 추가된다.
git checkout master #일단 master branch로 간 다음
git merge feature-a #baaaaam!!!!! 너무나 간단하게 merge 된 것 확인!
feature-a에서 작업한 게 master에 포함된 것 확인할 수 있고
git hist에서 log 확인해보니, master branch에는 feature-a branch의 내용 e f 가 포함된 것 확인가능
git branch -d feature-a # 무언가를 merge 했다면 더이상 feature-a branch가 필요 없으므로,
보통은 branch라는 명령어 사용해서 삭제해준다.
master branch 에서는 어떤 merge commit이 없다.
그냥 한 사람이 a b c d e f commit을 해나간 것처럼
e,f 는 feature a branch 에서 작업+ merge 되었다는 history가 남지않는다.
'HappyCoding > git' 카테고리의 다른 글
three-way merges (0) | 2021.05.02 |
---|---|
git merge option : no-ff (no fast-forward) (0) | 2021.05.02 |
git branch 사용 (0) | 2021.05.01 |
git tag (0) | 2021.05.01 |
git 명령어 (0) | 2021.05.01 |