2011-11-28 45 views
11

私はリポジトリ内のいくつかのファイルの古いバージョンを調べて(変更しないで)、そのファイルを元に戻して戻したいと思っていました。今私はそれらを私の作業コピー内の他のすべてのファイルと一致するように最新のバージョンに戻そうとしていますが、フォルダを更新しても何も変わりません。TortoiseSVN - 復元を元に戻す

元に戻すことはできますか?私はこれらのファイルの最新バージョンを別の場所にコピーして貼り付けているので、完全に失われているわけではありませんが、作業コピーを保持しているディレクトリにそれらのファイルを戻すより簡単な方法があると思います。

ありがとうございます。

+0

ここで詳細な回答や手順を参照してください:http://stackoverflow.com/questions/1554278/temporarily-put-away-uncommited-changes-in-subversion-a-la-git-stash –

答えて

9

この改訂版に戻すコンテキストメニューログを表示ダイアログにあると思います。この名前にもかかわらず、実際には復帰操作は実行されません。少なくともSubversionがその用語を理解する方法ではありません。実際には、リビジョンの変更を作業コピーに逆マージします。これで作業コピーの変更が保存されず、Subversionは更新時にそれらを保持しようとします。 「変更を確認する」ダイアログから確認できます。これらの項目は「変更済み」と表示されます。

この場合、通常の方法でローカルの変更を破棄することができます:作業コピーの「元に戻す」コンテキストメニュー。今回は、実際の "復帰"操作を行います。

次回は、ディレクトリツリーの古いバージョンを調べるときに、ログダイアログの[アイテムをリビジョンに更新]コンテキストメニューを使用できます。簡単に元に戻すことができるSVNアップデートを行います。 >TortoiseSVNは - - 右クリック>
2を戻す -
1.右クリック>:プロジェクトディレクトリに

+0

はい、それは私がしたことです。私はその用語が異なっていたことに気付かなかった。私はあなたの指示に従いました、私は自分の最新のファイルを自分の作業ディレクトリに戻しました。ご協力ありがとうございました!私はあなたが "逆マージ"で何を意味するかはかなり分かりません。それが意味するものを説明していただけますか? – Emily

+0

[merge](http://svnbook.red-bean.com/en/1.7/svn-book.html#svn.branchmerge.basicmerging)は、あるブランチに加えられた変更を別のブランチにコピーする操作です。機能を取得するために変更を適用せず、その反対の(機能を削除する)場合は、* reverse *です。 –

+0

申し訳ありませんが、 "このリビジョンに戻す"は本当に逆マージを行います。ただし、このリビジョンへの更新は行われません。 – Stefan

0

いいえ。元に戻すと、リポジトリが聞いたことのないローカル変更が破棄されるため、そこから復元する方法はありません。 TortoiseSVNはおそらくあなたのためにクライアント側でバックアップをとることができますが、そうではありません。

これは、コミットされていないローカルの変更を取得しないことを意味します。更新コマンドはリポジトリから最新のバージョンを取得する必要があります。

+0

ありがとうございましたあなたの応答のために。私はこれらのファイルを元に戻しても、実際にはローカルな変更はしていませんでした。私のフォルダがバージョン100(リポジトリの最新バージョン)にあったとしましょう。そして、私はいくつかのファイルをバージョン50に戻しました。だから今私は私の作業コピーのファイルをバージョン100に戻したいと思います。何か、これらのファイルのバージョン100はまだリポジトリに座っています)。私はこの過程で何もしなかった。バージョン50以前に戻したので、これらのファイルのバージョン100に戻る方法はありませんか? – Emily

+0

さて、SVNの用語では、TortoiseSVN - >リビジョンへの更新...ダイアログを使って、特定のリビジョン番号に "復帰"せずに、特定のリビジョン番号に "更新"(毎日の使用とまったく同じではない) – themel

+0

ええ、私はSVNの用語とTortoiseSVNの用語が少し違っていたことを認識しませんでした。 Alvaro G. Vicarioが別の答えで説明したように、私が各ファイルに対して行ったことは、TortoiseSVN - >ログの表示 - >このリビジョンへの復帰でした。助けてくれてありがとう! – Emily

2

SVNには、ローカルマシン上の作業コピーとサーバー上のリポジトリのみがあります。 復帰を使用すると、ローカル作業コピーの内容がサーバーの内容に置き換えられ、SVNがこれらのファイルのコピーを保持する場所は他にありません。

IDEによっては、変更内容を復元できる場合があります。 Eclipseは、たとえば、ワークスペース内のすべてのファイルのローカル履歴を追跡します。

しかし、より柔軟なバージョンコントロールを入手したい場合は、GitまたはMercurialをご覧ください。

+0

このEclipse機能に言及すると、私はリワークの良い塊から私を救っただけです! – leokhorn

7

Ctrlキーを押しながらZ、あなたが再起動していない場合は、コンピュータ

+0

これは私を助けました。プロジェクトはVisual Studioで開いていたので、私は選択的に元に戻すことができました! –

+0

これは可能ではないことは分かりませんでした。私に多くの時間を救った。ありがとう! –

0

元に戻す元に戻すために、 SVN更新

関連する問題