Gitによる共同開発

Gitによる共同開発#

TwinCATでチーム開発を行う為の機能が大別して2つ用意されています。どちらもGitをコアに使った機能ですが、用途が異なります。

ソースコントロール機能

Visual StudioのTeam explorerを用いた、プロジェクト全体のGitによるバージョン管理機能を提供します。PLCの各言語に対する差分ビューワやマージツールと連携し、各リビジョン間の差分を把握する方法を提供します。GithubGitlabといった任意のリモートリポジトリを通して各開発者が行った個々の開発差分を統合することができます。

Tip

Gitlabはクラウドサービスだけではなく、独自インストーラにてクローズネットワーク内に配置するなど、オンプレミス運用が可能です。

同様のソフトウェアは他にGiteaがあります。

マルチユーザ機能

Gitコマンドや概念を理解することなく、通常の手順でIPCにプログラムを書き込む操作によってIPC上のリポジトリへ各開発者の行ったソースコード差分を統合します。チームで作業を行う場合においても競合する個所の変更を行った際に競合を対話的に解決する手段を提供したり、誰がいつ変更を行ったのか、等の追跡が可能になります。

簡単な反面、任意のブランチ管理などの機能はありません。また、リモートリポジトリをIPC以外に選択できないため、実機以外で他の開発者が行った変更差分のマージができません。

ここでは、ソースコントロール機能による共同開発手順についてご説明します。マルチユーザ機能については、「マルチユーザ機能」節を参照してください。