コードの変更を取り消したい時はたぶん今後あると思う。
その時には、どうしたらいいのかなんてのは絶対に覚えておく必要はあるよね。
大きくわけて、コミット前とコミット後があるよね。
コミット前ならローカルの修正を元に戻せばいいけど、コミット後だと焦るよね。
1. コミット前
ローカルの変更の削除
> svn revert
2. コミット後
最初に必要なのは、更新を実行して、リポジトリとの同期を確保する事。
> svn update
続いて、変更結果を取り消すべきリビジョンを性格に特定する。
これには、svn log と、svn diff が役に立つ。
> svn log Contacts.java
> svn diff -r 26:27 Contacts.java
変更を元に戻すには、
> svn merge -r 27:26 Contacts.java .
この場合だと、r27の修正を取り消す様な指示をしている。
day.txt
r28: 中身を空っぽにする
data.txt
r29: 一番上を削除する
day.txtの修正を元に戻す
> svn merge -r 28:27 Day.txt .
> svn commit -m "z"
ここでのDay.txtの中身は?
データが入ってれば、修正の取り消しが出来ている。
データが入ってなければ、修正の取り消しが失敗している。
データが入っていて、Data.txtの修正が消えていたら失敗
svn update -r[n]
r28の時点では、Day.txtの中身は確かにからっぽ
svn update
HEADに更新をかけると、Day.txtの中身が元に戻った。
0 件のコメント:
コメントを投稿