明確化(ubuntu 12.04でgitバージョン1.7.9.5を使用):
Gitはリモートを追加/削除します。これらは、サーバーが接続されたgitのリモートインスタンスです。
git remote add myremote git://remoteurl
その後、次のように言ったgitリポジトリをフェッチできます。
git fetch myremote
これにより「myremote」という名前のブランチが作成されるようですが、ブランチのリモートは自動的に設定されません。これを行うには、以下を実行する必要があります。
まず、この問題があることを確認します。
git config -l | grep myremote
次のようなものが表示されます。
remote.myremote.url=git://remoteurl
remote.myremote.fetch=+refs/heads/*:refs/remotes/myremote/*
branch.myremote.remote=.
branch.myremote.merge=refs/heads/master
が表示された場合はbranch.myremote.remote=.
、次に進んでください。
git config branch.myremote.remote myremote
git checkout myremote
git pull
これでリモートリポジトリが最新になり、プル/プッシュが適切なリモートに関連付けられます。この方法で、ブランチごとにリモートを切り替えることができます。[注意] [1]
The Official Git Config Documentationによると、デフォルトのプッシュブランチをセットアップできます(そのページでremote.pushdefaultを検索するだけです)。ただし、これは既存のリポジトリ/ブランチには影響しないため、これは機能しますが、新しいリポジトリ/ブランチ用。--global
はユーザー固有のリポジトリのデフォルト(〜/ .gitconfig)--system
を設定し、システム全体のリポジトリのデフォルト(/ etc / gitconfig)を設定し、フラグは現在のリポジトリ(./.gitconfig)の設定オプションを設定しないことを覚えておいてください。
また、push.default構成オプションは、ref-spec動作を構成するためのものであり、 リモート動作のためのものではないことに注意してください。
[1]:git branch --set-upstream myotherremote
通常はここで機能しますが、gitを使用すると、ブランチが独自のリモートとして設定されないというメッセージgit branch --set-upstream myremote
が表示されます。ただし、これは正しくない動作だと思います。