4

私は自分のウェブホストサーバー上にsvnリポジトリを作成し、それにファイルを正常にコミットし、そこからファイルを更新しましたが、サーバー上で実際にファイルを見つけることができないようです!

私のsvnリポジトリには~/svn/my-first-repo/、次のものが含まれています./ ../ README.txt conf/ db/ format hooks/ locks/

しかし、私が実際にバージョン管理しているファイルはどこにありますか?!

同じリモートリポジトリを別のローカルディレクトリにチェックアウトでき、すべてのファイルが魔法のように表示されたので、間違いなく機能しました。どこからともなく...

4

3 に答える 3

8

ファイル自体はリポジトリ内にあります。それらを見たい場合は、チェックアウトを実行する必要があります。subversionはプロジェクト内のすべてのファイルの完全な変更履歴を保持するため、リポジトリのフォルダー構造の下に完全に再構成された作業コピーが表示されることはありません。

基本的に、何が起こっているのかは、ホストファイルシステムの上にある「バージョン管理されたファイルシステム」です。リポジトリに変更をコミットしたときに何が起こっているのかを正確に理解できるように、 Subversionファイルシステムをさらに詳しく読む必要があります。

于 2010-01-25T14:42:48.960 に答える
3

FSFS構造を探します。http://svn.apache.org/repos/asf/subversion/trunk/notes/fsfs

于 2010-01-25T14:42:39.013 に答える
3

SVNは、バージョン管理されたファイルをファイルシステムではなくデータベースに保存します。つまり、すべてがdbディレクトリの下にあります。SVNが使用する特定のデータベースはBerkeleyDBです。

SVNのバックエンドストレージの詳細については、無料のオンラインSubversionブックを参照してください。

于 2010-01-25T14:41:05.153 に答える