Main Content

最新のリリースでは、このページがまだ翻訳されていません。 このページの最新版は英語でご覧になれます。

Git でのファイルのプル、プッシュおよび取得

このワークフローを使用して、リモート リポジトリを操作します。Git™ では、2 ステップのワークフローがあります。最初にローカル変更をコミットし、次にリモート リポジトリにプッシュします。MATLAB® では、リモート リポジトリへのアクセスのみが [プル][プッシュ] および [取得] のメニュー オプションで行われます。その他のすべてのアクション ([先祖と比較] および [コミット] など) は、ローカル リポジトリを使用します。次の図は、Git のワークフローを表します。

プルとプッシュ

最新の変更を取得するには、現在のフォルダー ブラウザーを右クリックして [ソース管理][プル] を選択します。プルは、最新の変更を取得し、現在のブランチにそれらをマージします。リポジトリから入ってくる内容が不明な場合は、まず取得を使用して変更を確認してから、変更を手動でマージします。

メモ

マージするには、事前にコマンド ライン Git をインストールしてバイナリ ファイルを登録し、Git が競合マーカーを挿入するのを防がなければなりません。コマンド ライン Git クライアントのインストールと MATLAB インストールの構成を参照してください。

競合があると、プルが失敗する場合があります。複雑な変更の場合は、オリジナルからブランチを作成し、互換性の変更を行ってから、そのブランチをメインのトラッキング ブランチにマージすることをお勧めします。

ローカル リポジトリに変更をコミットするには、現在のフォルダー ブラウザーを右クリックして [ソース管理][変更の表示とコミット] を選択します。

ローカルの変更がリモート トラッキング ブランチより進んでいるかどうかを確認するには、現在のフォルダー ブラウザーでファイルまたは空白を右クリックし、[ソース管理][詳細の表示] を選択します。[Git 情報] フィールドに、コミットしたローカルの変更がリモート トラッキング ブランチよりも進んでいるか、遅れているかまたは一致しているかが示されます。

リモート リポジトリにローカル コミットを送信するには、現在のフォルダー ブラウザーで右クリックし、[ソース管理][プッシュ] を選択します。リポジトリが更新されたために変更を直接プッシュできない場合は、メッセージが表示されます。現在のフォルダー ブラウザーで右クリックし、[ソース管理][取得] を選択してリモート リポジトリからすべての変更を取得します。ブランチをマージし、競合を解決してから変更をプッシュできます。

Git を使用して、ソース管理に空のフォルダーを追加できないため、[プッシュ] を選択して空のフォルダーをクローンできません。MATLAB で空のフォルダーを作成できますが、変更をプッシュして新しいサンドボックスを同期すると、新しいサンドボックスに空のフォルダーは表示されません。空のフォルダーをリポジトリにプッシュして他のユーザーと同期できるようにするには、このフォルダーに gitignore ファイルを作成してから、変更をプッシュします。

取得とマージ

[取得] を使用して変更を取得し、手動でマージします。代わりに [プル] を使用すると、最新の変更を取得して現在のブランチにマージできます。

メモ

取得後はマージしなければなりません。ブランチをマージするには、事前にコマンド ライン Git をインストールしてバイナリ ファイルを登録し、Git が競合マーカーを挿入するのを防がなければなりません。コマンド ライン Git クライアントのインストールと MATLAB インストールの構成を参照してください。

リモート リポジトリから変更を取得するには、現在のフォルダー ブラウザーで右クリックし、[ソース管理][取得] を選択します。取得により、ローカル リポジトリ内の元のブランチがすべて更新されます。使用しているサンドボックスのファイルは変更されません。他のユーザーの変更を確認するには、元のブランチの変更をローカル ブランチにマージしなければなりません。

リポジトリ内のリモート トラッキング ブランチに対する現在のブランチに関する情報を確認するには、現在のフォルダー ブラウザー内のファイルまたは空白を右クリックして、[ソース管理][詳細の表示] を選択します。[Git 情報] フィールドに、コミットしたローカルの変更がリモート トラッキング ブランチよりも進んでいるか、遅れているかまたは一致しているかが示されます。メッセージ Behind が表示されている場合は、リポジトリの変更内容をローカル ブランチにマージしなければなりません。

たとえば、マスター ブランチで操作している場合に、リモート リポジトリのマスター ブランチからすべての変更を取得するとします。

  1. 現在のフォルダー ブラウザーで右クリックし、[ソース管理][取得] を選択します。

  2. 現在のフォルダー ブラウザーで右クリックし、[ソース管理][ブランチ] を選択します。

  3. [ブランチ] ダイアログ ボックスの [ブランチ] リストで [origin/master] を選択します。

  4. [マージ] をクリックします。これにより、元のブランチの変更がサンドボックスのマスター ブランチにマージされます。

現在のフォルダー ブラウザーを右クリックして [ソース管理][詳細の表示] を選択すると、[Git 情報] フィールドに Coincident with /origin/master と示されます。これで、リモート リポジトリから取得し、ローカル サンドボックスにマージした変更を表示できます。

Git stash の使用

Git stash を作成して、コミットされていない変更を後で使用するために保存します。stash は以下に使用します。

  • 変更したファイルをコミットせずに保存する。

  • 変更を新しいブランチに簡単に移動させる。

  • stash 内で変更を参照し、調べる。

stash を作成および管理するには、現在のフォルダー ブラウザーで、Git で管理されているフォルダー内の空白を右クリックし、[ソース管理][一時退避] を選択します。

[一時退避] ダイアログ ボックスにおいて、

  • 現在変更しているファイルを含む stash を作成するには、[新規一時退避] をクリックします。

  • stash 内の変更されたファイルを表示するには、[使用可能な一時退避] 下の stash を選択します。変更したファイルを右クリックして変更を表示したりコピーを保存できます。

  • stash を現在のブランチに適用してから stash を削除するには、[ポップ] をクリックします。

  • stash を適用して維持するには、[適用] をクリックします。

  • stash を削除するには、[削除] をクリックします。

関連するトピック