テンポラリな修正のステ方
開発版と配布版を同時に端末に導入したいんよね、というリクエストがあり色々確認した結果、パッケージの名前を別にするしかない、という事が分かり開発版なソレは別アプリとして云々、みたいな話なったのは良いのですが、テンポラリな branch を作成してパッケージ名を修正したソレはさくっと廃棄したい。さてどうするか。
パケジ名が変わってる、という事は src 配下のディレクトリが変わってる、ということで削除が絡んでて結構面倒。
- 丁寧に元に戻す
- git stash してスタックからおもむろに取り除く
どちらが良いのか。
とは言え
not staged な status なら元に戻すのは簡単なのかな。丁寧にやる方法だと
$ git checkout HEAD src/jp/shuri/android/hoge/fuga $ git checkout `git checkout |awk '{print $2;}'` $ rm -rf `git status | grep src|awk '{print $2;}'`
みたいなカンジ。そして一連の作業が終了したら無名 branch に居ました。何故だ。元の branch に戻ると修正は破棄されていましたが、ちょっと微妙な感触。
git stash してみた
新規追加は stash で退避できないのか。って思ったら git checkout -f という方法がある模様。でもこれも追加したソレは残ってますね。仕方無いのかな。最速は以下?
$ git checkout -f $ rm -rf `git status | grep src | awk '{print $2;}'`
削除については git clean -f という解もある模様。ヤッてみましたが、消しかたがよく分からんな。以下なのか。
$ git checkout -f . $ git clean -f `git status|grep src|awk '{print $2;}'`
あまり変わらないカンジですね。
ちなみに
備忘まで、パケジ名をハマらずに変更する方法を以下に列挙しておきます。
- develop からテンポラリなブランチを新規作成
- AndroidManifest のパケジを書換え
- src フォルダ配下のパケジ名右クリックして refactor -> rename
- project -> clean
- apk 作成
む
git clean だとディレクトリが残るな。