Просто уточнення (з використанням git версії 1.7.9.5 на ubuntu 12.04):
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]
Згідно з офіційною документацією Git Config , ви можете встановити типову гілку за замовчуванням (просто шукайте віддалений.pushdefault на цій сторінці), проте майте на увазі, що це не вплине на сховища / гілки, які вже існують, тому це буде працювати, але лише для нових сховищ / відділень. Ви повинні пам’ятати, що --global
буде встановлено специфічні для користувача налаштування репозиторію (~ / .gitconfig), --system
встановлено загальносистемні параметри сховища (/ etc / gitconfig), і жоден прапор не встановить параметри конфігурації для поточного сховища (./.gitconfig).
Також слід зазначити, що параметр config push.default призначений для налаштування поведінки ref-spec , а не віддаленої поведінки.
[1]: git branch --set-upstream myotherremote
зазвичай працює тут, проте git поскаржиться, що він не встановить гілку як власний пульт, якщо git branch --set-upstream myremote
використовується. Однак я вважаю, що це неправильна поведінка.