バージョン管理システム

バージョン管理システム

当社では、バージョン管理システムとしてSubversionを使用しています。サーバーに10 GBのフォルダがあり、4人のユーザーがプロジェクトを作業している場合、チェックアウト中に40 GBのデータが蓄積されます。これは、ユーザーが特定のファイルの別のディレクトリにあるファイルのみを使用するため、不要なデータです。メモリ効率の良いツールにする方法はありますか?それとも別のVCツールを使用できますか?

答え1

Subversionを使用してもsvn update(参考資料を参照svn help update)、変更されたファイルのみを転送する必要があります。またsvn checkout <path>、(参照svn help checkout)を使用してサブディレクトリのみをチェックアウトすることもできます。

リポジトリがどのように10GBに増えたかはよくわかりません。リポジトリ源泉ファイル、つまり人間が読めるテキストです。人が読める10GBのテキストを生成する場合、これは4人のユーザーにとってかなりの量です。

バイナリファイルいいえリポジトリに属します。リポジトリを使用してデータベースを追跡することは機能しません。

だから私は本当にあなたがしなければならないことは、他のバージョン管理システムを見つけるよりもリポジトリの使い方を変えることだと思います。

答え2

@dirktのフォローアップ

  1. サーバー側の「NNN GB」サイズはリポジトリそしてすべての歴史
  2. 誰もがリポジトリをチェックすると、彼は次のような結果を得ます。彫刻- 一度の改訂
  3. 単一のリビジョンでも「あまりにも多く」ファイルの小さな部分のみを変更する必要がある場合、各開発者は必要なファイルの最も近い共通祖先から始まり、ストレージツリーの一部のみをチェックアウトできます。
  4. フォローアップにsvn ci必要なロール数svn upははるかに少なくなります。

関連情報