2008-08-29 15 views
1

これは "How do I delete 1 file from a revision in SVN?"に続く質問ですが、おそらく非常に異なる回答があり、他の人がその回答を知っていると恩恵を受けると思います。 (私はまだ答えは分かりません)削除されてからSVNに再送信されたファイルのリビジョン履歴を確認するにはどうすればよいですか?

前の質問に答えて、私はSVNからリビジョンを削除することができないことを発見しました。 2番目に良い解決策は、SVNからファイルを削除し、コミットしてファイルを追加して再コミットすることでした。

元のファイルの改訂履歴がなくなったことを確認します。だから私は質問 "の答えは、削除してからSVNに再提出されたファイルのリビジョン履歴を見つけることができますか?"できないことを期待しています。

答えて

2

すばやく追加と削除を閲覧することができます。

------------------------------------------------------------------------ 
r14 | kame | 2008-08-29 04:23:43 +0200 (ven., 29 aoû2008) | 1 line 
Chemins modifié : 
    A /a.txt 

Readded a 
------------------------------------------------------------------------ 
r13 | kame | 2008-08-29 04:23:24 +0200 (ven., 29 aoû2008) | 1 line 
Chemins modifié : 
    D /a.txt 

Delete a 
------------------------------------------------------------------------ 
r12 | kame | 2008-08-29 04:23:06 +0200 (ven., 29 aoû2008) | 1 line 
Chemins modifié : 
    A /a.txt 

のsvnのログファイルを表示しません、のsvn diffは古いリビジョンが存在しないことをふりをしますが、古いリビジョンをターゲットとSVNのチェックアウトは喜んであなたに古いファイルを提供します。

1

私はあなたができないと言ったでしょう - あなたはSVNの目に新しいファイルを作成してリビジョンツリーを作成しました。

古いツリーを個別に復元することは可能ですが(実際の削除やSVNの削除を管理したかどうかはわかりませんが)、古いリビジョンツリーと新しいツリーの間にはリンクがありません。シンプル

svn log -v [folder] 

3

Subversionからリビジョンを削除することはできないと思いますか?あなたの他の質問(svndumpfilter)に与えられた解決策はまさにその通りです(パラメータ--drop-empty-revs--renumber-revsを参照)!改訂履歴が消えてしまった場合、最初に改訂履歴があることはないため、改訂履歴を取得する方法は明らかにありません。

2

短い答え:することができます

長い答え:残念ながら

(あなたのためおそらくではない、ほとんどの人々のために)、削除されたファイルの改訂履歴がまだある - それはちょうどやって来るのが少し難しい。

はここに例を示します

それは(古い歴史がなくなっている)動作しますが、古いリビジョンのファイルを要求した場合、あなたが歴史削除されたファイルの を得るように見えます
$ touch one 
$ svn add one 
$ svn ci -m "Added file one" 
$ date >> one 
$ svn ci -m "Updated file one" 
$ date >> one 
$ svn ci -m "Updated file one again" 
$ svn log file:///repos/one 

------------------------------------------------------------------------ 
r3 | andrewr | 2008-08-29 12:27:10 +1000 (Fri, 29 Aug 2008) | 1 line 

Updated file one again 
------------------------------------------------------------------------ 
r2 | andrewr | 2008-08-29 12:26:50 +1000 (Fri, 29 Aug 2008) | 1 line 

Updated file one 
------------------------------------------------------------------------ 
r1 | andrewr | 2008-08-29 12:25:07 +1000 (Fri, 29 Aug 2008) | 1 line 

Added file one 
------------------------------------------------------------------------ 

$ svn delete one 
$ svn ci -m "Deleted file one" 
$ svn up 
$ touch one 
$ svn add one 
$ svn ci -m "Adding file one back in" 
$ svn log file:///repos/one 

------------------------------------------------------------------------ 
r5 | andrewr | 2008-08-29 12:29:13 +1000 (Fri, 29 Aug 2008) | 1 line 

add one back 
------------------------------------------------------------------------ 

$ svn log -r 3:1 file:///repos/one 

------------------------------------------------------------------------ 
r3 | andrewr | 2008-08-29 12:27:10 +1000 (Fri, 29 Aug 2008) | 1 line 

Updated file one again 
------------------------------------------------------------------------ 
r2 | andrewr | 2008-08-29 12:26:50 +1000 (Fri, 29 Aug 2008) | 1 line 

Updated file one 
------------------------------------------------------------------------ 
r1 | andrewr | 2008-08-29 12:25:07 +1000 (Fri, 29 Aug 2008) | 1 line 

Added file one 
------------------------------------------------------------------------ 
関連する問題