皆様、こんにちは!
Dynamics 365 Business CentralではExtensionのための開発環境としてVisual Studio Codeが導入されました。Visual Studio CodeはGitと統合されていますので、Gitを利用してソースコード管理をできるようになりました。
Gitのレポジトリーとしては、GitHubやAzure DevOps (旧Visual Studio Team Service)などのいくつかの選択肢があり、どのサービスを利用しても基本的な機能に差はありません。今回はBusiness Centralのソースコード管理方法について説明いたします。
最初はソースコード管理のイメージを見てみましょう。
ローカルで開発をしたALファイルをリモートレポジトリに同期します。(Pull or Push)
![](https://yzhums.com/wp-content/uploads/2020/09/図3-1024x393.png)
事前準備:
Visual Studio Code:ほぼすべての言語に対応し、任意のOSで動作する強力なコードエディター
ダウンロードURL:https://code.visualstudio.com/
![](https://yzhums.com/wp-content/uploads/2020/09/image.png)
Git(ギット):プログラムソースなどの変更履歴を管理する分散型のバージョン管理システムのことです。
ダウンロードURL:https://git-scm.com/
![](https://yzhums.com/wp-content/uploads/2020/09/image-1.png)
GitHubのアカウント:
https://github.com/
![](https://yzhums.com/wp-content/uploads/2020/09/image-2-1024x476.png)
或いは
Azure Devopsのアカウント:
https://azure.microsoft.com/ja-jp/services/devops/
![](https://yzhums.com/wp-content/uploads/2020/09/image-3-1024x400.png)
![](https://yzhums.com/wp-content/uploads/2020/09/image-4.png)
![](https://yzhums.com/wp-content/uploads/2020/09/image-5-1024x509.png)
GitHub:
まず新しいプロジェクトを作成します。
![](https://yzhums.com/wp-content/uploads/2020/09/image-6-1024x355.png)
リポジトリの名前を入力して、公開範囲を選びます。
![](https://yzhums.com/wp-content/uploads/2020/09/image-7.png)
作成完了。
![](https://yzhums.com/wp-content/uploads/2020/09/image-8-1024x481.png)
ローカルにクローン
一番簡単なやり方を紹介いたします。(DevOpsも共通している)
とあるフォルダーを開いた状態で「View -> Terminal」をクリックします。
![](https://yzhums.com/wp-content/uploads/2020/09/image-11.png)
コマンド:git clone + リポジトリのURL
「git clone https://github.com/yzhums/TestRepository.git」を入力して、「Enter」を押します。
![](https://yzhums.com/wp-content/uploads/2020/09/image-10.png)
リポジトリのフォルダーをダウンロードできました。
![](https://yzhums.com/wp-content/uploads/2020/09/image-12.png)
このフォルダーでコーディングします。
コードの追加及び修正と伴い、Source Controlの数字が増えます。
![](https://yzhums.com/wp-content/uploads/2020/09/image-13-1024x510.png)
「Stage All Changes」をクリックします。
![](https://yzhums.com/wp-content/uploads/2020/09/image-14.png)
コミットメッセージを入力して、「✔」をクリックします。
![](https://yzhums.com/wp-content/uploads/2020/09/image-15.png)
コミットされたChangesが消えます。
![](https://yzhums.com/wp-content/uploads/2020/09/image-17.png)
場合によって、コミットする前に下記のコマンドを実行する必要があります。
*** Please tell me who you are.
Run
git config --global user.email "you@example.com"
git config --global user.name "Your Name"
例:
git config --global user.email "you@example.com"
git config --global user.name "Your Name"
例:
git config --global user.email "yzhums@outlook.jp"
![](https://yzhums.com/wp-content/uploads/2020/09/image-16.png)
リモートリポジトリに同期します。
「… ->Pull,Push -> Push」をクリックします。
Push: Upload
Pull: Download
![](https://yzhums.com/wp-content/uploads/2020/09/image-19.png)
最初の一回だけGitHubのログイン情報を入力する必要があります。
![](https://yzhums.com/wp-content/uploads/2020/09/image-20.png)
完了した後で、GitHubのウェブサイトに戻して、ソースコードを確定します。
アップロード成功しました。
![](https://yzhums.com/wp-content/uploads/2020/09/image-21-1024x476.png)
Azure DevOps:基本的にはGitHubと同じですが、もう一度詳しく説明させていただきます。
プロジェクトを作成します。
![](https://yzhums.com/wp-content/uploads/2020/09/image-22-1024x341.png)
プロジェクトの名前を入力して、公開範囲を選びます。
![](https://yzhums.com/wp-content/uploads/2020/09/image-23.png)
作成完了。
![](https://yzhums.com/wp-content/uploads/2020/09/image-24-1024x488.png)
「Repos」をクリックして、リポジトリを開きます。
![](https://yzhums.com/wp-content/uploads/2020/09/image-25-1024x491.png)
ローカルにクローン
前のGitHubで使った方法を紹介いたします。
とあるフォルダーを開いた状態で「View -> Terminal」をクリックします。
![](https://yzhums.com/wp-content/uploads/2020/09/image-27.png)
URLをコピーします。
![](https://yzhums.com/wp-content/uploads/2020/09/image-26.png)
git clone + リポジトリのURL
「git clone https://yzhums@dev.azure.com/yzhums/TestProject/_git/TestProject」を入力して、「Enter」を押します。
![](https://yzhums.com/wp-content/uploads/2020/09/image-28.png)
リポジトリのフォルダーをダウンロードできました。
![](https://yzhums.com/wp-content/uploads/2020/09/image-29.png)
このフォルダーでコーディングします。
コードの追加及び修正と伴い、Source Controlの数字が増えます。
![](https://yzhums.com/wp-content/uploads/2020/09/image-30-1024x566.png)
「Stage All Changes」をクリックします。
![](https://yzhums.com/wp-content/uploads/2020/09/image-31.png)
コミットメッセージを入力して、「✔」をクリックします。
![](https://yzhums.com/wp-content/uploads/2020/09/image-32.png)
コミットされたChangesが消えます。
![](https://yzhums.com/wp-content/uploads/2020/09/image-33.png)
GitHubの時と同様に場合によって、コミットする前に下記のコマンドを実行する必要があります。
*** Please tell me who you are.
Run
git config –global user.email “you@example.com”
git config –global user.name “Your Name”
例:
git config –global user.email “yzhums@outlook.jp”
![](https://yzhums.com/wp-content/uploads/2020/09/image-16.png)
リモートリポジトリに同期します。
「… ->Pull,Push -> Push」をクリックします。
Push: Upload
Pull: Download
![](https://yzhums.com/wp-content/uploads/2020/09/image-34.png)
最初の一回だけAzure DevOpsのログイン情報を入力する必要があります。
![](https://yzhums.com/wp-content/uploads/2020/09/image-35-1024x495.png)
完了した後で、Azure DevOpsのウェブサイトに戻して、ソースコードを確定します。
アップロード成功しました。
![](https://yzhums.com/wp-content/uploads/2020/09/image-36-1024x494.png)
追記:
1..gitignoreファイル
Git の管理に含めないファイルを設定するためのファイルです。
下記のような拡張子がないファイルです。
![](https://yzhums.com/wp-content/uploads/2020/09/image-37.png)
![](https://yzhums.com/wp-content/uploads/2020/09/image-38.png)
.gitignoreの基本の書き方
■ファイル名を直接指定した場合、対象のファイルはgitの管理外となります。
launch.json
■ディレクトリ名を指定した場合,対象のディレクトリはgitの管理外となります。
.vscode/
■ * を使うと特定の種類のファイルをgitの管理外とすることができます。
*.app
■! を使うと、gitの管理対象とします。以下は、htmlファイルを管理外とするが、sample.htmlだけは管理対象とする例です。
*.html
!sample.html
■ # で始まる行はコメントです。
# コメントです
2.Merge
ローカルのソースコードはリモートリポジトリで保存されたソースコードと一致していない場合、同期した後で、ソースコードをマージする必要があります。
![](https://yzhums.com/wp-content/uploads/2020/09/image-39-1024x385.png)
3.ウェブサイトからソースコードを確定
GitHubとAzure DevOpsではソースコードを両方確定できます。
![](https://yzhums.com/wp-content/uploads/2020/09/image-40-1024x492.png)
![](https://yzhums.com/wp-content/uploads/2020/09/image-41-1024x603.png)
4.Historyの確認
![](https://yzhums.com/wp-content/uploads/2020/09/image-42-1024x264.png)
![](https://yzhums.com/wp-content/uploads/2020/09/image-43-1024x463.png)
5.Branchの作成
![](https://yzhums.com/wp-content/uploads/2020/09/image-45-1024x391.png)
![](https://yzhums.com/wp-content/uploads/2020/09/image-44-1024x464.png)
今回の記事ではソースコード管理に関する基本的なことを説明しましたので、興味のある方は下記のリンクを参考してもっと勉強しましょう。
GitHub:
https://github.co.jp/features
Azure DevOps:
https://docs.microsoft.com/ja-jp/azure/devops/index?view=azure-devops
以上
コメント