SVNとは

Dec 24, 2018 am 11:24 AM
svn

SVNとは

SVN (Subversion) とは何ですか?

2010 年以前は、Apache Subversion (略して SVN) は最も人気のあるバージョン管理システムの 1 つでした。現在、SVN の人気は低下していますが、依然として数百万行が保存されています。小規模なオープンソース コミュニティではありますが、積極的に維持され続けています。

SVN

の誕生 1990 年代後半、コンカレント バージョン システム (CVS) は、オープン ソース プロジェクトと商用プロジェクトの両方でソフトウェア開発に広く使用されました。しかし、CVS は批判を受け始めました。サードパーティツールのサポートは不十分で、http/https/ssh プロトコルはまったくサポートされていません。それはすぐに標準以下になり、より良いシステムが必要になりました。

2000 年に SVN の開発が本格的に始まりました。目標は、CVS と互換性のある後継製品を作成することです。

SVN の開発は 2000 年に始まりましたが、バージョン 1.0 は 2004 年 2 月までリリースされませんでした。 CVS の多くの機能を模倣していますが、CVS にはない新しい機能も導入しています。ユーザーはアトミック コマンドを実行し、バージョン管理されたファイルの名前を変更したり、移動したりできるようになりました。

SVN は、2009 年 11 月に Apache Incubator に受け入れられ、Apache プロジェクトになりました。 SVN が世に紹介されてから、CVS の採用は徐々に消えていきました。

おすすめ関連記事:
1.Git と Svn の違いは何ですか
2.Svn ツールのインストール方法
関連ビデオの推奨事項
:
1.SVN ビデオ チュートリアル (Chuanzhi Podcast)

##Subversion はどのように機能しますか?

SVN はもともとコマンド ライン インターフェイスとして設計されました。これは、ターミナルを開いてテキスト コマンドを入力することを意味します。

Subversion が動作するには、SVN セットアップに 2 つの主要な要素が必要です:

1. すべてのソース ファイルのすべてのバージョンを含むサーバー

2. ローカルの場所ファイルのコピーがコンピュータ上にあります。

コンピュータ上のファイルは、

作業ファイルと呼ばれます。これらは各ユーザーが編集するファイルです。次に、ユーザーは SVN サーバー (リポジトリ とも呼ばれます) に変更をコミットします。

ユーザーが変更をコミットするたびに、SVN は新しいバージョンを作成して変更を管理および記録します。ほとんどのバージョン管理システムと同様、ユーザーは通常、最新バージョンを使用します。ただし、古いバージョンが必要な場合は、以前のバージョンに戻すことができます。

SVN サーバーとは何ですか? (Subversion サーバーとは何ですか?)

SVN サーバーには、すべてのソース ファイルとファイルのすべてのバージョンが含まれています。 SVN の世界では、サーバーはリポジトリと呼ばれます。したがって、SVN サーバーと SVN リポジトリは同じものです。

ファイルのローカル コピー (コンピュータに保存されている) は、

作業コピー と呼ばれます。

SVN は分散型ですか?それとも集中型ですか?

バージョン管理システムは、

分散バージョン管理システム (DVCS) 集中型バージョン管理システム (CVCS) の 2 つのカテゴリに大別できます。

SVN は集中バージョン管理システムです。

集中バージョン管理システムとは、バージョン履歴が中央サーバーに保存されることを意味します。開発者が特定のファイルに変更を加えたい場合は、この中央リポジトリからファイルを自分のコンピュータにプルします。開発者は変更を加えた後、変更されたファイルを中央リポジトリに送り返します。

Helix Core を使用したスケーラブルな集中バージョン管理システム。または、Git ベースの分散ワークフローには Helix4Git を使用します。

SVN が直面する課題

SVN には複雑な分岐モデルがある

SVN に関する最も一般的な不満は、その分岐モデルが複雑であることです。ブランチを使用すると、コードの複数のバージョンを同時に作業できます。 SVN では、ブランチはリポジトリ内のディレクトリとして作成されます。多くの開発者はこのディレクトリ構造を好みません。しかし、課題はそれだけではありません。

SVN バージョン 1.6 では、ツリー競合と呼ばれる概念が導入されました。ツリー競合は、ディレクトリ構造の変更によって引き起こされる競合であり、頻繁に発生します。 SVN ではツリーの競合が発生したときに変更をコミットできないため、SVN で分岐戦略を実装する際の複雑さが増します。

SVN では中央リポジトリに接続する必要があります

変更をコミットするには、SVN では中央リポジトリに接続する必要があります。

中央リポジトリに接続せずに SVN を使用しても意味がありません。たとえば、フライト中など、オフラインでコーディングしている場合、SVN では、接続が復元されるまで中央リポジトリにコミットできません。

SVN では競合を手動で解決する必要があります。

マージは、開発者が SVN に関してよく不満を言うもう 1 つの大きな問題です。履歴を使用して 1 つの変更セットを作成してコミットし、その後別の変更 (つまり線形) を作成してコミットする場合、マージは簡単になります。

2 人以上の開発者が同じコード ベースで作業しており、マージする必要がある場合、事態は複雑になります。この場合、SVN は失敗し、開発者は手動で競合を解決する必要があり、開発者の時間が何時間も無駄になります。

SVN を使用する理由

数年前、Git やその他の商用制御システムは SVN を上回りました。しかし、SVN には依然として 2 つの理由があります: コストと慣性

コスト: SVN はオープンソースです。つまり、「無料」です。

慣性: 大規模なコードベースを構築すると、VCS を切り替えるのが困難になることがあります。 SVN は 2004 年から存在しており、SVN を採用している組織には数百万行のコードがあります。

以上がSVNとはの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。

ホットAIツール

Undresser.AI Undress

Undresser.AI Undress

リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover

AI Clothes Remover

写真から衣服を削除するオンライン AI ツール。

Undress AI Tool

Undress AI Tool

脱衣画像を無料で

Clothoff.io

Clothoff.io

AI衣類リムーバー

AI Hentai Generator

AI Hentai Generator

AIヘンタイを無料で生成します。

ホットツール

メモ帳++7.3.1

メモ帳++7.3.1

使いやすく無料のコードエディター

SublimeText3 中国語版

SublimeText3 中国語版

中国語版、とても使いやすい

ゼンドスタジオ 13.0.1

ゼンドスタジオ 13.0.1

強力な PHP 統合開発環境

ドリームウィーバー CS6

ドリームウィーバー CS6

ビジュアル Web 開発ツール

SublimeText3 Mac版

SublimeText3 Mac版

神レベルのコード編集ソフト(SublimeText3)

PHP開発におけるバージョン管理にSVNを使用する方法 PHP開発におけるバージョン管理にSVNを使用する方法 Jun 27, 2023 pm 01:39 PM

バージョン管理は PHP 開発において非常に一般的な操作であり、最も一般的に使用されるツールは SVN (Subversion) です。共同開発中のコードの履歴バージョンとコードの更新を簡単に管理できます。 PHP開発におけるバージョン管理にSVNを使用する方法を紹介します。 1. SVN クライアントとサーバーをインストールする まず、SVN クライアントとサーバーをインストールする必要があります。 SVN クライアントは SVN 公式 Web サイトから対応するバージョンをダウンロードしてインストールできますが、サーバーは自分で構築する必要があります。

Java SVN: コード リポジトリの保護者であり、コードの安定性を確保します。 Java SVN: コード リポジトリの保護者であり、コードの安定性を確保します。 Mar 09, 2024 am 09:20 AM

SVN の概要 SVN (Subversion) は、コード ベースの管理と保守に使用される集中バージョン管理システムです。これにより、複数の開発者が同時にコード開発に協力できるようになり、コードの変更履歴の完全な記録が提供されます。 SVN を使用することで、開発者は次のことが可能になります。 コードの安定性を確保し、コードの損失や損傷を回避します。コードの変更履歴を追跡し、以前のバージョンに簡単にロールバックできます。共同開発。複数の開発者が競合することなく同時にコードを変更します。 SVN の基本操作 SVN を使用するには、TortoiseSVN や SublimeMerge などの SVN クライアントをインストールする必要があります。その後、次の手順に従って基本的な操作を実行できます。 1. コード ベース svnmkdirHttp://exampl を作成します。

EclipseSVNプラグインのインストールと設定方法を詳しく解説 EclipseSVNプラグインのインストールと設定方法を詳しく解説 Jan 28, 2024 am 08:42 AM

EclipseSVN プラグインのインストールと設定方法の詳細な説明 Eclipse は、機能を拡張するためにさまざまなプラグインをサポートする、広く使用されている統合開発環境 (IDE) です。その 1 つは EclipseSVN プラグインで、開発者が Subversion バージョン管理システムと対話できるようにします。この記事では、EclipseSVN プラグインのインストールおよび設定方法を詳しく説明し、具体的なコード例を示します。ステップ 1: EclipseSVN プラグインをインストールし、Eclipse を開く

svn diff を vimdiff に置き換えます: コードを比較するためのツール svn diff を vimdiff に置き換えます: コードを比較するためのツール Jan 09, 2024 pm 07:54 PM

Linux では、svndiff コマンドを直接使用してコードの変更を表示するのは非常に難しいため、インターネット上でより良い解決策を探しました。それは、特に使用に慣れている人向けに、svndiff のコード表示ツールとして vimdiff を使用することです。 vim. とても便利です。 svndiff コマンドを使用して特定のファイルの変更を比較する場合、たとえばコマンド $svndiff-r4420ngx_http_limit_req_module.c を実行すると、実際にはコマンド -u-Lngx_http_limit_req_module.c がデフォルトの差分プログラムに送信されます。 (改訂 4420)-Lngx_

CentOS への SVN のインストールとコマンド ライン インストール CentOS への SVN のインストールとコマンド ライン インストール Feb 13, 2024 am 11:24 AM

CentOS に SVN をインストールすることは、非常に一般的な操作です。これは、ソフトウェア開発中の変更の管理と追跡に使用できる強力なバージョン管理システムです。この記事では、CentOS に SVN をインストールする方法と、一般的に使用されるツールをいくつか紹介します。ラインの設置方法。 CentOS に SVN をインストールするにはさまざまな方法がありますが、ここでは一般的な 2 つのインストール方法を紹介します。 1. ターミナルを開き、root ユーザーとしてログインします。 2. 次のコマンドを実行してシステム パッケージ リストを更新します: ```yumupdate3。次のコマンドを実行して SVN をインストールします: yuminstallsubversion4。インストールが完了したら、次のコマンドを実行して SVN が正常にインストールされたかどうかを確認できます: svn - -v

svnとvssの違いは何ですか svnとvssの違いは何ですか Jun 21, 2022 am 11:23 AM

違い: 1. vss は Microsoft によって開発され有料ですが、svn はオープンソースで無料です; 2. vss にはクライアントが必要ですが、svn はクライアント、コマンド ライン モード、または Web ページ Access で読み取り専用を使用できます。 3. vss は Windows システムのみをサポートしますが、svn は Windows と Linux システムをサポートします; 4. vss は「ロック-編集-ロック解除」モードであり、svn のデフォルトは「変更-競合-マージ」モードです; 5. のバージョン番号vss は単一のファイルに対応し、svn のバージョン番号はバージョン ライブラリ全体に対応します。

Linux 開発者にとって必須のスキル: SVN バージョン管理をマスターするだけです Linux 開発者にとって必須のスキル: SVN バージョン管理をマスターするだけです Jan 26, 2024 pm 09:54 PM

Linux 開発者は、多くの場合、SVN を使用してプロジェクトのバージョンを制御する必要があります。優秀な開発者にとって、SVN のバージョンを確認する方法を知ることは、間違いなく必須のスキルの 1 つです。今日は、この実践的なスキルをよりよく習得するのに役立つことを願って、この機会を利用して私の経験を共有したいと思います。 1. SVN コマンド ライン ツールをインストールするには、まず Linux 環境に SVN コマンド ライン ツールをインストールしてください。ターミナルにダイヤルし、次のコマンドを安全に入力してインストールを完了してください: 「ユーザーの皆様、sudoapt-getinstallsubversion を実行して Subversion をインストールしてください。」 2. SVN サーバーに接続する インストールが完了したら、SVN サーバーに接続する必要があります。次のコマンドを入力します。

PHP 入門: SVN バージョン管理 PHP 入門: SVN バージョン管理 May 20, 2023 am 08:29 AM

一般的に使用されるサーバー側スクリプト言語として、PHP は、オープン ソースとクロスプラットフォームの利点により、Web 開発の分野で広く使用されています。複数人での共同作業の開発では、バージョン管理は不可欠なツールであり、ソース コードの変更と更新を効果的に管理し、チーム メンバー間のコードの同期のずれによる競合を回避できます。 SVN は、人気のあるバージョン管理ツールとして、PHP 開発でも広く使用されています。この記事では、SVNのインストールなど、PHP開発におけるSVNバージョン管理の基礎知識を紹介します。

See all articles