SYNOPSIS

git cherry-pick [--edit] [-n] [-m parent-number] [-s] [-x] <commit>

DESCRIPTION

既存のコミットを一つ渡し、そのパッチによる変更を適用し、新しいコミットを記録します。 ワーキングツリーがクリーンであることが必要です(HEADコミットから何も変更されていないということです)

OPTIONS

<commit>

チェリーピックするコミットを選択します。 コミットに関する完全な記述方法については、 git-rev-parse(1) の "SPECIFYING REVISIONS" を参考にして下さい。

-e
--edit

このオプションと一緒にgit cherry-pick すると、 コミットメッセージをコミットする前に編集出来ます。

-x

コミットを記録する際、通常のコミットメッセージに加え、この変更が どこのコミットからチェリーピックされたのかを、追記します。 追記されるのは、チェリーピック時にコンフリクトが起きなかった時だけです。 もしあなたの個人的なブランチからチェリーピックする場合、 受け手にとって不要な情報なので、このオプションは使わないで下さい。 一方、お互いに公開されている参照可能な二つのブランチ(例. 開発ブランチから メンテナンスブランチへ、旧リリース版のためにバックポーティングする)ならば、 この情報を加えることは役に立つことがあります。

-r

上で説明した-x`がデフォルトオプションとして使われていた時、 -r`はそれを無効にする役割を担っていました。 今はデフォルトでは'-x'が無効のため、このオプションは何もしません。

-m 親番号
--mainline 親番号

通常、マージコミットをチェリーピックすることはできません。 何故なら、マージした親のどちらがメインラインなのか 判断できないからです。 このオプションはメインラインの親番号(1 から開始する数値)を指定し、 指定した親との相対的な変更を適用する為のオプションです。

-n
--no-commit

通常、チェリーピックは自動的にコミットを作成します。 このフラグは、指定されたコミットをチェリーピックするのに 必要な変更をあなたのワーキングツリーとインデックスに適用しますが、 コミットはしません。 加えてこのオプションが使われた場合、 あなたのインデックスがHEADコミットである必要はありません。 チェリーピックはあなたのインデックスの初期状態に対して変更を加えるでしょう。

これは、一つ以上のコミットをチェリーピックして インデックスの行に影響を与えるのに便利です。

-s
--signoff

コミットメッセージの最後に署名を加えます。

Author

このプログラムは Junio C Hamano <gitster@pobox.com> によって書かれました。

Documentation

このドキュメントは Junio C Hamano と git-list <git@vger.kernel.org> 有志によって書かれました。

GIT

このコマンドは git(1) スイートの一部です。