10

誰かがBitBucketでプルリクエストを送ってくれました。問題の変更は、デフォルトのブランチで送信されます。マージする前に、いくつかの調整を行いたいと思いますが、さらに重要なことに、コミュニティが評価して満足しているかどうかを確認できるように、この変更のプレビュービルドを公開したいと思います。

理想的には、変更をメインリポジトリにプルしたいのですが、ブランチに配置します。微調整をいくつか行います。他のビルドと同じようにタグを付けて公開します。ただし、これは可能ではないようです。正しく理解していれば、ブランチは「ベイクイン」されており、変更を別のブランチにプルすることはできません。これは正しいです?

もしそうなら、私は代わりに何ができますか?引っ張ってから2番目の頭を忘却にマージすると同時に、引っ張った変更からブランチを作成することもできます。または、フォークで作業を行うこともできますが、これは、メインリポジトリにこのビルドに関連付けられたタグがないことを意味します。それとも私は完全に何か他のことをすべきですか?

PS変更自体は高品質であり、これは元の作成者に改善を依頼することではありません。

4

4 に答える 4

3

Bitbucket の「プル リクエストを受け入れる」を使用するのではなく、ローカル リポジトリに変更をプルするだけです。rebase を使用して、コミット (またはコミットのセット) を名前付きブランチに移動できます。次に、メインの bitbucket リポジトリに変更をプッシュするだけです。(そして、変更がメイン リポジトリにプッシュされたことを示すコメントで bibucket プル リクエストを拒否する可能性があります)

例えば:

レポの場合: bitbucket/ProjectA/MainRepoForProjectA

プルリクエストの送信元: bitbucket/someuser/MainRepoForProjectA

  1. bitbucket/someuser/MainRepoMainRepoForProjectA からプル
  2. 名前付きブランチへの新しくプルされたコミットにリベースします。
  3. 必要な追加の変更を行います。
  4. bitbucket/ProjectA/MainRepoMainRepoForProjectA にプッシュ

注: 以前にリベースを使用したことがない場合:

  1. TortoiseHg ファイル -> 設定 -> 拡張機能で有効にします
  2. 変更を移動したいブランチのヘッドに更新します。
  3. 移動する変更のベースを右クリック -> 履歴の変更 -> リベース
于 2013-03-07T01:48:33.067 に答える
3

これは役立つかもしれません:

http://www.electricmonk.nl/log/2014/03/31/test-a-pull-merge-request-before-accepting-on-bitbucket/

基本的に、リンクは次のことを行うように言っています:

  • git fetch https://bitbucket.org/myrepository/master somename
  • git チェックアウト FETCH_HEAD
  • コードを検査し、心ゆくまでテストします。
  • (コードが受け入れられた場合)、git checkout master
  • git マージ FETCH_HEAD
  • ギットプッシュ
于 2014-04-07T11:19:20.513 に答える
2

プル リクエストを受け入れるとどうなるかはdocsに記載されています。マージを試み、競合を解決できるようになります。ドキュメントには、プル リクエストの作成時にターゲット ブランチを設定できることが記載されています。しかし、あなたのブランチはまだ存在していなかったので、貢献者はそれを選ぶことができませんでした。

そのため、ローカル マシンにプルし、いくつかのコミットを Hg の新しいブランチに移動してから、bitbucket にプッシュする必要があります。

履歴を変更すると寄稿者リポジトリの有効性に影響するため、リベースドキュメントをお読みください。再び同期するには、寄稿者が再度フォークする必要があります。彼がすでに高品質のコードを用意している場合、これは面倒になる可能性があります。

于 2013-03-07T18:26:11.657 に答える
0

次のようにプル リクエストのコードをプルできます。

git fetch origin refs/pull-requests/$PR_NO/from:$LOCAL_BRANCH
于 2015-11-06T12:33:04.773 に答える