Как изменить URI (URL) для удаленного репозитория Git?
У меня есть РЕПО (origin) на USB-ключе, который я клонировал на своем жестком диске (локальном). Я переместил "origin" в NAS и успешно протестировал его клонирование отсюда.
Я хотел бы знать, могу ли я изменить URI "origin" в настройках "local", поэтому теперь он будет тянуть из NAS, а не из USB-ключа.
пока я вижу два решения:
нажмите все на usb-orign и скопируйте его на NAS снова (подразумевает много работы из-за новые коммиты на nas-origin);
добавьте новый пульт в "local" и удалите старый (боюсь, я сломаю свою историю).
11 ответов
вы можете
git remote set-url origin git://new.url.here
(см. git help remote
) или вы можете просто изменить .git/config
и измените URL-адреса там. Вы не рискуете потерять историю, если не сделаете что-то очень глупое (и если вы беспокоитесь, просто сделайте копию своего РЕПО, так как ваше РЕПО is ваша история.)
git remote -v
# View existing remotes
# origin https://github.com/user/repo.git (fetch)
# origin https://github.com/user/repo.git (push)
git remote set-url origin https://github.com/user/repo2.git
# Change the 'origin' remote's URL
git remote -v
# Verify new remote URL
# origin https://github.com/user/repo2.git (fetch)
# origin https://github.com/user/repo2.git (push)
изменить хост для сервера Git Origin
from:http://pseudofish.com/blog/2010/06/28/change-host-for-a-git-origin-server/
надеюсь, это не то, что вам нужно сделать. Сервер, который я использовал для совместной работы над несколькими проектами git, имел срок действия доменного имени. Это означало поиск способа миграции локальных репозиториев для синхронизации.
Update: спасибо @mawolf за указание на то, что простой способ с последними версиями git (post Feb, 2010):
git remote set-url origin ssh://newhost.com/usr/local/gitroot/myproject.git
Подробнее см. На странице руководства.
если вы находитесь на старой версии, то попробуйте этот:
в качестве предостережения, это работает только как один и тот же сервер, только с разными именами.
предполагая, что новое имя хоста newhost.com
, а старый был oldhost.com
изменение довольно просто.
редактировать .git/config
файл в вашем рабочем каталоге. Ты должен кое-что увидеть. например:
[remote "origin"]
fetch = +refs/heads/*:refs/remotes/origin/*
url = ssh://oldhost.com/usr/local/gitroot/myproject.git
изменить oldhost.com
to newhost.com
сохраните файл, и вы сделали.
из моего ограниченного тестирования (git pull origin; git push origin; gitx
) вроде все в порядке. И да, я знаю, что это плохой тон связываться с Git internals.
git remote set-url origin git://new.location
(альтернативный вариант:.git/config
искать [remote "origin"]
и редактировать url =
линии.
вы можете проверить его работу, изучив пульты:
git remote -v
# origin git://new.location (fetch)
# origin git://new.location (push)
в следующий раз, когда вы нажмете, вам нужно будет указать новую ветку вверх по течению, например:
git push -u origin master
Читайте также: GitHub: изменение URL удаленного
переключение удаленных url
Открыть Терминал.
Ист Шаг:- измените текущий рабочий каталог на локальный проект.
Шаг 2:- перечислите существующие пульты, чтобы получить имя пульта, который вы хотите изменить.
3-й шаг:- git remote -v
origin https://github.com/USERNAME/REPOSITORY.git (fetch)
origin https://github.com/USERNAME/REPOSITORY.git (push)
измените URL вашего пульта с HTTPS на SSH с помощью команды git remote set-url.
4-й Шаг:- git remote set-url origin git@github.com:USERNAME/REPOSITORY.git
теперь убедитесь, что удаленный URL-адрес изменился.
Шаг 5:- git remote -v
Проверьте новый удаленный URL
origin git@github.com:USERNAME/REPOSITORY.git (fetch)
origin git@github.com:USERNAME/REPOSITORY.git (push)
- удалить origin с помощью команды на gitbash git remote RM origin
- и теперь добавьте новый Origin с помощью gitbash git remote добавить origin (скопируйте URL-адрес HTTP из репозитория проекта в битовую корзину) сделал
Если вы клонировали ваш локальный будет автоматически состоять,
удаленный URL, где он клонируется.
вы можете проверить это с помощью git remote -v
Если вы хотите внести изменения в него,
git remote set-url origin https://github.io/my_repo.git
здесь
origin-ваша ветвь
Если вы хотите перезаписать существующая ветка вы все еще можете использовать ее.. это отменит ваше существование ... сойдет,
git remote remove url
and
git remote add origin url
для вас...
в Git Bash введите команду:
git remote set-url origin https://NewRepoLink.git
введите учетные данные
сделал
если вы используете TortoiseGit, выполните следующие действия:
- перейдите в локальную папку проверки и щелкните правой кнопкой мыши, чтобы перейти к
TortoiseGit -> Settings
- в левой панели выбрать
Git -> Remote
- в правой панели выберите
origin
- изменить
URL
значение текстового поля, где когда-либо ваш новый удаленный репозиторий
ваша ветка и все ваши локальные коммиты останутся нетронутыми, и вы можете продолжать работать, как раньше.