코드 버전 제어

이 문서에서는 Dataform에서 버전 제어를 사용하여 개발을 추적하는 방법을 설명합니다.

Dataform은 Git를 사용하여 저장소 내부의 파일에 대한 각 변경사항을 추적합니다.

Dataform 저장소에서 Git 저장소와 직접 상호작용합니다.

연결된 저장소에서 저장소를 연결하는 동안 구성한 원격 저장소의 추적 브랜치와 상호작용합니다.

Dataform은 개발 작업공간의 변경 상태에 따라 버전 제어 옵션을 표시합니다. 예를 들어 Dataform은 작업공간에 커밋되지 않은 로컬 변경사항이 있는 경우에만 커밋 옵션을 표시합니다. 작업공간의 파일이 기본 또는 추적 브랜치의 정확한 일치하는 복사본인 경우 Dataform에 작업공간이 최신 상태임 상태가 표시됩니다.

Dataform에는 다음 버전 제어 옵션이 표시됩니다.

변경사항 X개 커밋
작업공간 또는 선택한 변경된 파일에서 로컬 변경사항 X개를 커밋합니다. Dataform에 커밋되지 않은 변경사항이 표시됩니다.
기본 브랜치로 푸시
커밋한 변경사항을 기본 브랜치로 푸시합니다. 이 옵션은 작업공간에 커밋된 변경사항이 없는 경우 Dataform 저장소에서 사용할 수 있습니다.
your-branch-name에 푸시
커밋한 변경사항을 your-branch-name으로 푸시합니다. 이 옵션은 작업공간에 커밋된 변경사항이 없는 경우 타사 Git 저장소에 연결된 저장소에서 사용할 수 있습니다.
기본 브랜치에서 가져오기
기본 브랜치의 최근 변경사항으로 작업공간을 업데이트합니다. 이 옵션은 작업공간에 커밋되지 않았거나 푸시되지 않은 커밋된 변경사항이 없는 경우 Dataform 저장소에서 사용할 수 있습니다.
your-branch-name에서 가져오기
your-branch-name의 최근 변경사항으로 작업공간을 업데이트합니다. 이 옵션은 작업공간에 커밋되지 않았거나 푸시되지 않은 커밋된 변경사항이 없는 경우 타사 Git 저장소에 연결된 저장소에서 사용할 수 있습니다.
마지막 커밋으로 되돌리기
작업공간의 파일을 마지막 커밋의 상태로 복원합니다.

시작하기 전에

  1. 저장소를 선택하거나 만듭니다.
  2. 선택사항: 저장소를 타사 Git 저장소에 연결합니다.
  3. 개발 작업공간을 선택하거나 만듭니다.

필요한 역할

Dataform에서 버전 제어를 사용하는 데 필요한 권한을 얻으려면 관리자에게 작업공간의 Dataform 편집자(roles/dataform.editor) IAM 역할을 부여해 달라고 요청하세요. 역할 부여에 대한 자세한 내용은 액세스 관리를 참조하세요.

커스텀 역할이나 다른 사전 정의된 역할을 통해 필요한 권한을 얻을 수도 있습니다.

변경사항 가져오기

개발 작업공간이 저장소와 동기화되지 않으면 Dataform에 가져오기 옵션이 표시됩니다. 저장소에서 개발 작업공간으로 변경사항을 가져오려면 다음 단계를 따르세요.

  1. Dataform 페이지에서 저장소를 선택합니다.
  2. 개발 작업공간 탭에서 개발 작업공간을 선택합니다.
  3. 개발 작업공간 페이지에서 다음을 수행합니다.
    1. Dataform 저장소에 있는 경우 기본 브랜치에서 가져오기를 클릭합니다.
    2. 타사 Git 저장소에 연결된 저장소에 있는 경우 your-branch-name에서 가져오기를 클릭합니다.

변경사항 커밋

개발 작업공간에서 변경을 수행하면 Dataform에 커밋 옵션이 표시됩니다. 모든 로컬 변경사항 또는 선택한 파일을 커밋할 수 있습니다.

Dataform에서 새 커밋 대화상자에 커밋되지 않은 변경사항이 표시됩니다.

개발 작업공간의 변경사항을 저장소로 커밋하려면 다음 단계를 따르세요.

  1. Dataform 페이지에서 저장소를 선택합니다.
  2. 저장소 페이지에서 개발 작업공간을 선택합니다.
  3. 개발 작업공간 페이지에서 커밋을 클릭합니다.
  4. 새 커밋 창에서 다음을 수행합니다.

    1. 커밋 메시지 추가 필드에 커밋에 대한 설명을 입력합니다.
    2. 커밋하려는 변경된 파일을 선택합니다.

      파일을 선택하지 않으면 Dataform에서 모든 로컬 변경사항을 커밋합니다. 변경된 파일을 파일 상태, 파일 이름, 경로별로 필터링할 수 있습니다.

    3. 모든 변경사항 커밋 또는 X개의 변경사항 커밋을 클릭합니다.

      버튼 이름은 커밋할 파일 선택에 따라 달라집니다.

변경사항 푸시

변경사항을 커밋한 후 Dataform에 푸시 옵션이 표시됩니다. 개발 작업공간의 변경사항을 저장소로 푸시하려면 다음 단계를 따르세요.

  1. Dataform 페이지에서 저장소를 선택합니다.
  2. 저장소 페이지에서 개발 작업공간을 선택합니다.
  3. 변경사항을 커밋합니다.
  4. 개발 작업공간 페이지에서 다음을 수행합니다.
    1. Dataform 저장소에 있는 경우 기본 브랜치로 푸시를 클릭합니다.
    2. 타사 Git 저장소에 연결된 저장소에 있는 경우 your-branch-name으로 푸시를 클릭합니다.

커밋되지 않은 변경사항 되돌리기

커밋되지 않은 변경사항을 되돌리려면 다음 단계를 따르세요.

  1. Dataform 페이지에서 저장소를 선택합니다.
  2. 저장소 페이지에서 개발 작업공간을 선택합니다.
  3. 파일 창에서 더보기 메뉴를 클릭한 다음 마지막 커밋으로 되돌리기를 선택합니다.

병합 충돌 해결

병합 충돌은 개발 작업공간의 로컬 변경사항이 저장소의 기본 추적 브랜치에 적용된 변경사항과 호환되지 않을 때 발생할 수 있습니다. 병합 충돌은 일반적으로 여러 사용자가 동시에 동일한 파일을 수정할 때 발생합니다.

일반적으로 다른 사용자가 충돌하는 변경사항을 브랜치에 푸시한 후 동일한 브랜치에서 가져오면 병합 충돌이 발생합니다. 영향을 받는 파일을 수정하여 병합 충돌을 수동으로 해결해야 합니다.

다음 코드 샘플은 SQLX 파일에 표시된 병합 충돌을 보여줍니다.

    <<<<<<< HEAD
    SELECT 1 as CustomerOrders
    =======
    SELECT 1 as Orders
    >>>>>>> refs/heads/main

병합 충돌을 해결하려면 다음 단계를 따르세요.

  1. 개발 작업공간의 파일 창에서 선택한 파일을 선택합니다.
  2. 선택한 변경사항으로 파일을 수정합니다.
  3. 변경사항을 커밋합니다.
  4. 선택사항: 변경사항을 푸시합니다.

다음 단계