git-rerereでconflict自動解決したくないとき
merge前に気づいた場合、先に記録済み解決パターンを削除すればOK.
$ git rerere forget <pathspec>
気づかずmergeしてrerereで自動解決されちゃったけどconflict状態に戻したいときは
$ git checkout -m <pathspec>
でもやっぱりrerereがやってくれてたとおりに解決したい、となったら
$ git rerere
これで記録済みパターンをまた適用してくれる。
Repoメモ (1)
RepoはAndroid Open Source Project (AOSP)で使われている、Gerritを利用したワークフローをサポートするためのwrapper。実体はPython scriptです。
Repoコマンド実行すると実際何が起きるのか、リファレンスがあったら便利だなと思うことが最近多いので、気の向くままに書いていきます。
本家はここ-> Repo command reference | Android Developers
repo init
- このコマンドでさわるのは.repoの中だけ
- .repo/manifestsのremote branch, tagをすべてfetch
- -b <branch>指定されてたらcheckout
- -m <manifest>指定されてたらシンボリックリンク.repo/manifest.xml貼り直し
repo sync
- 管理下の全プロジェクト対象
- remote branch, tagをすべてfetch
- HEADは基本的にmanifestどおりの状態にcheckout (detached)
- -d指定なくかつtopic branchにいる場合はrebase
repo start
- topic branch作成 + checkout
repo upload/forall/status/info/prune/diff/downloadについてもそのうち書きます。
HOW-TOについては日本語だとこれらのサイトが詳しいです。