7

私の上司は、彼が使用するSubversionサーバーをセットアップして、異なるマシン間ですべてのドキュメントを同期して共有し、インターネット接続がない場合でもそれらにアクセスできるようにするように私に依頼しました。

私は彼のためにこれを用意しましたが、今彼は「作成日」ファイル属性を保持するように要求しています。彼は作成日であるすべてのファイルをダウンロードしたので説明しましたが、彼が使用しているデスクトップ検索エージェントに影響しているため、これを保存する方法を見つけたと彼は主張しています。この属性を Subversion 経由で保存するように設定する方法はありますか、または各ファイルの日付を取得するスクリプトを作成し、最初のチェックアウトごとに「touch」を実行させる必要がありますか?

SVN リポジトリに追加された一連のドキュメントは数年前にさかのぼることに注意してください。彼はこれらの日付をすべてのチェックアウトで保持したいと考えています。したがって、Subversion が最後に行った変更の日付は、彼が望むものから何年もずれている可能性があります。

4

5 に答える 5

5

TortoiseSVN の使用

  • 右クリックして、TortoiseSVN -> 設定を選択します
  • [ファイルの日付を「最終コミット時刻」に設定する] を選択します。

私はそれがあなたのために働くと思います。

于 2008-09-23T15:29:47.783 に答える
3

申し訳ありませんが、初めて質問を誤解しました。

1 つのオプションは、svnadmin dump および load コマンドを使用することです。

  • svnadmin dump を使用してリポジトリをダンプします。
  • 出力をトロールするスクリプトを作成し、SVN の作成日をソース フォルダーのファイルの作成日に更新します。
  • svnadmin load を使用して、更新されたダンプ ファイルを再度読み込みます。
  • 以前に提案した[ファイルの日付を「最終コミット時刻」に設定する] 設定を使用します。

これが可能かどうかは定かではありませんが、頭の中でそうなると思います。SourceSafe から Subversion に移行したときに、このようなことを行ったスクリプトを覚えているようです。見つけられるかどうか見てみましょう。

編集:ええ、ここからいくつかのコードを盗むことができるかもしれません(http://www.pumacode.org/projects/vss2svn

于 2008-09-23T16:02:48.093 に答える
2

プロパティ「svn:date」を確認してください。

svn propset svn:date --revprop -r HEAD "2007-04-22"

事前にフックpre-revprop-changeを設定する必要があります。

于 2011-09-09T18:43:35.527 に答える
0

前回確認したとき、Subversion には元のファイルのタイムスタンプを保持する方法がありませんでした。

于 2008-09-23T15:28:44.557 に答える
0

Subversion ファイル プロパティを使用して変更日を保存することもできますが、チェックイン時にプロパティを更新し、チェックアウト時に変更日を設定するには、独自のスクリプトを作成する必要があります。

于 2008-09-23T15:57:55.907 に答える