2011-12-18 16 views
1

私はGitHubのクライアントのプロジェクトで作業をしています.GitHubの変更は彼のリポジトリにあります。私はフォークの例に従おうとしましたが、アカウントリポジトリに移動するだけで変更を取得できましたか?フォークされたプロジェクトの変更を元のプロジェクトにプッシュするにはどうすればよいですか?

GitHubの例では、レポをフォークするために、元のプロジェクトを指すupstreamというリモートを作成します。私は私が私の口座に私の変更をコピーし

git push –u origin 

で私のレポに変更をアップロードすることができました

get fetch upstream 
git merge upstream/master 

ことによってそれから変更を取得することができます。

私は、元のアカウントに自分の変更をプッシュする

git push –u upstream 

を試してみました。私は次のエラー

を得たあなたはgitのにプッシュすることはできません。//github.com.octocat/SpoonKnife.git 使用[email protected]/Spoon0-Knife.git

+3

あなたがすでに投稿した質問の数は、少なくとも適切な書式で_try_を与え、コード/コマンドラインの例が正しい構文/スペルを持っていることを確認してください。ここのケースではそれはまあまあです。 – Mat

+0

クライアントのリポジトリへの書き込みアクセス権がない場合は、変更をプッシュできません。 –

答えて

3

を基本的にあなたのクライアントpull request(このGitHub help itemでこの詳細を)送る

  • :、あなたのクライアントと協力するためには、次の2つの主要なオプションを持っています。これにより、クライアントは、マージする前に、プロポーザルのいくつかの変更をレビュー、検討、および/またはリクエストすることができます。
  • クライアントからのリクエストは、committerとしてプロジェクトに追加されます。これにより、自分の側でフォーク/クローンされたリポジトリを必要とせずに、自分のコミットを自分のリポジトリに直接プッシュすることができます。サイドノートとして

Spoon-Knife.gitは(デモ目的のために使用される)のGitHubの読み取り専用リポジトリの一つであり、あなたは(あなたのクライアント GitHubのでない限り)それにコミットすることはできません。このように、クライアントのupstream gitのリモートは、ここでは異なるリポジトリに

を指している必要があります(あなたがフォークし、ローカルディスクにリポジトリをクローン化した後に従うべき)の手順です:git remote rm upstream

  1. 上流の参照を削除します
  2. お客様の情報に追加します。git remote add upstream [email protected]
  3. 変更内容をプッシュします。git push -u upstream mastergit push -uは、リモートリポジトリのHEADを設定します。
  4. あなたが引くしたい場合は、同じ - あなたが名前の由来は、原点と上流置き換える好む場合git pull upstream master

を、まだスプーン-Knife.gitへの参照を削除するにはステップ1に従ってください。その後、手順2 - git remote add origin [email protected]

0

git://github.com.octocat/SpoonKnife.gitは読み取り専用URLです。 GitHubが示唆するように、対応する書き込み可能なURLはgit @ githubです。comoctocat/Spoon0-Knife.git。 上流のリポジトリをプッシュできるようにするには、上流のチーム(つまり顧客)にコミッタとして追加するように依頼する必要があります。

関連する問題