SCMとSVNの違い
-
28-10-2019 - |
質問
SCMとSVNの違いは何ですか?そして、GitはMercurialとどのように異なりますか?
解決
通常、SCMは意味します ソフトウェア構成管理, 、バージョン化を含むCMRM(リリース管理への変更管理の変更)を含む。
SVNはaのみです VCS:バージョン制御ツール.
したがって、1つははるかに完全であり、開発ライフサイクルをより完全にカバーしていますが、ジェネリックです。チームファンド化サーバーまたはRTC-合理的なチームコンサートはどちらもSCMの例です。
他のヒント
SCMはソフトウェア構成管理であり、SVNはSCMのサブセットであるバージョン制御システムツールです。 VCはリビジョンコントロールとGITとも呼ばれ、MercurialはVCSツールでもあります(より具体的に分散されたVCS)。
SVN、Git、Mercurialなどは、SCMのプロセスの1つである改訂制御のためのツールです。 SCMには、ビルド管理、欠陥追跡なども含まれます。
SCMは一般的な用語であり、実際には何も意味しません。 「ソフトウェア構成管理」、「ソフトウェア変更管理」、および「ソースコード管理」を意味すると聞いていますが、おそらく他にもあります。それは基本的に私が知る限りマーケティングの話です。
後者のフレーズのようなものと見なす場合、SVN(Subversionの略語)、Git、およびMercurialはすべて特定のタイプのSCMシステムです。 GitとMercurialはほぼ同等です。わずかな違いがありますが、個人的な好みは実際には重要なことの大部分です。どちらも分散リビジョン制御システムと呼ばれるものです。つまり、中央の場所に依存してはならないことを意味します。それらを使用している各人は、独立して動作する可能性があり、すべてを多かれ少なかれ独立して同期します。
転覆は集中化されています。同じ種類の問題を解決することを目的としていますが、すべてのアクティビティに誰もが使用する1つの場所を通過することを強制することでそうします。これにより、多くのことが管理が容易になりますが、非常に大量の柔軟性を犠牲にしています。繰り返しますが、個人的な好みはあなたが好むでしょう。
私はGitとMercurialの両方を試しました(そして現在はMercurialを使用しています)。私が見たことから、Gitは少し速く、おそらくより多用途のように思えますが、それは学習曲線コストがあります。最初は両方を試してみたとき、私は他の同僚が情報に頼る同僚がいなかったので、gitの学習曲線は水銀の学習曲線よりも急勾配であることがわかりました。また、MercurialはWindows(私のメイン開発プラットフォーム)から使いやすいことがわかりました。
MercurialにはGitのサポートがあり、逆のこともおそらく真実ですので、おそらくどちらかを試して、必要があることがわかった場合は後で切り替えることができます。
svn(subversion) バージョンの機能を提供するツールです。開発者はこのツールを使用してコードをチェックインしました。これを使用して、ソフトウェア開発プロセス中にファイル/コードに加えられた変更を追跡できます。
ソフトウェア構成管理 ソフトウェア開発の変化を追跡および制御するために使用されるプラクティスです。ソフトウェアの構築、パッケージ、展開に必要なすべてのプロセスが含まれます。