これを行うには多くの方法があります。github はプル リクエストを推奨しています。リポジトリへのプッシュ アクセスがない場合を除き、これを行うか、パッチを送信する必要があります。ここにそのようなワークフローの例があります
git clone git@github.com:<their repo> [optional folder name]
cd reponame (or optional folder name)
リポジトリにサブモジュールがある場合
git submodule update --init (if the repo has submodules)
git submodule foreach 'git checkout <their working branch>'
コードをフォークします。作業する予定の特定のリポジトリをフォークします。これにより、プロジェクトの独自のコピーが作成されます。作業する予定のリポジトリに git をセットアップします。
cd <repo dir or optional one chosen)
git remote set-url origin git@github.com:<your github name>/<your repo>.git
git remote add --track next upstream git://github.com/<their github name>/<their repo>.git
これは、コードを支援するために設定されたリポジトリです。git pull、git push などを実行できます (これはフォークとの間で行われます)。パートナー リポジトリのブランチから変更を取り込むには、次のようにします。
git pull upstream branch
リポジトリに git push することはできません。そのためには、プル リクエストを行う必要があります。
満足したら、github (プロジェクト) に移動し、diff とプル リクエストを選択します。これにより、メッセージを入れることができ、lib メンテナーはリクエストに対応するためのメッセージを受け取ります。また、プル リクエストが正常にマージされるかどうかも示されます。メンテナーがコードを修正する必要がある場合、プル リクエストが受け入れられる可能性は低いでしょう。