머지 방법
프로젝트의 머지 방법은 머지 시 커밋을 스쿼시할지, 머지 커밋을 생성할지 결정합니다.
프로젝트에 대해 선택하는 머지 방법은 머지 리퀘스트의 변경 사항이 기존 브랜치에 어떻게 머지되는지를 결정합니다. 이 페이지의 예시는 커밋 A, C, E가 있는 main 브랜치와 커밋 B, D가 있는 feature 브랜치를 가정합니다: Mermaid 다이어그램 (11줄) 소스 코드 보기 %%{init: { "fontFamily": "GitLab Sans" }}%% gitGraph accTitle: Diagram of a merge accDescr: A Git graph of five commits on two branches, which will be expanded on in other graphs in this page. commit id: "A" branch feature commit id: "B" commit id: "D" checkout main commit id: "C" commit id: "E" 프로젝트의 머지 방법 구성 # 상단 표시줄에서 Search or go to 를 선택하고 프로젝트를 찾습니다. Settings > Merge requests 를 선택합니다. 다음 옵션 중 원하는 Merge method 를 선택합니다: Merge commit Merge commit with semi-linear history Fast-forward merge Squash commits when merging 에서 커밋 처리의 기본 동작을 선택합니다: Do not allow : 스쿼시는 절대 수행되지 않으며 사용자가 동작을 변경할 수 없습니다. Allow : 스쿼시는 기본적으로 꺼져 있지만 사용자가 동작을 변경할 수 있습니다. Encourage : 스쿼시는 기본적으로 켜져 있지만 사용자가 동작을 변경할 수 있습니다. Require : 스쿼시는 항상 수행되며 사용자가 동작을 변경할 수 없습니다. Save changes 를 선택합니다. 머지 커밋 # 기본적으로 GitLab은 브랜치가 main 에 머지될 때 머지 커밋을 생성합니다. 커밋이 머지 시 스쿼시 되는지 여부에 관계없이 별도의 머지 커밋이 항상 생성됩니다. 이 전략은 스쿼시 커밋과 머지 커밋 둘 다 main 브랜치에 추가될 수 있습니다. 이 다이어그램은 Merge commit 전략을 사용할 때 feature 브랜치가 main 에 머지되는 방법을 보여줍니다. 이는 git merge --no-ff <feature> 명령과 동일하며, GitLab UI에서 Merge method 로 Merge commit 을 선택합니다: Merge commit 방법으로 기능 브랜치를 머지한 후 main 브랜치는 다음과 같습니다: Mermaid 다이어그램 (12줄) 소스 코드 보기 %%{init: { 'gitGraph': {'logLevel': 'debug', 'showBranches': true, 'showCommitLabel':true,'mainBranchName': 'main', 'fontFamily': 'GitLab Sans'}} }%% gitGraph accTitle: Diagram of a m
