cherry-pick コマンドを使用すると、ブランチ全体をマージすることなく、特定のコミットの変更を現在のワークスペースに適用できます。
<ref_id> パラメータはチェリーピックするコミットの ID です。
[<paths>...] パラメータは、指定したファイルやフォルダーにチェリーピックの対象を限定します。フォルダーを指定すると、そのフォルダー配下でコミットが行ったすべての変更が取り込まれます。省略するとコミット全体が対象になります。パスはコマンドを実行したフォルダーからの相対パスとして解釈されます。*.png などのワイルドカードはサポートされていません。
[--nowait] は、ファイルがローカルワークスペースへの同期を完了するのを待たずにすぐに戻ります。デフォルトでは、コマンドは同期が完了するまで待ちます。
これは、すべてをマージすることなく別のブランチから特定の変更を適用したいときに便利です。
コミットをチェリーピックする例:
dv.commit.1042 の変更が現在のワークスペースに適用されます。ブランチに保存するには、これらの変更をコミットする必要があります。
コミットの一部だけを選ぶには、コミット ID の後に必要なファイルやフォルダーを指定します:
src/player.cpp と Assets/Textures 配下すべての変更を適用し、コミットの残りは取り込みません。
指定したパスの下でコミットが何も変更していない場合、コマンドはそのパスを報告しつつ、他のパスは適用します。指定したいずれのパスの下でもコミットが何も変更していない場合、コマンドは失敗し、ワークスペースは元のままになります。
リネームされたファイルは新しいパスに属します。新しいパスを選ぶと古いパスもクリアされ、古いパスを指定しても何も取り込まれません。
チェリーピックされたコミットと現在のワークスペースの間に競合がある場合、手動で解決する必要があります。競合しないファイルは引き続き適用されます。

