9

仕事では VSS を使用せざるを得ませんが、個人のリポジトリには SVN を使用しています。VSS と同期の間で同期する最良の方法は何ですか?

4

3 に答える 3

4

手動のマージ手順を取り除くために、次のように別の svn ブランチ (svn://branches/VSS) を使用できます。

  1. svn://branches/VSS の作業コピーを作成します
  2. この作業コピーで VSS Get Latest を実行します
  3. SVNコミット
  4. svn://trunk からの svn マージ
  5. SVNコミット
  6. VSS diff を実行し、差分のあるすべてのファイルを (上書きせずに) チェックアウトします。
  7. それらのファイルをチェックインします
  8. svn://branches/VSS を svn://trunk に再統合します
于 2008-09-11T19:23:32.013 に答える
2

Redbean book: Vendor Branchesで定義されているように、これをベンダー提供のブランチとして扱うこともできます。

これにより、基本的な流れは次のようになります。

  1. VSS からの最新コードを含むベンダー ブランチ「branches/VSS/current」を用意します。
  2. 現在のバージョンに「branches/VSS/2008-09-15」のタグを付けます
  3. 翌日、新しいファイルを「現在の」に取得します
  4. 「branches/VSS/2008-09-16」に再度タグ付けします
  5. 2 つのタグの違いをトランクにマージし、競合を解決する
  6. 必要に応じて古いタグを削除する

これは、VSS から SVN に移行するときに実際に使用した手法です。SVN->VSS からの往復が気になる場合は、トランクとブランチ/VSS/現在の間で差分を取り、その差分を VSS に適用するだけです。

于 2008-09-15T14:41:13.000 に答える
0

私が過去に行ったことは次のとおりです。

  1. すべての変更が svn://trunk にコミットされていることを確認してください
  2. VSS から最新のものを作業コピーに取得します。
  3. 作業コピーの変更を手動でマージします。
  4. マージされたコードを svn://trunk にコミットします
  5. VSS 差分を実行し、差分のあるファイルをチェックアウトします (ファイルを上書きせずに)
  6. それらのファイルをチェックインします。
于 2008-09-11T19:16:25.743 に答える