저장소 브랜치

브랜치는 기본 코드베이스에 영향을 주지 않고 새로운 기능에 대해 작업 할 수 있는 방법을 제공합니다. Bitbucket, Jira Software 또는 터미널에서 브랜치를 생성 할 수 있습니다. 변경 한 후에는 풀 요청으로 검토 할 수 있도록 분기를 Bitbucket에 푸시합니다.

브랜치 생성

Git 브랜치를 생성하는 방법에는 Bitbucket, 로컬 명령줄 또는 Jira Software의 세 가지 방법이 있습니다.

Bitbucket에서 분기를 만들려면

  1. 저장소의 전역 사이드바에서 +를 클릭하고 Get to work 아래의 Create a branch를 선택합니다.

  2. 나타난 팝업에서 Type을 선택하고 Branch name을 입력 후 Create를 클릭하세요.
    참고
    Bitbucket 또는 Jira Software의 이슈에서 분기를 생성 할 때마다
    Bitbucket은 참조, 파일 시스템 또는 쉘에서 유효하지 않은 문자를 제거하고 유효한 문자로 대체합니다.

  3. 브랜치를 생성한 후에는 로컬 시스템에서 체크아웃 해야합니다. 다음과 같이 Bitbucket에서 제공하는 가져오기 및 체크아웃 명령을 사용합니다.
    $ git fetch && git checkout <기능>

  4. 로컬에서 변경 한 다음, 변경 사항을 <feature> 브랜치에 추가, 커밋 및 푸시합니다.
    $ git add .
    $ git commit -m "adding a change from the feature branch"
    $ git push origin <feature>

  5. 저장소의 Source 페이지를 클릭하십시오. 브랜치 드롭다운에 master<feature> 브랜치가 모두 표시되어야 합니다. 기능 브랜치에 커밋하면 해당 브랜치에 특정한 파일이 표시됩니다.

로컬로 브랜치를 만들려면

저장소의 복제된 버전이 있는 한 로컬에서 브랜치를 생성 할 수 있습니다.

  1. 터미널 창에서 저장소의 브랜치를 나열합니다.
    $ git branch

    * master

    이 출력은 단일 브랜치, master 및 별표가 현재 활성 상태임을 나타냅니다.

  2. 저장소에 새 feature 브랜치를 작성하십시오.
    $ git branch <feature_branch>

  3. 작업하려면 feature 브랜치로 전환하십시오.
    $ git checkout <feature_branch>
    git branch  명령을 사용하여 브랜치를 다시 나열 할 수 있습니다.

  4. feature 브랜치에 대한 변경 사항을 커밋합니다.
    $ git add .
    $ git commit -m "adding a change from the feature branch"

  5. master 브랜치를 전환합니다.
    $ git checkout master

  6. Bitbucket으로 feature 브랜치를 푸시합니다.

  7. Bitbucket 저장소의 Source 페이지를 봅니다. master 및 feature 브랜치가 모두 표시되어야 합니다. feature 브랜치를 선택하면 해당 관점에서 Source 페이지가 표시됩니다. 최근 커밋을 보려면 feature branch를 선택합니다.

Jira Software의 이슈에서 브랜치를 생성하려면

Jira Software에서 브랜치를 생성하려면 Bitbucket과 연결 되어야합니다 .

  1. 개발 패널에서 Create Branch를 클릭합니다. 그러면 Bitbucket의 브랜치 만들기 화면이 열립니다.

  2. 브랜치를 생성 할 저장소를 선택합니다.

  3. Branch typeBranch name을 선택하고 Create branch를 클릭합니다. 브랜치 모델이 구성된 경우 Bitbucket은 Jira Software 이슈 유형를 기반으로 Branch type을 제안할 수 있습니다.

  4. 새 브랜치가 생성되면 Bitbucket이 파일 목록으로 이동합니다. 이제 로컬 저장소로 가져와 새 브랜치로 전환 할 수 있습니다.

브랜치 모델

브랜치 모델을 사용하여 저장소에 대한 브랜치 기반 워크플로를 정의할 수 있습니다. 워크플로를 브랜치 유형에 매핑 할 때 사용할 브랜치 유형을 구성하여 브랜치 이름이 일관되게 지정하도록 할 수 있습니다. 사용할 수 있는 몇 가지 분기 접두사를 제안했지만 고유한 명명 규칙을 지정할 수도 있습니다. 일관된 명명 규칙을 사용하면 유형별로 분기를 쉽게 식별할 수 있습니다. 또한 개발 및 프로덕션 브랜치 인 브랜치를 정의 할 수 있으므로 생성 및 풀 요청에 대한 소스 및 대상 브랜치를 더 잘 제안 할 수 있습니다.

브랜치 유형

소프트웨어 개발에 자주 사용되는 몇 가지 유형의 브랜치가 있습니다. 이 섹션에서는 각 브랜치 유형의 용도와 각 브랜치 유형에 대한 일반적인 접두사 규칙을 설명합니다. Bitbucket에서 접두사는 개발 또는 프로덕션을 제외한 모든 분기에 대해 변경할 수 있습니다.

Development branch

일반적으로 기능 작업을 위한 통합 브랜치이며 종종 기본 브랜치이거나 명명된 브랜치입니다. 풀 요청 워크플로의 경우 새 기능 브랜치가 대상이 되는 브랜치입니다.

master
or
develop

Production branch

릴리스 배포에 사용됩니다. 개발 브랜치에서 분기하고 다시 병합됩니다. Gitflow 기반 워크플로에서는 새 프로덕션 릴리스를 준비하는 데 사용됩니다.

varies

 Feature branch

특정 기능 작업 또는 개선에 사용됩니다. 일반적으로 풀 요청을 사용하여 개발 브랜치에서 분기하고 다시 병합합니다.

feature/

Release branch

릴리스 작업 및 장기 유지 관리 버전에 사용됩니다. 개발 브랜치에서 분기 된 다음 프로덕션 브랜치로 병합됩니다.

release/

Bugfix branch

일반적으로 릴리스 분기를 수정하는 데 사용됩니다.

bugfix/

Hotfix branch

개발 브랜치의 변경을 중단하지 않고 프로덕션 브랜치를 빠르게 수정하는데 사용됩니다. Gitflow 기반 워크플로에서 변경 사항은 일반적으로 프로덕션 및 개발 브랜치에 병합됩니다.

hotfix/

저장소의 브랜치 모델 구성

저장소에 대한 브랜치 모델을 구성하려면 (저장소 관리자 권한 필요) :

  1. Repository settings로 이동합니다.

  2. Workflow 아래의 Branching model을 선택합니다.

  3. 저장소 브랜치 모델의 세부 사항을 선택한 다음 Save를 클릭하십시오.

브랜치에 커밋 나열

Bitbucket은 브랜치별로 커밋 목록을 유지합니다. 목록에는 마스터보다 먼저 보류중인 커밋이있는 열린 브랜치만 표시됩니다. 특정 브랜치와 관련된 커밋을 보려면 저장소를 보고 다음을 수행하십시오.

  1. Commit 페이지로 이동합니다.

  2. All branches가 선택되어있지 않은 경우, Show all을 선택하세요.

  3. 커밋 태그 링크를 클릭하여 내용을 드릴다운합니다.

브랜치 닫기

정기적으로 저장소에서 브랜치를 정리하는 것이 중요합니다. 브랜치를 닫으면 Bitbucket 인터페이스에서 브랜치가 삭제됩니다. 로컬 저장소의 브랜치에는 아무런 영향도 미치지 않습니다. 해당될 경우 Git 또는 Hg와 연결된 명령을 사용하여 브랜치를 삭제해야 합니다.

두 가지 방법으로 브랜치를 닫을 수 있습니다:

  • 저장소의 Branches 페이지에서 오른쪽의 옵션 링크 위로 마우스를 가져가 Delete branch를 선택합니다.

  • 브랜치에서 풀 요청을 생성 할 때 Close branch 확인란을 선택하면 풀 요청이 병합 될 때 브랜치를 닫습니다.

Bitbucket은 분기별로 커밋 목록을 유지합니다. 목록에는 마스터보다 먼저 보류중인 커밋이있는 열린 상태의 브랜치만 표시됩니다. 특정 브랜치와 관련된 커밋을 보려면 저장소를보고 다음을 수행하십시오.

  1. Commits로 이동합니다.

  2. All branches가 선택되어있지 않은 경우 Show all을 선택합니다.

  3. 내용을 드릴다운하려면 커밋 대그 링크를 클릭하십시오.

브랜치 일괄 삭제

다음과 같은 단계로 브랜치를 일괄로 삭제할 수 있습니다:

  1. 저장소에서 Branches로 이동합니다.

  2. () > Delete multiple를 클릭합니다.

  3. 삭제하고 싶은 브랜치를 체크하고 Delete selected branches를 클릭합니다.

  4. 선택을 확인하십시오.