198

以下に示すようなファイルがSVNリポジトリにあり、以前のバージョンに戻したいと思っています。SVNでこれを行う方法は何ですか?リポジトリ全体ではなく、この特定のファイルを古いバージョンにダウングレードするだけです。

ありがとう。

$ svn log myfile.py
----------------------
r179 | xx | 2010-05-10

Change 3
----------------------
r175 | xx | 2010-05-08

Change 2
----------------------
r174 | xx | 2010-05-04

Initial
4

13 に答える 13

188

作業コピーに古いファイルだけが必要な場合:

svn up -r 147 myfile.py

ロールバックしたい場合は、この「Subversion で古いバージョンのコードに戻すには?」を参照してください。

于 2010-05-11T17:25:46.630 に答える
89

svn cat もリビジョン引数を取ります!

svn cat -r 175 mydir/myfile > mydir/myfile

于 2015-02-24T15:35:34.623 に答える
57
svn revert filename 

これにより、単一のファイルが元に戻されます。

于 2014-03-16T01:22:01.220 に答える
50

単一のファイルの場合、次のことができます。

svn export -r <REV> svn://host/path/to/file/on/repos file.ext

できますsvn revert <file>が、それは最後の作業コピーのみを復元します。

于 2010-05-11T17:26:07.567 に答える
13

最良の方法は次のとおりです。

svn merge -c -RevisionToUndo ^/trunk

これにより、取り消したくないファイルを元に戻すだけでなく、リビジョンのすべてのファイルが取り消されます。-リビジョンのプレフィックスとしてダッシュ ( ) を忘れないでください。

svn revert File1 File2

変更をコミットして戻します。

于 2010-05-11T17:31:47.613 に答える
5

ファイルが数個しかなく、Tortoise SVN を使用している場合は、次のアプローチを使用できます。

  1. ソース ファイルを右クリックし、[TortoiseSVN] -> [ログを表示] を選択します。
  2. ログ内のリビジョンを右クリックし、[リビジョンを保存...] を選択します。
  3. 古いリビジョンで現在のファイルを上書きします。
  4. 上書きされたソース ファイルをコミットします。
于 2015-11-19T11:41:44.430 に答える