5

以前の投稿で、物を壊すことについて早々に話しました。

コマンドを使用してリビジョン1124に戻そうとしてsvn update -r 1124いますが、次のようなエラー メッセージが表示され続けます。

[prague]$ svn update -r1024
U    app/webroot/css/group_themes/green.css
U    app/webroot/css/style.css
Skipped 'app/webroot/index.php'
svn: Failed to add directory 'app/webroot/images/users': an unversioned directory of the same name already exists

いくつかのものをバックアップしましたが、昨夜チェックアウトした正確なバージョンではありません...特定のリビジョンに戻す方がはるかに簡単だと思いました:(

4

3 に答える 3

13

コミットなし

新しい空のディレクトリでリビジョン1124をチェックアウトしてみてください。そうすれば、既存のディレクトリと競合することはありません。

したがってsvn checkout -r 1124、新しいディレクトリにあります。

コミットあり

svnのマニュアルによると、以前のリビジョンをコミットする場合は、逆マージを使用する必要があります。http://svnbook.red-bean.com/en/1.0/ch04s04.html「UndoingChanges 」を参照してください。

svn merge -c -1124 http://svn.example.com/repos/calc/trunk に続く

svn commit -m "Rollback merge to revision 1124"

于 2011-03-02T08:43:13.280 に答える
3

ディレクトリ 'app/webroot/images/users' を追加できませんでした: 同じ名前のバージョン管理されていないディレクトリが既に存在します

私には明らかです。その名前のディレクトリが既に存在し、バージョン管理されていません。ディレクトリを削除して再度更新するか、名前を変更して (おそらく最も賢い) 再度更新するかの 2 つを選択できます。

 $ mv app/webroot/images/users app/webroot/images/users.orig/
 $ svn update -r1024

余談ですが、Mercurial、Bazaar、Git など、SVN に代わるものをいくつか検討してみてください。私はスイッチが非常に快適であることを発見しました;)

于 2011-03-02T08:44:23.723 に答える
0

を使用して、リビジョンの更新を簡単に行うことができます

svn up -r 1124 

ただし、SVN はコミットする前に作業コピーを HEAD に更新する必要があるため、変更をコミットすることはできません。代わりにできることは

svn merge -r HEAD:1124 yourFile
svn ci yourFile -m "Reverting back to rev 1124 "
于 2015-10-13T09:27:30.003 に答える