web-dev-qa-db-ja.com

gitリポジトリのフェッチURLを変更する方法。

私はgithubプロファイルを持っていて、誰かのリポジトリを私の中にフォークしました。ローカルで私はこのリポジトリを使用してクローンを作成しました

git clone https://github.com/my-github-page/repo-name

さて、しばらくして元のリポジトリの所有者がリポジトリを更新しましたが、私のリポジトリは遅れています。だから、私がやりたいのならgit pull彼の変更を私のものにマージします。しかし、私は私の変更をローカルから私のものにプッシュしたいと思います。

簡単に言えば、もし私がgit remote show Origin私はこれを得ます:

[root@localhost xxx]# git remote show Origin
* remote Origin
  Fetch URL: https://github.com/my-github-profile/xxx
  Push  URL: https://github.com/my-github-profile/xxx
  HEAD branch: master
  Remote branches:
    1.0          tracked
    master       tracked
    system_tests tracked
  Local branch configured for 'git pull':
    master merges with remote master
  Local ref configured for 'git Push':
    master pushes to master (up to date)

次に、FETCH URLをリポジトリの元のsrcに変更します。オリジナルは更新されましたが、私のフォークは遅れています

11
hidar

あなたが試すことができます:

git remote set-url Origin /original/repo
git remote set-url --Push Origin /your/fork

このようにして、フェッチのみが元のリポジトリURLを参照します。

もちろん、他のより伝統的なアプローチは、別のリモートを宣言することです。詳細は "GitHubのOriginとアップストリームの違いは何ですか?"

12
VonC

次の質問からの参照: github、update forked project

以下をせよ:

git remote add upstream <url of the repo you cloned from>

この後、上流からプルします。これにより、すべてのリモート変更がローカルコピーにプルされます。

今後、リモートから変更を再度プルする必要がある場合は、アップストリームから再度プルできます。今回は、アップストリームURLを再度追加する必要はありません。

推奨される参考資料: フォークの同期

1
Divij Sehgal