検索

GitでCherry-Pickingがコミットします

この記事では、「Advanced Git」シリーズを継続しています。 Twitterでフォローするか、今後の記事の最新情報についてはニュースレターを購読してください!

前回の記事では、リベッシングとマージを探索しました。微妙に異なっていますが、 git mergegit rebase両方が同じ基本的な目的を果たします。あるブランチから別のブランチへの変更を統合します。

この記事では、 git cherry-pick 、あらゆる支店から現在の頭への個々のコミットを選択できる強力なコマンドです。これは、Source Branchからすべての新しいコミットを組み込んだgit mergeおよびgit rebaseとは対照的です。

なぜ単一のコミットを選択的に適用するのですか?重要なユースケースは、エラーを修正することです。誤って間違った枝にコミットすることを想像してください。 cherry-pick修正を簡素化します:正しいブランチに切り替えて、誤ったコミットをチェリーピックします。

高度なGitシリーズ:

  • パート1:理想的なgitコミットを作成します
  • パート2:効果的なGit分岐戦略
  • パート3:プルリクエストとのコラボレーションの合理化
  • パート4:マージの競合の解決
  • パート5:リベッシングとマージ:比較
  • パート6:インタラクティブなリベースのマスター
  • パート7: GitでCherry-Picking Commits(あなたはここにいます!
  • パート8:失われた失われたリフレグとのコミットメントの回復

注意の言葉: cherry-pickへの過度の依存を避けてください。 git mergegit rebaseによって促進されるブランチレベルのワークフローが一般的に推奨されます。 cherry-pickは、特定の状況に役立つ貴重なツールであり、標準のマージやリベッシングに代わるものではありません

コミットの再配置

このシナリオを考えてみましょう。 feature/newsletterブランチを目的としたコミットは、誤ってmasterに上陸しました。次のタワースクリーンショット(Macos and Windows用のgit gui)はこれ26bf1b48示していますmaster

または、コマンドラインが問題を明らかにします。

 $ gitログ
Commit 26BF1B4808BA9783E4FABB19EC81E7A4C8160194(Head-> Master)
著者:TobiasGünther
日付:10月5日金曜日09:58:03 2018 0200

    ニュースレターサインアップページ

Commit 26bf1b48feature/newsletterに属します。 cherry-pickを使用して移動しましょう。

 $ gitチェックアウト機能/ニュースレター
ブランチ「機能/ニュースレター」に切り替えた
$ gitステータス
ブランチ機能/ニュースレター
コミットするものは何もありません
$ git cherry-pick 26bf1b48
[機能/ニュースレター7FB55D0]ニュースレターサインアップページ
 著者:TobiasGünther 
 日付:10月5日金曜日09:58:03 2018 0200
 1ファイルの変更、0挿入()、0 deletions( - )
 モード100644 signup.htmlを作成します

git logfeature/newsletterのコミットを表示します。

 $ gitログ
コミット7FB55D06A8E70FDCE46921A8A3D3A9DE7F7FB8D7(Head-> Feature/Newsletter)
著者:TobiasGünther 
日付:10月5日金曜日09:58:03 2018 0200

    ニュースレターサインアップページ

注: cherry-pickコミットのコピーを作成し、オリジナルをそのまま残します。

クリーンアップ

「間違った」コミットはmasterに残ります。 git resetそれを削除します:

 $ gitチェックアウトマスター
ブランチ「マスター」に切り替えた
$ gitリセット - ヘッドヘッド〜1
ヘッドは現在776F8CAでタイトルと削除エラーページについて変更します

タワーGUIは、このプロセス全体を視覚化します。

毎日のドライバーではなく、専門のツール

可能な場合は、 mergeまたはrebaseを優先します。特に個人のコミットを移動するのに適していない状況のためにcherry-pickを予約します。 git cherry-pick複製がコミットすることを忘れないでください。その後は常にクリーンアップしてください。

分岐戦略、インタラクティブなリベース、リフェログ、サブモジュールなど、より深いギットツールへのより深いダイブのための無料の「Advanced Git Kit」を探索してください。

ハッピーチェリーピッキング、そして次の「高度なgit」分割払いでお会いしましょう!

高度なGitシリーズ:

  • パート1:理想的なgitコミットを作成します
  • パート2:効果的なGit分岐戦略
  • パート3:プルリクエストとのコラボレーションの合理化
  • パート4:マージの競合の解決
  • パート5:リベッシングとマージ:比較
  • パート6:インタラクティブなリベースのマスター
  • パート7: GitでCherry-Picking Commits(あなたはここにいます!
  • パート8:失われた失われたリフレグとのコミットメントの回復

以上がGitでCherry-Pickingがコミットしますの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
Google Fontsをタグ付けし、Goofonts.comを作成する方法Google Fontsをタグ付けし、Goofonts.comを作成する方法Apr 12, 2025 pm 12:02 PM

Goofontsは、開発者妻とデザイナーの夫によって署名されたサイドプロジェクトであり、どちらもタイポグラフィの大ファンです。 Googleにタグを付けています

時代を超越したWeb開発記事時代を超越したWeb開発記事Apr 12, 2025 am 11:44 AM

Pavithra Kodmadは、彼らが変化したWeb開発に関する最も時代を超越した記事のいくつかであると考えていることについて、人々に推奨事項を求めました

セクション要素との取引セクション要素との取引Apr 12, 2025 am 11:39 AM

2つの記事がまったく同じ日に公開されました。

graphQlの練習JavaScript APIでクエリをクエリしますgraphQlの練習JavaScript APIでクエリをクエリしますApr 12, 2025 am 11:33 AM

GraphQL APIの構築方法を学ぶことは非常に挑戦的です。ただし、10分でGraphQL APIを使用する方法を学ぶことができます!そして、それは私が完璧になったことがあります

コンポーネントレベルのCMSコンポーネントレベルのCMSApr 12, 2025 am 11:09 AM

コンポーネントがデータが近くに住んでいる環境に住んでいる場合、視覚コンポーネントと

円にタイプを設定します...オフセットパス付き円にタイプを設定します...オフセットパス付きApr 12, 2025 am 11:00 AM

ここでは、Yuanchuanからの合法的なCSSの策略があります。このCSSプロパティオフセットパスがあります。むかしむかし、それはモーションパスと呼ばれ、その後改名されました。私

CSSで「戻る」ことは何をしますか?CSSで「戻る」ことは何をしますか?Apr 12, 2025 am 10:59 AM

Miriam Suzanneは、このテーマに関するMozilla開発者のビデオで説明しています。

現代の恋人現代の恋人Apr 12, 2025 am 10:58 AM

私はこのようなものが大好きです。

See all articles

ホットAIツール

Undresser.AI Undress

Undresser.AI Undress

リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover

AI Clothes Remover

写真から衣服を削除するオンライン AI ツール。

Undress AI Tool

Undress AI Tool

脱衣画像を無料で

Clothoff.io

Clothoff.io

AI衣類リムーバー

AI Hentai Generator

AI Hentai Generator

AIヘンタイを無料で生成します。

ホットツール

WebStorm Mac版

WebStorm Mac版

便利なJavaScript開発ツール

SublimeText3 中国語版

SublimeText3 中国語版

中国語版、とても使いやすい

Dreamweaver Mac版

Dreamweaver Mac版

ビジュアル Web 開発ツール

mPDF

mPDF

mPDF は、UTF-8 でエンコードされた HTML から PDF ファイルを生成できる PHP ライブラリです。オリジナルの作者である Ian Back は、Web サイトから「オンザフライ」で PDF ファイルを出力し、さまざまな言語を処理するために mPDF を作成しました。 HTML2FPDF などのオリジナルのスクリプトよりも遅く、Unicode フォントを使用すると生成されるファイルが大きくなりますが、CSS スタイルなどをサポートし、多くの機能強化が施されています。 RTL (アラビア語とヘブライ語) や CJK (中国語、日本語、韓国語) を含むほぼすべての言語をサポートします。ネストされたブロックレベル要素 (P、DIV など) をサポートします。

AtomエディタMac版ダウンロード

AtomエディタMac版ダウンロード

最も人気のあるオープンソースエディター