Gitの使用に関してはそこそこ自信があると思っていましたが、今の現場に入って、その自信がいかに浅かったか、思い知らされました。(commit/push/merge/branch操作など一通り使える=Git使える≒自信になっていたのですが、現場リーダーには『本当にGit使ったことあるのか』と何度も炙りなじられました。(´・ω・`))
今回は深みを追わず、『CherryPick』の意味についてだけ追う記事にしたいと思います。
CherryPickの英語的な意味とは
はじめは『さくらんぼ狩り』のことかと思いましたが、どうやら『必要なものをピンポイントで持って来る』のような意味合いでした。
cherry-pick
他動・自動
- 自分の気に入ったものだけをつまみ食いする
- 〔品物などを〕入念に[用心深く]選ぶ、えり好みして買う
- バーゲン品ばかりをあさる
『cherry pickを含む検索結果一覧』 --by英辞郎
特にニュースなどの文脈ではいいとこ取りをして、それ以外の情報を無視する、といったネガティブな意味で使われていることが多く見受けられました。
【Cherryに関する慣用句】
慣用句はどれもチェリー=おいしいもの、素敵な存在という意味で使われているようです。
- the cherry on the cake
何か良いものに加わることによってさらに最高、完璧になるもの。例えば美味しいケーキの上に最後に乗せるチェリー。
It was amazing winning the tournament, but the cherry on the cake was meeting Roger Federer!
「試合に勝てて嬉しかったんだけど、ロジャー・フェデラーに会えたことが一番最高だった!」
- cherry-pick
良いとこ取りをすること。チェリーだけをつまみ食いするイメージです。
Life isn't always fun, you can't just cherry-pick the good parts.
「人生はいつも楽しいわけじゃない、良いとこ取りをすることはできないんだ」
『Go bananasで「気が狂う」!? フルーツを使った英語イディオム15選』 --by DMM英会話
バスケットボールにおける『Cherry-Picker』
チェリーピッキングとは、バスケットボールで用いられる戦術の一つで、1人の選手が相手チームのゴール付近に留まり、残りの選手がディフェンスに回るというものです。
"What is Cherry Picking in Basketball?" --byRevUpSports
ドイツは『レーズンピック』らしい!
”CherryPick”をドイツ語での意味と対比している興味深い記事がありました。
記事にあるように、ドイツ語の『レーズンピック』には『チェリーピック』のような、『気に食わないものを無視する』というネガティブな意味が少なく、『良いものを選ぶ』というポジティブな意味で使われているようでした。
"sich die Rosinen herauspicken" --by DWDS
ドイツ語では「レーズンを摘む」(Rosinenpickerei、sich die Rosinen herauspicken)という口語表現があり、これはもともと、レーズンが入ったケーキやその他の料理を指す言葉です。レーズンはドイツで最も美味しい部分とされています。ドイツ首相はこの表現が大変気に入っているようで、 「Merkel」+「Rosinenpickerei」で検索すると、何万件もの検索結果が出てきます。
"Brexit: né uvetta né ciliegie né torta per gli inglesi" --by terminologiaetc.it
Gitのチェリーピック
Gitの「チェリーピック」は、コミットを丸ごとではなく部分的に持ってくる“いいとこ取り/つまみ食い”のような操作で、
便利な反面、常用はされず使いどころが問われる操作のようです。
チェリーピックの注意点
- コンフリクト →念入りに差分を確認しないと思わぬ場所で発生する
- 依存関係・整合性 →変なコミットが含まれている場合・必要コミットが含まれてない場合、バグが発生する
- 追跡・将来解析する際に困難・複雑になる可能性 →元コミットと同じ内容が、別のコミットIDとしてCherrypick先に生成されるため
「Git cherry pick は悪い習慣」論争について
StackOverFlowとRedditで「Cherrypick」は悪習なのか?という議論になっていました。
結果的には”悪習ではないが、常用というよりは特定のケースにおいて有用な対応である”、”ホットフィックスとしては許容範囲内”という意見で収束していました。
感想
『チェリーピック』とは意味的にも『ショートケーキの上のいちごだけ食べまくる』ことなのかもしれないと思いました。
参考
