SVN と TortoiseSVN の主な違いは、SVN が分散型バージョン管理システムであるのに対し、TortoiseSVN は Microsoft Windows のシェル拡張として実装された SVN クライアントであることです。
全体として、バージョン管理は、文書、コンピュータープログラム、Webサイト、その他のデータに加えられた変更を管理するプロセスです。
ソフトウェア構成管理の構成要素です。
バージョン管理は、ソース管理またはリビジョン管理とも呼ばれます。
バージョン管理システムには様々なものがあります。
簡単に説明すると、SVN(Subversion)はその1つで、TortoiseSVNはSubversionのクライアントです。
SVNとは
SVNはApache Subversionの略で、分散型ソフトウェアバージョン管理システムです。
SVNは、開発者がソースコード、Webページ、ドキュメントのバージョンを保存するのに役立ちます。
また、Apache Software Foundation、Free Pascal、SourceForgeなど、さまざまなプロジェクトで使用されています。
SVNは複数の機能を備えています。
コミットコマンドは、永続的な変更を行うために使用します。
SVN はコミット操作を真のアトミック操作として提供します。
ファイルのリネーム、コピー、移動、削除が可能です。
SVN はすべてのバージョンを保存することができます。
したがって、開発者は現在のバージョンと以前のバージョンの履歴を見ることができます。
また、ブランチやマージの機能も備えています。
さらに、SVNはC#、Java、Python、PHP、Rubyなどの様々なバインディングに対応した言語バインディングも備えており、ネイティブのバイナリファイルをサポートします。
SVNリポジトリストレージの種類
SVN のリポジトリストレージの種類は以下の 3 つです。
Berkeley DB (deprecated) – オリジナルの SVN 開発ではこのパッケージを使用していました。
FSFS – ファイル数の多いディレクトリでは、Berkeley DB バックエンドよりも高速に動作します。
FSX – FSFSより新しいバージョンです。
TortoiseSVNとは
TortoiseSVN は Microsoft Windows Shell 拡張として実装された Subversion クライアントで、GNU General Public License の下でリリースされたフリーソフトです。
プログラマーが自分のプログラムのソースコードを異なるバージョンで管理することを可能にします。
さらに、TortoiseSVN は TortoiseMerge ユーティリティーを提供し、2つのファイルを比較するのに役立ちます。
さらに、プログラマーはVsTortoiseのようなサードパーティーライブラリを使用して、TortoiseSVNをMicrosoft Visual Studioに統合することができます。
しかし、TortoiseSVN 1.9以降の新しいバージョンは、Windows Vistaまたは最新のオペレーティングシステムを必要とします。
SVN と TortoiseSVN の違い
定義
SVN は、Apache ライセンスの下でオープンソースとして配布されているソフトウェアのバージョン管理システムです。
これに対して、TortoiseSVN は Subversion のクライアントで、Microsoft Windows のシェル拡張として実装されています。
したがって、これが SVN と TortoiseSVN の主な相違点です。
言語
SVN は C 言語で書かれており、TortoiseSVN は C++ で書かれています。
基本情報
SVNはバージョン管理システムであり、TortoiseSVNはサブバージョン(SVN)クライアントです。
初期リリース
SVNは2000年にリリースされ、TortoiseSVNは2002年にリリースされました。
オペレーティングシステム
SVNはクロスプラットフォームです。
一方、TortoiseSVNはMicrosoft Windows用です。
したがって、この点も SVN と TortoiseSVN の重要な違いです。
ライセンス
また、SVNとTortoiseSVNのもう一つの違いは、SVNがApacheライセンス2.0であるのに対し、TortoiseSVNはGNU General Public Licenseであることです。
結論
SVNとTortoiseSVNの主な違いは、SVNが分散型バージョン管理システムであるのに対し、TortoiseSVNはMicrosoft Windowsのシェル拡張として実装されたSVNクライアントである点です。
簡単に言えば、SVNはバージョン管理システムです。
一方、TortoiseSVNはSubversionのクライアントです。