SnowflakeでのGitリポジトリの使用¶
リモートのGitリポジトリをSnowflakeと統合することで、リポジトリからのファイルを リポジトリステージ と呼ばれる特別なステージに同期させることができます。リポジトリステージは、ブランチ、タグ、コミットを含むリモートリポジトリの完全なクローンを持つローカルGitリポジトリとして動作します。
リポジトリステージを作成した後、Snowflakeコードでリポジトリステージ上のリポジトリファイルを参照できます。たとえば、ストアドプロシージャを作成するときに、リポジトリステージからファイルをインポートし、それをプロシージャのハンドラーとして使用できます。
統合されたGitリポジトリを使用すると、次のことが可能になります。
Snowflakeアプリケーションで使用するために、リモートGitリポジトリからSnowflakeリポジトリステージにファイルを取得します。
リポジトリステージにあるファイルは、リポジトリの完全なクローンを表し、リポジトリの変更に応じてリフレッシュできます。
リポジトリステージを操作して、ブランチとタグに関する情報を表示します。
リモートリポジトリから同期されたリポジトリステージから、Snowflakeで実行するコードにファイルをインポートします。
たとえば、リポジトリから同期されたリポジトリステージによってハンドラーコードが保持されるプロシージャとユーザー定義関数(UDFs)を記述できます。
Snowflakeでは、任意のブランチ、タグ、コミットのファイルを使用します。
SnowflakeがGitリポジトリで動作する方法¶
リモートGitリポジトリをSnowflakeアカウントに統合すると、リモートリポジトリからSnowflakeの リポジトリステージ にファイルを同期できます。Snowflake内のファイルにアクセスするには、リポジトリステージでファイルを参照します。リポジトリファイルの使用に関する詳細については、 Gitリポジトリファイルをストアドプロシージャのハンドラーとして使用します。 をご参照ください。

Snowflakeリポリトジステージ¶
リポジトリステージは、リポジトリのSnowflake表現です。ローカルのGitリポジトリと同様に、リモートリポジトリからのすべてのブランチ、タグ、コミットを含む完全なクローンです。
リポジトリコンテンツがリポジトリステージに置かれた後、ステージ上の他のファイルと同じように、リポジトリステージのファイルを参照できます。リポジトリステージに対して GET コマンドを実行できますが、他のほとんどの通常のステージコマンドはリポジトリステージには適用できないことに注意してください。
ローカルリポジトリでは、Gitコマンドと同じような操作を実行できます。たとえば、次の操作を実行できます。
リポジトリを取得 して、リポジトリが変更されたときにリポジトリステージをリフレッシュします。
リポジトリステージに含まれる リポジトリブランチまたはタグを表示 します。
リポジトリステージは、リポジトリとSnowflakeの統合に特化した追加プロパティを持つ特別な種類のステージです。これらのプロパティには次が含まれます。
Gitリポジトリのオリジンの場所。
認証のための認証情報を含むシークレット(必要な場合)。
SnowflakeがGit API とやり取りする方法を指定するSnowflake API 統合。
詳細については、 リポジトリステージのプロパティを表示する をご参照ください。
Gitリポジトリと開発ツール¶
リポジトリをSnowflakeと統合した後も、開発ツールとローカルリポジトリはこれまでどおり引き続き使用できます。言い換えると、Snowflakeはローカルリポジトリとは別のリポジトリクライアントになります。
サポートされているプラットフォーム¶
現在、次のGitプラットフォームにGitリポジトリを統合できます。
GitHub
GitLab
BitBucket
Azure DevOps
AWS CodeCommit