コマンドラインから純粋な Git でマージリクエストを作成することは可能ですか? 質問する

コマンドラインから純粋な Git でマージリクエストを作成することは可能ですか? 質問する

私はファイアウォールの背後にインストールした Gitorious を使用しています。

Web アプリケーションにアクセスし、クローンからプル リクエストを作成し、クローン元のマスター リポジトリをターゲットにすることができます。

これをコマンドラインで実行できるようにしたいと思います。具体的には、あるブランチから別のブランチへのマージ リクエストをコマンドラインから開くことができるようにしたいと思います (クローンからシード リポジトリへのマージ リクエストではなく)。

Githubを使っていないので、Github固有のツールまたはライブラリ。これは可能ですか?

ベストアンサー1

svickによる回答正しくありません。可能。

そこにはgit request-pullこれは Git スイートの一部です。このコマンドライン ツールを使用して、電子メールで送信できるプル リクエストを作成できます。

例:
にはoriginブランチ がありますmaster。ここで、ローカルのバグ修正ブランチ を作成しfix、バグ修正を実装して、そのfixブランチを にプッシュしますorigin

git push origin fix:fix

fix次に、ブランチで行われた変更を にマージしてもらいたいとしますmaster。プルリクエストを作成するには、

git request-pull master origin

これにより、次のようにフォーマットされたテキストが作成されます。

The following changes since commit <SHA of master>:

  <commit message of SHA of mster>

are available in the git repository at:
  <repo location> fix

<User Name> (<Number of Commits>):
      <messages of the commits>
      ...

 <changed files>
 ...
 <file statistics>

マージリクエストが、変更をプッシュしたリポジトリにアクセスできない人に送られる場合は、git format-patch

fixブランチをプッシュした後origin(プッシュする必要はありません)、fixブランチにいる間に、次のコードを使用してパッチを作成します。

git format-patch master..

fixこれにより、 から分岐してからの各コミットに対してパッチファイルが作成されます。生成されたファイルを次のようにmasterバンドルできます。.patch

tar czf fix.tgz *.patch

その後、電子メールなどで誰かに送信し、確認してもらい、適用してもらいます。

完全を期すために、パッチの適用は次のように行うことができます。git am

おすすめ記事