LoginSignup
168
161

More than 3 years have passed since last update.

[SourceTree]「〜をこのコミットまで戻す」と「コミット適用前に戻す」の日本語がつらい

Last updated at Posted at 2019-10-16

はじめに

SourceTreecommitを取り消しをしようとするとそれっぽい2択を迫られる。
「〜をこのコミットまで戻す」「コミット適用前に戻す」
いや、どっち?なんかわかりづらい、、
スクリーンショット 2019-10-16 15.29.07.png
「〜をこのコミットまで戻す」を選択した場合、次の3択を迫られる。
「Soft-すべてのローカルを保持」
「Mixed-作業コピーの変更内容を保持するが、インデックスをリセットする」
「Hard-すべての作業コピーの変更内容を破棄」
スクリーンショット 2019-10-16 15.33.28.png
結局どれ使えばいいの?を場面ごとに整理。。

多々あるcommitを取り消したい場面

pushする前

  • 直前のcommitメッセージの修正
  • 古いやつのcommitメッセージの修正
  • commitの取り消し(reset

pushした後

  • commitの取り消し(revert)

pushする前

直前のcommitメッセージの修正

commitする画面の右上の「コミットオプション」→「直前のコミットを上書き」
スクリーンショット 2019-10-16 15.41.58.png

古いやつのcommitメッセージの修正

修正したいcommit親commitのところで右クリックし、
「〜の子を対話形式でリベース」を選択。
「メッセージを編集」から編集できる。
スクリーンショット 2019-10-16 15.45.49.png

commitの取り消し(reset)

戻したいコミットの上で「〜をこのコミットまで戻す」を選択。

Soft,Mixed,Hardについて

Soft,Mixedはどっちでもいい。
Softは変更内容がStaging済のファイルとして返ってくる
スクリーンショット 2019-10-16 16.10.57.png
Mixedはステージングに未登録のファイルとして返ってくる
スクリーンショット 2019-10-16 16.15.03.png
Mixedをしたあとに手動でファイルを破棄した方が確実なのでHardは使わないかな。

pushしてしまった後

commitの取り消し(revert)

branch1をpushしている状態で、push前に戻したい場合
「コミット適用前に戻す」を選択
スクリーンショット 2019-10-16 16.21.53.png
一個前のcommitの「commit0」の状態まで戻った新しいcommitが生成する。
スクリーンショット 2019-10-16 16.25.37.png
どうやらpushしてしまっても1つ前までなら戻れるみたい。
あとはコンフリクトとの戦いです。

おわりに

commitの取り消しができなくて困ってたので、整理してみました。
revertに関してはもう少し深堀りしていかないと。。

168
161
2

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
168
161