2.4. リポジトリー管理機能

リポジトリー管理機能とは、Gitサーバーと連携し、ノートブックやファイルをリポジトリー上で管理する機能です。

Jupyterの画面上から、以下の機能が利用できます。

  • Gitサーバーにあるリポジトリーをホームディレクトリー以下(ユーザー環境)にクローンし、Gitサーバー上にあるファイルを取得する
  • GitサーバーからJupyter環境にリポジトリーをプルし、ユーザー環境のリポジトリーに変更を反映する
  • ユーザー環境からGitサーバー上にリポジトリーをプッシュし、ユーザーが行ったファイルの変更をGitサーバーのリポジトリーに反映する
  • ユーザー環境のリポジトリーを削除する

また、Gitサーバーの機能を利用して、リポジトリーのアクセス権制御などを行うこともできます。

2.4.1. リポジトリーをクローンする

(1)ダッシュボード画面から、ツールバー右側にあるAdd repositoryボタンをクリックします。

ダッシュボード画面

(2)Add repositoryダイアログにGitサーバーのリポジトリーのURLを入力します。

ダイアログ画面

URLのプロトコルがhttpまたはhttpsの場合、サーバー接続用のユーザー名とパスワードを入力してください。

ssh接続する場合はユーザー名やパスワードの入力は不要ですが、事前に リポジトリー管理機能でGitサーバーにssh接続する の手順に従いsshの設定をしてください。

注釈

Jupyterのログインユーザー名とパスワードではなく、Gitサーバーのユーザー名とパスワードを入力してください。

(3)Addボタンを押すと、Gitサーバーにあるリポジトリーをユーザー環境にクローンし、作業ディレクトリーを作成します。

ダッシュボード画面

クローンに失敗した場合、Add repositoryダイアログにエラーメッセージを表示します。

ダイアログ画面

エラーメッセージが表示された場合は、OKボタンを押してダイアログを閉じます。 接続情報に誤りがあった場合、再度Add repositoryダイアログを開いて正しい情報を入力してください。

2.4.2. リポジトリーをプルする

(1)ダッシュボード画面から、作業ディレクトリー内に移動し、ツールバー右側にあるPullボタンをクリックします。

ダッシュボード画面

(2)Pullダイアログを表示します。

ダイアログ画面

Pullダイアログでは以下の2種類のプル操作を使用できます。

  • Pull

    git pullコマンドを実行します。 作業ディレクトリー上に、Gitサーバーのリポジトリーに反映していない変更がある場合、エラーが発生します。

    ダイアログ画面

    このとき、エラーログがダイアログに出力されます。エラーログにはエラーになったファイル名が表示されます。 表示されたファイルの差分を解消するか、ファイルを削除またはリネームしたうえでプルし直してください。

  • Pull Force

    git pullコマンドを実行します。 作業ディレクトリー上に、Gitサーバーのリポジトリーに反映していない変更がある場合、作業ディレクトリーにあるファイルはGitサーバー上の内容に強制的に上書きされます。

2.4.3. リポジトリーをプッシュする

(1)ダッシュボード画面から、作業ディレクトリー内に移動し、ツールバー右側にあるPushボタンをクリックします。

ダッシュボード画面

(2)Pushダイアログを表示します。

ダッシュボード画面

Pushボタンを押すと、Gitサーバーのリポジトリーのmasterブランチに作業ディレクトリーの変更内容をプッシュします。 このとき、コミット時のメッセージは"uploaded-by-(ユーザー名)"という固定のメッセージになります。

2.4.4. リポジトリーを削除する

(1)ダッシュボード画面から、作業ディレクトリー内に移動し、ツールバー右側にあるDelete repositoryボタンをクリックします。

ダッシュボード画面

(2)Delete repositoryダイアログが表示されます。

ダッシュボード画面

「作業ディレクトリも削除する」というチェックボックスをチェックせずにOKボタンを押した場合、 作業ディレクトリーのファイルを残したまま、gitのリポジトリーディレクトリー(.git)のみが削除され、PullやPushができなくなります。

「作業ディレクトリも削除する」をチェックしOKボタンを押した場合、以下の画像のように作業ディレクトリーそのものが削除されます。

ダッシュボード画面

この場合、ダッシュボード画面には何も表示されないため、Jupyterロゴや folder アイコンをクリックし、上位ディレクトリーに移動してください。

2.4.5. Gitサーバーの機能を利用する

以下の機能は、Gitサーバーの機能を利用します。詳細は、Gitサーバーのドキュメント(GitLabの公式ドキュメントGitBucketの公式ドキュメント)を参照してください。

  • Gitサーバー上のリポジトリーを管理する
  • Gitユーザーやグループを管理する
  • リポジトリーにアクセスできるユーザーを限定する