3

Tortoisesvnを使用しています。フォルダを追加して、Subversionリポジトリにコミットしました。次に、同僚がいくつかの作業を行い、間違いを犯し、フォルダー全体を削除して、作業ファイルを再送信するように要求しました。

しかし、今、tortoise svn-> commitをクリックすると、「ファイルは変更または追加されていません」と表示されます。フォルダ全体がなくなったため、サーバーリポジトリ内のファイルはなくなりました。

[更新]をクリックすると、ローカルフォルダーが削除されますが、これは必要ありません。私が欲しいのは、ローカルフォルダにあるものをすべてリポジトリに再コミットすることです。それ、どうやったら出来るの?

ありがとう。

4

5 に答える 5

2

同僚が行った変更を元に戻す必要があります。

まず、削除したフォルダをバックアップします。ここで、フォルダーの親ディレクトリを更新します。次に、親フォルダーに移動します->それを右クリックします->「ログを表示」->同僚が行った変更のエントリを見つけます->それを右クリックします->「このリビジョンからの変更を元に戻す」。ディレクトリが戻っていることを作業コピーで確認してください。

svn addここで、変更されたファイル (存在する場合) をバックアップからコピーします。新しいファイル (存在する場合)を忘れないでください。ディレクトリのみをコミットします(そうしないと、同僚が行った他の変更も元に戻されます)。親フォルダーを右クリック -> [元に戻す] (これにより、削除されたフォルダーとは関係のない同僚の変更が復元されます)。

ところで、コミットされた変更を元に戻すとはどういうことかを理解することが重要です。つまり、元に戻されたコミットからの変更が作業コピーに適用されます。したがって、リビジョン/コミットはリポジトリから消えません。

于 2012-06-04T15:51:06.093 に答える
1

さて、あなたはあなたのローカルフォルダをどこかにコピーし、更新し、そしてフォルダを元に戻し、それをsubversionに追加してコミットすることができます(そしてあなたの同僚を棒で叩きます)

于 2012-06-04T15:42:58.693 に答える
0

変更を新しいブランチにコミットするだけです。
メイン開発者を切り替えたくない場合。新しいブランチに移動するには、次のようにします。

  • それでも、変更を新しいブランチにコミットします(つまり、バックアップです!)
  • メインブランチをブランチとマージします。
  • すべてを削除し(.svnファイルを保持するだけ)、ファイルを(ブランチから)上書きします。
  • 専念。
于 2012-06-04T18:14:16.413 に答える
0

ファイルをコミットに「追加」する必要があります (svn add端末バージョンの svn を使用している場合)。これを行うコマンドが Tortoise svn のどこかにあるはずです。

于 2012-06-04T15:46:04.387 に答える
-1

同僚がディレクトリを削除しただけでなく、別の場所に移動したか、別のディレクトリを作成したと仮定すると、「svn スイッチ」(または同等の亀) を使用して、現在の作業コピーを新しいリポジトリの場所に再ポイントできます。その後、安全に再度コミットできます。

于 2012-06-04T15:51:22.307 に答える