このページの翻訳は最新ではありません。ここをクリックして、英語の最新版を参照してください。
Git ソース管理の設定
MATLAB® では、ファイルの管理や他のユーザーとの共同作業に Git™ ソース管理を使用できます。Git を使用すると、ファイルに対する変更を追跡し、特定のバージョンを後で再度呼び出すことができます。詳細については、Git リポジトリのクローンおよびプロジェクトをソース管理に追加するを参照してください。
Git を使用する前に、次の手順に従って MATLAB 用に設定します。
ファイルの破損を避けるためにバイナリ ファイルを Git に登録する。(すべてのシステムに必須)
Windows® システムで Git 用に MATLAB を構成する。(Windows システムに推奨)
頻繁なログイン要求を回避するために、Git SSH 認証を使用するように MATLAB を構成するか、Git 資格情報ヘルパーをインストールする。(オプション)
Git リポジトリのサイズを削減するために Simulink® モデルの圧縮を無効にする。(オプション)
大きなファイルを扱う場合は Git LFS を使用するように Git を構成する。(オプション)
比較とマージに MATLAB を使用するように Git を構成する。(オプション)
R2020b より前の場合は、MATLAB で Git を使用してブランチをマージするために、コマンド ライン版の Git クライアントをインストールする必要があります。詳細については、コマンド ライン版の Git クライアントのインストールを参照してください。
Git へのバイナリ ファイルの登録
サードパーティのソース管理ツールを使用する場合は、MATLAB および Simulink の .mlx
、.mat
、.fig
、.mlapp
、.mdl
、.slx
、.mdlp
、.slxp
、.sldd
、.p
などのファイル拡張子をバイナリ形式で登録する必要があります。.mexa64
、.mexmaci64
、.mexw64
などの MEX ファイルの拡張子も登録します。拡張子を登録しないと、ファイルを送信するときに、それらのツールによる行末の文字の変更、トークンの展開、キーワードの代入、自動マージの試行によって、ファイルが破損する可能性があります。ファイルの破損は、MATLAB の外部のソース管理ツールを使用する場合、あるいはファイル形式を最初に登録しないで MATLAB からファイルを送信しようとした場合に発生することがあります。
また、チェックイン時の破損を避けるために、他のファイル拡張子もバイナリとして登録されていることを確認してください。.xlsx
、.jpg
、.pdf
、.docx
などのファイル拡張子を確認して登録します。
バイナリ ファイルの拡張子を Git に登録するには、それらを .gitattributes
ファイルに追加します。MATLAB では、Git ソース管理を使用する新しいプロジェクトを作成するか、既存のプロジェクトを別のソース管理システムから Git ソース管理に切り替えると、.gitattributes
ファイルが自動的に作成され、登録する共通のバイナリ ファイルのリストが取り込まれます。
.gitattributes
ファイルが自動的に作成されない場合は、登録する共通のバイナリ ファイルのリストを含むファイルを作成できます。MATLAB コマンド ウィンドウで次のように入力します。
copyfile(fullfile(matlabroot,'toolbox','shared','cmlink','git','auxiliary_files', ... 'mwgitattributes'),fullfile(pwd,'.gitattributes'))
あるいは、空の .gitattributes
ファイルを作成するには次のように入力します。
edit .gitattributes
.gitattributes
ファイルにまだ含まれていないバイナリ ファイルを登録するには、必要な各ファイル タイプの行をファイルに追加します。たとえば、*.mlapp binary
とします。
Windows システムでの Git 用の MATLAB の構成
Windows システムでパスが長いファイルを扱う場合は、長いパスのサポートを有効にします。また、MATLAB で Git フックを使用するには、Cygwin をインストールして MATLAB ライブラリ パスに追加します。Git フックは、コミット、マージ、プッシュされたコミットの受信などの操作でトリガーできるカスタム スクリプトです。
長いパスのサポートの有効化 (推奨)
Windows システムで長いパスのサポートを有効にするには、MATLAB で次のコマンドを実行します。
!git config --global core.longpaths true
Cygwin のインストール (オプション)
Windows システムで Cygwin をインストールするには、MATLAB ライブラリ パスに追加します。
https://www.cygwin.com/からインストーラーをダウンロードして実行します。
MATLAB で
librarypath.txt
を開きます。edit(fullfile(matlabroot,"toolbox","local","librarypath.txt"))
librarypath.txt
の末尾に、Cygwin の bin フォルダーの場所 (C:\cygwin64\bin
など) を追加します。## ## FILE: librarypath.txt ## ## Entries: ## o path_to_jnifile ## o [alpha,glnx86,sol2,unix,win32,mac]=path_to_jnifile ## o $matlabroot/path_to_jnifile ## o $jre_home/path_to_jnifile ## $matlabroot/bin/$arch $matlabroot/sys/jxbrowser/$arch/lib C:\cygwin64\bin
librarypath.txt
ファイルの編集権限がない場合は、ネイティブ メソッド ライブラリの特定を参照してください。MATLAB を再起動します。
Git SSH 認証を使用するための MATLAB の構成
HTTPS を使用してリモート リポジトリとやり取りする際にログイン プロンプトが頻繁に表示されないようにするには、代わりに SSH を使用して新しい公開鍵を追加し、リポジトリのクローンを作成します。次の表に、SSH 認証を使用するように MATLAB を構成する方法をオペレーティング システム別に示します。
オペレーティング システム | 手順 |
---|---|
Windows |
|
Linux® および macOS |
|
Git 資格情報ヘルパーのインストール
R2021a 以降
Git の使用時にユーザー名とパスワードを記憶するように MATLAB を構成するには、資格情報ヘルパーをインストールします。推奨される資格情報ヘルパーは、すべてのプラットフォームで Git Credential Manager Core です。
たとえば、Windows システムで Git Credential Manager Core をインストールするには、コマンド ライン版の Git クライアントのインストールに記載された手順に従って Git for Windows インストーラーをダウンロードして実行します。インストーラーの [Choose a credential helper] セクションで、資格情報ヘルパーとして [Git Credential Manager Core] を選択します。
Git リポジトリの保存されたログイン情報を削除するには、オペレーティング システム別の手順に従います。
オペレーティング システム | 手順 |
---|---|
Windows | リポジトリの Git 資格情報をリセットするには、資格情報マネージャーの [Windows 資格情報] タブで、[汎用資格情報] の下にあるエントリを削除します。 |
Linux および macOS | リポジトリの Git 資格情報をリセットするには、次のように入力します。 echo "url=https://github.com/myrepo.git" | git credential reject |
Simulink モデルの圧縮の無効化
Simulink モデルを圧縮せずに保存することで、Git リポジトリのサイズを削減できます。圧縮をオフにすると、ディスク上の SLX ファイルのサイズは大きくなりますが、リポジトリのサイズは小さくなります。
この設定を新しい SLX ファイルで使用するには、[SLX 圧縮] を [なし] に設定したモデル テンプレートを使用してモデルを作成します。既存の SLX ファイルについては、圧縮を設定してからモデルを保存します。詳細については、SLX 圧縮レベルの設定を参照してください。
Git LFS を使用するための Git の構成
R2021a 以降
大きなファイルを扱う場合は、Git Large File Storage (LFS) を使用するように Git を構成します。そのためには、コマンド ライン版の Git をインストールして LFS を設定します。
たとえば、Windows システムで Git LFS を使用するには、コマンド ライン版の Git クライアントのインストールに記載された手順に従って Git for Windows インストーラーをダウンロードして実行します。Git for Windows インストーラーの [Select Components] セクションで、[Git LFS (Large File Support)] オプションと [Associate .sh files to be run with Bash] オプションを選択します。
MATLAB は Git LFS のロックをサポートしません。また、git lfs track
などの LFS コマンドも MATLAB ではサポートされていません。代わりに !git lfs track
を使用してください。
メモ
Git LFS は Git フックを使用します。Cygwin がインストールされていることを確認してください。詳細については、Windows システムでの Git 用の MATLAB の構成を参照してください。
比較とマージに MATLAB を使用するための Git の構成
比較とマージに MATLAB 比較ツールを使用するように Git を構成できます。MATLAB 比較ツールには、ライブ スクリプト、MAT ファイル、SLX ファイル、MDL ファイルなどの MathWorks® ファイルをマージするためのツールが用意されています。この自動マージ ツールを Git と共に使用して、同じ SLX ファイル内に異なるサブシステムの変更を含むブランチを自動的にマージできます。
MATLAB 比較ツールを使用するための Git の構成方法の詳細については、MATLAB を比較とマージに使用するための外部ソース管理のカスタマイズを参照してください。
コマンド ライン版の Git クライアントのインストール
Git LFS または資格情報ヘルパーを使用するには、コマンド ライン版の Git クライアントをインストールし、システム全体で使用できるようにする必要があります。R2020b より前の場合は、MATLAB で Git を使用してブランチをマージするために、コマンド ライン版の Git クライアントをインストールする必要があります。
Git がインストールされているかどうかを確認するには、MATLAB コマンド ウィンドウでコマンド !git
を入力します。このコマンドから何も返されない場合、コマンド ライン版の Git をインストールする必要があります。次の表に、コマンド ライン版の Git をインストールする方法をオペレーティング システム別に示します。
オペレーティング システム | 手順 |
---|---|
Windows |
|
Linux | ほとんどのディストリビューションで Git を利用できます。ディストリビューションに対応する Git をインストールします。たとえば、Debian® で Git をインストールするには次のように入力します。 sudo apt-get install git |
macOS | Mavericks (10.9) 以上で、ターミナル ウィンドウから Git を実行します。Git をまだインストールしていない場合、Xcode Command Line Tools をインストールするように求められます。詳細については、https://git-scm.com/docを参照してください。 |