このページの内容は最新ではありません。最新版の英語を参照するには、ここをクリックします。
Git ソース管理の設定
MATLAB® で Git™ ソース管理を使用すると、ファイルを管理して他のユーザーと共同作業を行うことができます。Git を使用すると、ファイルの変更を追跡して、後で特定のバージョンを再表示できます。詳細については、MATLAB での Git の使用を参照してください。
Git を使用する前に、次の手順に従って MATLAB 用に設定します。
ファイルの破損を避けるために、バイナリ ファイルを Git に登録する。(すべてのシステムで必須)
Windows® システムで MATLAB を Git 用に設定する。(Windows システムで推奨)
ログイン プロンプトが頻繁に表示されないようにするために、Git SSH 認証を使用するように MATLAB を設定するか、Git 資格情報ヘルパーをインストールする。(オプション)
Git リポジトリのサイズを削減するために、Simulink® モデルの圧縮を無効にする。(オプション)
大規模なファイルを取り扱う場合は、Git LFS を使用するように Git を設定する。(オプション)
比較とマージに MATLAB を使用するように Git を設定する。(オプション)
R2020b より前では、Git を使用して MATLAB でブランチをマージするには、コマンド ライン版の Git クライアントをインストールする必要があります。詳細については、コマンド ライン版の Git クライアントのインストールを参照してください。
バイナリ ファイルの Git への登録
サードパーティのソース管理ツールを使用する場合、MATLAB および Simulink のファイル拡張子 (.mlx
、.mat
、.fig
、.mlapp
、.mdl
、.slx
、.mdlp
、.slxp
、.sldd
、.p
など) をバイナリ形式で登録しなければなりません。また、.mexa64
、.mexmaci64
、.mexmaca64
、.mexw64
など、MEX ファイルの拡張子も登録します。拡張子を登録しないと、ファイルを送信するときに、行末の文字の変更、トークンの展開、キーワードの代入または automerge の試行によって、これらのツールがファイルを破損する可能性があります。ファイルの破損は MATLAB の外部でソース管理ツールを使用する場合、あるいはファイル形式を最初に登録せずに MATLAB からファイルを送信しようとする場合に発生することがあります。
また、ファイルのチェックイン時の破損を避けるために、他のファイル拡張子がバイナリとして登録されていることも確認してください。.xlsx
、.jpg
、.pdf
、.docx
などのファイル拡張子を確認し登録します。
バイナリ ファイルの拡張子を Git に登録するには、その拡張子を .gitattributes
ファイルに追加します。Git ソース管理を使用する新規プロジェクトを作成するか、既存のプロジェクトを他のソース管理システムから Git ソース管理に切り替えると、MATLAB は自動的に .gitattributes
ファイルを作成し、登録する共通のバイナリ ファイルのリストを入力します。
.gitattributes
ファイルが自動的に作成されない場合は、登録する共通のバイナリ ファイルのリストを含むファイルを作成できます。MATLAB コマンド ウィンドウで以下のように入力します。
copyfile(fullfile(matlabroot,'toolbox','shared','cmlink','git','auxiliary_files', ... 'mwgitattributes'),fullfile(pwd,'.gitattributes'))
あるいは、空の .gitattributes
ファイルを作成するには、以下のように入力します。
edit .gitattributes
.gitattributes
ファイルにまだ含まれていないバイナリ ファイルを登録するには、必要な各ファイル タイプの行をそのファイルに追加します。たとえば、*.mlapp binary
のようになります。
Windows での MATLAB の Git 用の設定
Windows システムでパスの長いファイルを取り扱う場合は、長いパスのサポートを有効にします。また、Git フックを MATLAB で使用するには、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 圧縮レベルの設定 (Simulink)を参照してください。
メモ
R2023b 以降、既定では、Simulink は保存操作中に圧縮を適用しません。
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 のロックをサポートしません。また、MATLAB は git lfs track
などの LFS コマンドもサポートしません。代わりに !git lfs track
を使用してください。
比較とマージに MATLAB を使用するための Git の設定
比較とマージに MATLAB 比較ツールを使用するように Git を設定できます。MATLAB 比較ツールには、ライブ スクリプト、MAT ファイル、SLX ファイル、MDL ファイルなどの MathWorks® ファイルをマージするためのツールが用意されています。この自動マージツールを Git と共に使用して、同じ SLX ファイル内に異なるサブシステムの変更を含むブランチを自動的にマージできます。
MATLAB 比較ツールを使用するように Git を設定する方法の詳細については、比較とマージに MATLAB を使用するための外部ソース管理のカスタマイズを参照してください。
コマンド ライン版の Git クライアントのインストール
Git LFS または資格情報ヘルパーを使用するには、コマンド ライン版の Git クライアントをインストールして、システム全体で使用できるようにする必要があります。R2020b より前では、Git を使用して MATLAB でブランチをマージするには、コマンド ライン版の 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を参照してください。 |