問題タブ [git-cherry-pick]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
28 に答える
909906 参照

git - Gitの別のブランチから変更を選択的にマージまたは選択するにはどうすればよいですか?

私はGitを、2つの並行する(ただし現在は実験的な)開発ブランチを持つ新しいプロジェクトで使用しています。

  • master:既存のコードベースのインポートに加えて、私が一般的に確信しているいくつかの変更
  • exp1:実験ブランチ#1
  • exp2:実験ブランチ#2

exp1そして、exp22つの非常に異なるアーキテクチャアプローチを表しています。さらに進むまで、どちらが機能するか(どちらかがあれば)を知る方法はありません。一方のブランチで進歩を遂げていると、もう一方のブランチで役立つ編集があり、それらだけをマージしたい場合があります。

他のすべてを残したまま、ある開発ブランチから別の開発ブランチへの選択的な変更をマージするための最良の方法は何ですか?

私が検討したアプローチ:

  1. git merge --no-commit続いて、ブランチ間で共通にしたくない多数の編集を手動でアンステージします。

  2. 共通ファイルを一時ディレクトリにgit checkout手動でコピーした後、他のブランチに移動し、さらに手動で一時ディレクトリから作業ツリーにコピーします。

  3. 上記のバリエーション。今のところブランチを放棄し、exp実験のために2つの追加のローカルリポジトリを使用します。これにより、ファイルの手動コピーがはるかに簡単になります。

これらの3つのアプローチはすべて、面倒でエラーが発生しやすいようです。より良いアプローチがあることを願っています。git-mergeより選択的になるフィルターパスパラメーターに似たもの。

0 投票する
8 に答える
136314 参照

git - Gitとのコミットを部分的にチェリーピッキング

私は2つの異なるブランチに取り組んでいます:リリース開発

リリースブランチにコミットされたいくつかの変更を開発ブランチに統合する必要があることに気づきました。

問題は、すべてのコミットを必要とせず、特定のファイルの一部のハンクだけを必要とするため、単純なことです。

トリックをしません。

私がするとき

差分は表示されますが、現在の作業ツリーに部分的に適用する良い方法がわかりません。

0 投票する
10 に答える
426195 参照

git - コミットの範囲をチェリーピックして別のブランチにマージする方法は?

次のリポジトリ レイアウトがあります。

  • マスター ブランチ (本番)
  • 統合
  • 働く

私が達成したいのは、作業ブランチからさまざまなコミットを厳選し、それを統合ブランチにマージすることです。私はgitにかなり慣れていないので、リポジトリを台無しにせずにこれを正確に行う方法(マージではなく、1回の操作でコミット範囲をチェリーピッキングする)を理解できません。これに関する指針や考えはありますか?ありがとう!

0 投票する
1 に答える
74 参照

git - 1 つのブランチから 1 つのコミットをマスターにマージしますか?

gitブランチに関するこの本のセクションを読みました。

「実験的」というブランチを作成しました。そのブランチに切り替えて、そこで 2 つのコミットを行います。それで、実験の後のコミット (2 つのコミットのうちの 2 つ目) をマスター ブランチにマージすることが可能でしょうか?

ありがとうございました。

0 投票する
1 に答える
16395 参照

git - Gitのブランチ間でコミットを移動するにはどうすればよいですか?

これは簡単な質問と回答であると確信していますが、どの用語を検索すればよいかわかりません。私はこれを持っています:

ブランチでC、D、およびE(ローカルのみ)をコミットしたところ、DとEは本当にCから独立していることに気付きました。Cを独自のブランチに移動し、後で使用できるようにDとEを保持したいと思います。つまり、私はこれが欲しいです:

DとEの下からCをヤンクするにはどうすればよいですか?

0 投票する
2 に答える
204329 参照

git - ある支店から別の支店へのチェリーピックの方法

私は2つのブランチを持っています、masterそしてdev

私はブランチにいて、1つのコミットをからにdevチェリーピックしたいと思います。だから私はしましたmasterdev

しかし、そうするとgit status、gitの履歴gitxにコミットが表示されません。be530cec7748e037c665bd5a585e6d9ce11bc8ad

devブランチでコミットを確認するにはどうすればよいですか?

0 投票する
1 に答える
397 参照

git - 開発およびライブWebサイトのGit

私は開発WebサイトとライブWebサイトの両方にGitを使用しており、それぞれを独自のブランチ「dev」と「master」に保持しています。'dev'ブランチでのテストが終了したら、変更を'master'にマージしますが、'dev'ブランチ/サーバーだけに固有のファイルをいくつか保持する必要があります。

つまり、index.phpには、すべてのページの上部に「開発サーバー」メッセージが表示され、Google Analyticsの追跡はありません。このように、このメッセージを保持したいと思います。

また、マージするときに変更されるべきではないいくつかの構成ファイル。

私はチェリーピックを使用していますが、これは遅くてイライラします...これを行うためのより良い方法ですか?

0 投票する
5 に答える
191782 参照

git - 特定のコミットまでマージする

gitnewbranchのブランチから名前を付けた新しいブランチを作成しました。master今、私はいくつかの作業を行い、にマージnewbranchしたいと思いmasterます; ただし、にいくつかの追加の変更を加えたので、最後から4番目のコミットまでnewbranchマージしたいと思います。newbranchmaster

私は使用cherry-pickしましたが、正しいオプションを使用するためのメッセージが表示されます。

代わりにgitを使用mergeしてそれを行うことはできますか?

0 投票する
5 に答える
453348 参照

git - git cherry-pick は、「...38c74d はマージですが、-m オプションが指定されていません」と言います。

master ブランチにいくつかの変更を加えたので、それらをアップストリームに持ち込みたいと考えています。次のコミットをチェリーピックすると。ただし、gitが言うfd9f578で立ち往生します:

git が私に伝えようとしているのは何ですか?ここで使用するのはチェリーピックが正しいですか? master ブランチには、upstream ブランチで変更されたファイルへの変更が含まれているため、マージの競合が発生することは確かですが、それらは解決するほど悪くはありません。どこでどの変更が必要かを知っています。

これらは、私がアップストリームに持ち込みたいコミットです。

0 投票する
12 に答える
1623445 参照

git - Gitでコミットをチェリーピッキングするとはどういう意味ですか?

最近、私はcherry-pickコミットを求められました。

では、gitでコミットをチェリーピッキングするとはどういう意味ですか?どうしますか?