SCMのコンセプト
-
ブランチングにより、開発者は、メインの開発ラインを阻害することなく、コードを分離し、単独で作業できます。
[Branch] (ブランチ)は、特定の時点(他の環境へのプロモーション用に新しいリリースを準備する場合など)に取得されるプロジェクトのコピーです。コピーは、メインの開発ラインから、別の[Branch] (ブランチ)または[Tag] (タグ)から、取得できます。ブランチは編集可能です。したがって、元のソースから"フォーク"できます。この場合、元のソース(ブランチまたはトランク)とフォークされたブランチ間の調整は手動で行う必要があります。
-
マージングにより、開発者は複数の開発ブランチとその対応するコミット履歴を結合できます。Gitマージングのコンセプトについては、Gitマージのドキュメンテーション (英語のみ)をご覧ください。
-
タグ付けによって開発者は、開発プロセスにおける特定のリビジョン/コミットを重要なものとしてマークできます。タグを使うと、以前の開発段階でジョブのデプロイに使用したものとまったく同じバージョンでエラーを修正することも可能です。
[Tag] (タグ)はブランチと似ていますが、トランク/メインまたはブランチの読み取り専用のスナップショットです。作成後は編集できません。ただし、タグから新しいブランチ(編集可能)を作成することは可能です。
開発チームには、使用するワークフローを定義することが期待されています。
SVNとGitの違いについては、このGitHubドキュメンテーションの記事 (英語のみ)を参照してください。
Talend StudioでのSVNの公式サポートはバージョン7.3より非推奨になっていますが、SVNの概念であるブランチの分岐は、TalendによるGItでは引き続き利用できます。
Gitフローについては、このGitHubビジュアルチュートリアル (英語のみ)をご覧ください。