分散ソフトウェア開発でのコラボレーションのためのgithubプルリクエスト方式が大好きです。それは議論とコードレビューを可能にします。
私の目標は、同じフローを使用することですが、githubなしでリポジトリ内で使用します。プロジェクトをフォークしたくありません。
想像してみてください。私は素晴らしい機能をローカルで開発しています。そして、コードレビューを強制するために私のマスターブランチでプルリクエストを作成したいと思います。
A---B---C feature/awesomeFeature
/
D---E---F---G Origin/master
master
Origin /マスターでプルリクエストを行うことは可能ですか?
私は試した git request-pull feature/awesomeFeature Origin
成功せず
機能ブランチをローカルで開発した場合は、次のものを使用する必要があります。
git request-pull Origin/master feature/awesomeFeature
これは、変更の概要のみを提供します。すべての詳細が必要な場合は、コマンドラインに-p
(パッチ用)を追加してください。
プルリクエストは実際にはgit自体に実装されていないため、gitの上に配置する別のシステムが必要になります。自分でリポジトリをホストする場合は、 GitLab などのソフトウェアを使用してリポジトリを管理し、プルリクエストを実行できます。
_
Origin/master
_でプルリクエストを行うことは可能ですか?
_Origin/master
_が有効なブランチである限り、はい。
ただし、Git 2.23(2019年第3四半期)では、「_git request-pull
_」は、ローカルリポジトリと公開されたリポジトリでプルするように要求する参照が異なる場合に警告するようになりました。
Paolo Bonzini(bonzini
) による commit 045422 、 commit 5731dfc (2019年5月28日)を参照してください。
( Junio C Hamano-gitster
- によってマージ commit dedc046 、2019年6月17日)
_
request-pull
_:リモートオブジェクトがローカルオブジェクトと同じでない場合に警告する場合によっては、_
git request-pull
_は、同じコミットを指しているにもかかわらず、異なるリモートオブジェクトとローカルオブジェクトで呼び出されることがあります。
たとえば、リモートオブジェクトは、軽量タグとローカル側の注釈付きタグの場合があります。または、ユーザーがタグをローカルで書き換え、プッシュするのを忘れた可能性があります。これが発生した場合、「_
git-request-pull
_」がローカルコミット(スクリプトでは_git ls-remote
_と呼ばれる)に一致するSHA1を返すことのみを確認するため、_$headrev
_は警告しません。このパッチは、「_
git-request-pull
_」出力の処理中に_git ls-remote
_がタグオブジェクトSHA1を取得するようにし、ローカルオブジェクトと照合できるようにします。