저장소 관리

이 문서에서는 Dataform에서 다음을 수행하는 방법을 보여줍니다.

시작하기 전에

  1. 저장소 만들기
  2. 선택사항: 저장소를 타사 Git 저장소에 연결합니다.
  3. 저장소에서 개발 작업공간을 만들고 초기화합니다.

필요한 역할

이 문서의 태스크를 완료하는 데 필요한 권한을 얻으려면 관리자에게 다음 IAM 역할을 부여해 달라고 요청하세요.

  • Dataform 설정을 구성하고 Dataform 핵심 패키지의 위치를 관리합니다. Dataform 관리자 (roles/dataform.admin): 저장소
  • Dataform Core 패키지를 업데이트하고 Dataform에서 버전 제어를 사용합니다. 작업공간의 Dataform 편집자 (roles/dataform.editor)

역할 부여에 대한 자세한 내용은 프로젝트, 폴더, 조직에 대한 액세스 관리를 참조하세요.

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

Dataform 워크플로 설정 구성

이 섹션에서는 특정 저장소의 Dataform 워크플로 처리 설정을 수정하는 방법을 보여줍니다.

설정 파일을 수정하여 스키마 이름을 바꾸거나 커스텀 컴파일 변수를 저장소에 추가할 수 있습니다.

저장소 설정 정보

각 Dataform 저장소에는 고유한 워크플로 설정 파일이 포함되어 있습니다. 이 파일에는 Google Cloud 프로젝트 ID와 Dataform이 BigQuery에 애셋을 게시하는 스키마가 포함되어 있습니다. Dataform은 기본 설정을 사용하며, 이러한 기본 설정은 설정 파일을 수정하여 필요에 가장 적합하도록 재정의할 수 있습니다.

Dataform Core 3.0.0부터 워크플로 설정은 기본적으로 workflow_settings.yaml 파일에 저장됩니다. 이전 버전의 Dataform 코어에서는 워크플로 설정이 dataform.json 파일에 저장됩니다. Dataform 코어 3.0 workflow_settings.yaml 파일은 dataform.json 파일과 하위 호환됩니다. dataform.json 파일을 계속 사용하여 워크플로 설정을 저장할 수 있습니다. 향후 호환성을 위해 저장소 워크플로 설정을 workflow_settings.yaml 형식으로 이전하는 것이 좋습니다.

workflow_settings.yaml 정보

Dataform Core 3.0에서 도입된 workflow_settings.yaml 파일은 Dataform 워크플로 설정을 YAML 형식으로 저장합니다.

다음 코드 샘플은 workflow_settings.yaml 샘플 파일을 보여줍니다.

  defaultProject: my-gcp-project-id
  defaultDataset: dataform
  defaultLocation: australia-southeast2
  defaultAssertionDataset: dataform_assertions

위의 코드 샘플에서 키-값 쌍은 다음과 같이 설명됩니다.

  • defaultProject: BigQuery Google Cloud 프로젝트 ID입니다.
  • defaultDataset: Dataform이 애셋을 만드는 BigQuery 데이터 세트로, 기본적으로 dataform입니다.
  • defaultLocation: 기본 BigQuery 데이터 세트 리전입니다. 이 위치에서 Dataform은 코드를 처리하고 실행된 데이터를 저장합니다. 처리 리전은 BigQuery 데이터 세트의 위치와 일치해야 하지만 Dataform 저장소 리전과는 일치하지 않아도 됩니다. BigQuery 데이터 세트 위치에 대한 자세한 내용은 데이터 세트 위치를 참고하세요.
  • defaultAssertionDataset: Dataform이 어설션 결과가 있는 뷰를 만드는 BigQuery 데이터 세트로, 기본적으로 dataform_assertions입니다.

workflow_settings.yaml 속성에 관한 자세한 내용은 GitHub의 WorkflowSettings를 참고하세요.

dataform.projectConfig 객체의 속성으로 Dataform 코드의 workflow_settings.yaml에 정의된 속성에 액세스할 수 있습니다.

workflow_settings.yaml 옵션에서 코드 액세스 가능한 dataform.projectConfig 옵션으로의 다음 매핑이 적용됩니다.

  • defaultProject => defaultDatabase
  • defaultDataset => defaultSchema
  • defaultAssertionDataset => assertionSchema
  • projectSuffix => databaseSuffix
  • datasetSuffix => schemaSuffix
  • namePrefix => tablePrefix

다음 코드 샘플은 뷰의 SELECT 문에서 참조되는 dataform.projectConfig 객체를 보여줍니다.

  config { type: "view" }
  SELECT ${when(
    !dataform.projectConfig.tablePrefix,
    "table prefix is set!",
    "table prefix is not set!"
  )}

dataform.json 정보

dataform.json 파일은 JSON 형식으로 Dataform 워크플로를 저장합니다.

다음 코드 샘플은 dataform.json 샘플 파일을 보여줍니다.

  {
    "warehouse": "bigquery",
    "defaultDatabase": "my-gcp-project-id",
    "defaultSchema": "dataform",
    "defaultLocation": "australia-southeast2",
    "assertionSchema": "dataform_assertions"
  }

위의 코드 샘플에서 키-값 쌍은 다음과 같이 설명됩니다.

  • warehouse: Dataform이 애셋을 만드는 BigQuery를 가리키는 포인터입니다.
  • defaultDatabase: BigQuery Google Cloud 프로젝트 ID입니다.
  • defaultSchema: Dataform에서 애셋을 만드는 BigQuery 데이터 세트입니다.
  • defaultLocation: 기본 BigQuery 데이터 세트 리전입니다. 이 위치에서 Dataform은 코드를 처리하고 실행된 데이터를 저장합니다. 처리 리전은 BigQuery 데이터 세트의 위치와 일치해야 하지만 Dataform 저장소 리전과는 일치하지 않아도 됩니다. BigQuery 데이터 세트 위치에 대한 자세한 내용은 데이터 세트 위치를 참고하세요.
  • assertionSchema: Dataform이 어설션 결과가 있는 뷰를 만드는 BigQuery 데이터 세트로, 기본적으로 dataform_assertions입니다.

프로젝트 코드에서 dataform.json 파일에 정의된 속성에 dataform.projectConfig 객체의 속성으로 액세스할 수 있습니다.

스키마 이름 구성

스키마 이름을 구성하려면 workflow_settings.yaml 파일에서 defaultDatasetdefaultAssertionSchema 속성을 수정하거나 dataform.json 파일에서 defaultSchemaassertionSchema 속성을 수정해야 합니다.

스키마의 이름을 구성하려면 다음 단계를 따르세요.

workflow_settings.yaml

  1. 개발 작업공간의 파일 창에서 workflow_settings.yaml 파일을 클릭합니다.

  2. defaultDataset, defaultAssertionSchema 또는 둘 다의 값을 수정합니다.

다음 코드 샘플은 workflow_settings.yaml 파일에 정의된 커스텀 defaultDataset 이름을 보여줍니다.

  ...
  defaultDataset: mytables
  ...

dataform.json

  1. 개발 작업공간의 파일 창에서 dataform.json 파일을 클릭합니다.

  2. defaultSchema, assertionSchema 또는 둘 다의 값을 수정합니다.

다음 코드 샘플은 dataform.json 파일에 정의된 커스텀 defaultSchema 이름을 보여줍니다.

{
  ...
  "defaultSchema": "mytables",
  ...
}

커스텀 컴파일 변수 만들기

컴파일 변수에는 출시 구성 또는 Dataform API 요청에서 컴파일 재정의로 수정할 수 있는 값이 포함됩니다.

workflow_settings.yaml에서 컴파일 변수를 정의하고 선택한 테이블에 추가한 후 출시 구성 또는 Dataform API 컴파일 재정의에서 값을 수정하여 조건부로 테이블을 실행할 수 있습니다.

컴파일 변수를 사용하여 조건부로 테이블을 실행하는 방법에 대한 자세한 내용은 Dataform의 코드 수명 주기 소개를 참조하세요.

저장소 전반에서 사용할 수 있는 컴파일 변수를 만들려면 다음 단계를 따르세요.

workflow_settings.yaml

  1. Dataform 개발 작업공간으로 이동합니다.
  2. 파일 창에서 workflow_settings.yaml 파일을 선택합니다.
  3. 다음 코드 스니펫을 입력합니다.

    "vars": {
      "VARIABLE":"VALUE"
    }
    

    다음을 바꿉니다.

    • VARIABLE: 변수의 이름입니다.
    • VALUE: 컴파일 변수의 기본값

다음 코드 샘플은 workflow_settings.yaml 파일에서 myVariableValue로 설정된 myVariableName 컴파일 변수를 보여줍니다.

...
vars:
  myVariableName: myVariableValue
...

다음 코드 샘플은 executionSetting 컴파일 변수가 dev로 설정된 workflow_settings.yaml 파일을 보여줍니다.

defaultProject: default_bigquery_database
defaultLocation: us-west1
defaultDataset: dataform_data,
vars:
executionSetting: dev

dataform.json

  1. Dataform 개발 작업공간으로 이동합니다.
  2. 파일 창에서 dataform.json 파일을 선택합니다.
  3. 다음 코드 스니펫을 입력합니다.

    "vars": {
      "VARIABLE":"VALUE"
    }
    

    다음을 바꿉니다.

    • VARIABLE: 변수의 이름입니다.
    • VALUE: 컴파일 변수의 기본값

다음 코드 샘플은 dataform.json 파일에서 myVariableValue로 설정된 myVariableName 컴파일 변수를 보여줍니다.

{
  ...
  "vars": {
    "myVariableName": "myVariableValue"
  },
  ...
}

다음 코드 샘플은 executionSetting 컴파일 변수가 dev로 설정된 dataform.json 파일을 보여줍니다.

{
"warehouse": "bigquery",
"defaultSchema": "dataform_data",
"defaultDatabase": "default_bigquery_database".
"defaultLocation":"us-west-1",
"vars": {
"executionSetting":"dev"
}
}
테이블에 컴파일 변수 추가

SQLX 테이블 정의 파일에 컴파일 변수를 추가하려면 다음 단계를 따르세요.

  1. Dataform 개발 작업공간으로 이동합니다.
  2. 파일 창에서 SQLX 테이블 정의 파일을 선택합니다.
  3. 파일에서 when 절을 다음 형식으로 입력합니다.

    ${when(dataform.projectConfig.vars.VARIABLE === "SET_VALUE", "CONDITION")}
    

    다음을 바꿉니다.

    • VARIABLE: 변수의 이름입니다(예: executionSetting).
    • SET_VALUE: 변수의 값입니다(예: staging).
    • CONDITION: 테이블 실행 조건

다음 코드 샘플은 when 절과 스테이징 실행 설정에서 데이터의 10%를 실행하는 executionSetting 변수를 포함하는 테이블 정의 SQLX 파일을 보여줍니다.

  select
    *
  from ${ref("data")}
  ${when(
    dataform.projectConfig.vars.executionSetting === "staging",
    "where mod(farm_fingerprint(id) / 10) = 0",
  )}

다음 코드 샘플은 when 절과 myVariableName 변수가 있는 뷰 정의 SQLX 파일을 보여줍니다.

  config { type: "view" }
  SELECT ${when(
    dataform.projectConfig.vars.myVariableName === "myVariableValue",
    "myVariableName is set to myVariableValue!",
    "myVariableName is not set to myVariableValue!"
  )}

워크플로 설정을 workflow_settings.yaml로 마이그레이션

워크플로 설정 파일이 향후 Dataform 코어 프레임워크 버전과 호환되도록 하려면 워크플로 설정을 dataform.json 파일에서 workflow_settings.yaml 파일로 이전해야 합니다.

workflow_settings.yaml 파일은 dataform.json 파일을 대체합니다.

Dataform Core가 저장소의 유일한 종속 항목 패키지인 경우 workflow_settings.yaml 파일이 package.json 파일도 대체합니다. package.json 파일을 workflow_settings.yaml 파일로 대체하는 방법에 관한 자세한 내용은 Dataform Core 패키지 관리를 참고하세요.

다음 표는 dataform.json 파일에서 workflow_settings.yaml 파일로의 워크플로 설정 속성 매핑을 보여줍니다.

dataform.json의 속성 workflow_settings.yaml의 속성 설명
assertionSchema defaultAssertionDataset (필수 항목) 어설션의 기본 데이터 세트입니다.
defaultDatabase defaultProject 필수 입력란입니다. 기본 Google Cloud 프로젝트 이름입니다.
defaultLocation defaultLocation 필수 입력란입니다. Dataform에서 테이블을 만드는 기본 BigQuery 위치입니다. BigQuery 위치에 대한 자세한 내용은 데이터 세트 위치를 참고하세요.
defaultSchema defaultDataset (필수 항목) 기본 데이터 세트입니다.
databaseSuffix projectSuffix 선택사항입니다. 모든 Google Cloud 프로젝트 참조에 추가할 접미사입니다.
schemaSuffix datasetSuffix 선택사항입니다. 모든 작업 데이터 세트에 추가할 접미사입니다.
tablePrefix namePrefix (선택사항) 모든 작업 이름 앞에 추가할 접두사입니다.
vars vars (선택사항) 컴파일 중에 프로젝트 코드에서 사용할 수 있는 사용자 정의 변수입니다. key: value 쌍 목록을 포함하는 객체입니다.
warehouse - dataform.json에서 요구됨. bigquery로 설정해야 합니다. workflow_settings.yaml에서 사용할 수 없습니다.
- dataformCoreVersion dataform.json에서 사용할 수 없습니다. 새 저장소의 경우 기본적으로 workflow_settings.yaml에 설치됩니다. 자세한 내용은 Dataform Core 패키지 관리를 참고하세요.

워크플로 설정을 workflow_settings.yaml로 이전하려면 다음 단계를 따르세요.

  1. Google Cloud 콘솔에서 Dataform 페이지로 이동합니다.

    Dataform으로 이동

  2. 저장소를 선택한 후 작업공간을 선택합니다.

  3. 파일 창에서 추가추가를 클릭한 다음 파일 만들기를 클릭합니다.

  4. 파일 경로 추가 필드에 workflow_settings.yaml를 입력합니다.

  5. 파일 만들기를 클릭합니다.

  6. workflow_settings.yaml 파일에서 YAML 형식으로 매핑된 dataform.json 파일의 설정을 추가합니다.

  7. 파일 창에서 dataform.json 옆에 있는 더보기 메뉴를 클릭한 다음 삭제를 클릭합니다.

  8. dataform.json 삭제를 확인하려면 삭제를 클릭합니다.

다음 코드 샘플은 dataform.json 파일에 정의된 워크플로 설정을 보여줍니다.

{
  "warehouse": "bigquery",
  "defaultDatabase": "dataform-demos",
  "defaultLocation": "US",
  "defaultSchema": "dataform",
  "assertionSchema": "dataform_assertions"
  "vars": {
    "environmentName": "development"
  }
}

다음 코드 샘플은 위의 dataform.json 파일을 workflow_settings.yaml로 변환한 것을 보여줍니다.

defaultProject: dataform-demos
defaultLocation: US
defaultDataset: dataform
defaultAssertionDataset: dataform_assertions
vars:
    environmentName: "development"

Dataform Core 패키지 관리

이 섹션에서는 Dataform Core 프레임워크 종속 항목 패키지를 관리하고 최신 버전으로 업데이트하는 방법을 보여줍니다.

Dataform Core는 SQL, SQLX, JavaScript로 워크플로를 개발하기 위한 오픈소스 Dataform 프레임워크입니다. 항상 사용 가능한 최신 버전의 Dataform 코어 프레임워크를 사용하는 것이 좋습니다. Dataform Core 프레임워크의 출시에 대한 자세한 내용은 GitHub에서 Dataform 출시를 참고하세요.

Dataform Core 패키지 위치 관리

저장소에서 첫 번째 작업공간을 초기화하면 Dataform은 Dataform 코어를 종속 항목 패키지로 자동으로 설정합니다. Dataform Core 3.0.0부터 Dataform은 기본적으로 workflow_settings.yaml 파일에 Dataform Core 패키지를 설치합니다. 이전 버전의 Dataform Core에서는 Dataform Core가 package.json 파일에 설정되었습니다.

Dataform Core 3.0.0 이상에서 Dataform Core가 저장소의 유일한 패키지인 경우 workflow_settings.yaml 파일에서 설정해야 합니다. 이전 버전의 Dataform Core로 만든 저장소의 경우 Dataform Core 패키지를 workflow_settings.yaml로 이동합니다.

package.json 파일은 Dataform에 패키지를 추가로 설치하는 데 필요합니다. 저장소에서 추가 패키지를 사용하는 경우 모든 패키지가 한곳에서 설정되도록 package.json에 Dataform 핵심 패키지를 설정합니다. 저장소에 package.json 파일이 없으면 package.json 파일을 만들고 Dataform Core 패키지를 이동하여 추가 패키지를 설치합니다.

Dataform 코어를 workflow_settings.yaml로 이동

3.0.0보다 이전 버전의 Dataform Core로 만든 저장소의 경우 Dataform Core 이외의 종속 항목 패키지가 없는 경우 Dataform Core 패키지를 package.json 파일에서 workflow_settings.yaml 파일로 이동하고 중복된 package.json 파일을 삭제해야 합니다.

Dataform Core 패키지를 package.json 파일에서 workflow_settings.yaml 파일로 이전하려면 다음 단계를 따르세요.

  1. Google Cloud 콘솔에서 Dataform 페이지로 이동합니다.

    Dataform으로 이동

  2. 저장소를 선택한 후 작업공간을 선택합니다.

  3. 파일 창에서 workflow_settings.yaml 파일을 선택합니다.

  4. workflow_settings.yaml 파일에서 다음 형식으로 Dataform Core 패키지를 추가합니다.

    dataformCoreVersion: "VERSION"
    
    

    VERSION을 Dataform 최신 버전(예: 3.0.0)으로 바꿉니다.

  5. 파일 창에서 package.json 파일 옆에 있는 더보기 메뉴를 클릭한 다음 삭제를 클릭합니다.

  6. dataform.json 파일 삭제를 확인하려면 삭제를 클릭합니다.

  7. 패키지 설치를 클릭합니다.

Dataform 코어를 package.json로 이동

package.json 파일은 저장소에 추가 패키지를 설치하는 데 필요합니다. 저장소에서 추가 패키지를 사용하는 경우 Dataform 핵심 패키지를 비롯한 모든 패키지를 package.json 파일에 저장해야 합니다.

Dataform Core 패키지가 workflow_settings.yaml 파일에 설정되어 있어 저장소에 package.json 파일이 없는 경우 package.json 파일을 만들어 패키지를 추가로 설치한 후 Dataform Core 패키지를 workflow_settings.yaml 파일에서 새로 만든 package.json 파일로 이동해야 합니다.

package.json 파일을 만들고 Dataform 핵심 패키지를 이동하려면 다음 단계를 따르세요.

  1. Google Cloud 콘솔에서 Dataform 페이지로 이동합니다.

    Dataform으로 이동

  2. 저장소를 선택한 후 작업공간을 선택합니다.

  3. 파일 창에서 add추가를 클릭한 다음 파일 만들기를 클릭합니다.

  4. 파일 경로 추가 필드에 package.json를 입력합니다.

  5. 파일 만들기를 클릭합니다.

  6. package.json 파일에서 다음 형식으로 Dataform Core 패키지를 추가합니다.

    {
        "dependencies": {
            "@dataform/core": "VERSION"
        }
    }
    

    VERSION을 Dataform 최신 버전(예: 3.0.0)으로 바꿉니다.

  7. 패키지 설치를 클릭합니다.

  8. 파일 창에서 workflow_settings.yaml을 선택합니다.

  9. workflow_settings.yaml 파일에서 dataformCoreVersion 속성을 삭제합니다.

Dataform Core 업데이트

프로덕션 환경에 배포하기 전에 항상 비프로덕션 환경에서 새 패키지 버전을 테스트하세요.

Dataform 핵심 종속 항목 패키지를 업데이트하려면 다음 단계를 따르세요.

  1. GitHub의 Dataform 출시 페이지에서 @dataform/core의 최신 버전을 찾습니다.

  2. Google Cloud 콘솔에서 Dataform 페이지로 이동합니다.

    Dataform으로 이동

  3. 저장소를 선택한 후 작업공간을 선택합니다.

  4. 파일 창에서 package.json 파일 또는 workflow_settings.yaml 파일을 선택합니다.

    Dataform Core 종속 항목 패키지가 설정되는 위치는 Dataform Core 버전과 패키지 사용 여부에 따라 다릅니다. 자세한 내용은 Dataform Core 패키지 위치 관리를 참고하세요.

  5. Dataform Core 종속 항목 패키지를 최신 버전으로 업데이트합니다.

    package.json

    {
        "dependencies": {
            "@dataform/core": "VERSION"
        }
    }
    

    VERSION을 Dataform 최신 버전(예: 3.0.0)으로 바꿉니다. 패키지 설치 관련 문제를 방지하려면 Dataform Core 패키지 버전을 명시적으로 지정하세요. package.json 파일의 다른 dependencies 옵션(예: >version)을 사용하지 마세요.

    workflow_settings.yaml

    dataformCoreVersion: "VERSION"
    

    VERSION을 Dataform 최신 버전(예: 3.0.0)으로 바꿉니다.

  6. 패키지 설치를 클릭합니다.

  7. 변경사항을 커밋합니다.

  8. 변경사항을 저장소에 푸시합니다.

다음 코드 샘플은 package.json 파일에서 3.0.0 버전으로 업데이트된 @dataform/core 종속 항목을 보여줍니다.

{
    "dependencies": {
        "@dataform/core": "3.0.0"
    }
}

코드 버전 제어

이 섹션에서는 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 저장소에 연결된 저장소에서 사용할 수 있습니다.
마지막 커밋으로 되돌리기
작업공간의 파일을 마지막 커밋의 상태로 복원합니다.

변경사항 가져오기

개발 작업공간이 저장소와 동기화되지 않은 경우 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. 선택사항: 변경사항을 푸시합니다.

다음 단계