SVNって何さ?
対象者
SVNを初めて知った人に対する説明(主に過去の自分を想像)
内容
ソースコードのバージョン管理の手助けをするソフトウェアの一つ。
これは私の考えだが、 同機能のソフトウェアでデファクトスタンダードであるGitに比べ、 SVNは学習コストが低いことが最大のメリットである。
今からバージョン管理をプロジェクトにはじめて取り入れ始める場合は、SVNを選ぶことはほぼない。 理由は - Gitの方がネットで情報がまとまっている。 - Gitは個人レベルでソースコードの変更を管理できる一方で、SVNはまとまった管理しかできない (Gitは分散型)。 - Linuxでも管理がしやすい? - UIがモダン? と思いつく
違い
ネットで調べると大きな違いはSVNは集中型でGitは分散型であるといわれている。 SVNもGitにも同じくコミットという概念がある。 これは自分の変更をログに登録するという行為の意味ではどちらも同じであるが、 対象とするレポジトリが異なる。 Gitがローカルのレポジトリにコミットをするのに対して(のちにそのコミットをリモートレポジトリにマージする方法)、 SVNは直接リモートレポジトリにコミットを行う。 なので、SVNのコミットとは、Gitでのコミットとマージを合わせた機能であるといえる。