Как изменить URI (URL) для удаленного хранилища Git? - PullRequest
3257 голосов
/ 12 марта 2010

У меня есть репо (источник) на USB-ключе, который я клонировал на своем жестком диске (локальном). Я переместил «origin» на NAS и успешно протестировал его клонирование.

Хотелось бы узнать, смогу ли я изменить URI "origin" в настройках "local", чтобы он теперь вытягивался с NAS, а не с USB-ключа.

Пока я вижу два решения:

  • отправить все на usb-orign и снова скопировать его на NAS (подразумевает много работы из-за новых коммитов в nas-origin);

  • добавить новый пульт в "local" и удалить старый (боюсь, я сломаю свою историю).

Ответы [ 15 ]

6 голосов
/ 20 августа 2017

Если вы используете TortoiseGit, выполните следующие действия:

  1. Перейдите в локальную папку оформления заказа и щелкните правой кнопкой мыши, чтобы перейти к TortoiseGit -> Settings
  2. В левой панели выберите Git -> Remote
  3. В правой панели выберите origin
  4. Теперь измените значение текстового поля URL, чтобы ваш новый удаленный репозиторий был

Ваш филиал и все ваши локальные коммиты останутся нетронутыми, и вы сможете продолжать работать, как и раньше.

6 голосов
/ 25 апреля 2017

В Git Bash введите команду:

git remote set-url origin https://NewRepoLink.git

Введите учетные данные

Готово

5 голосов
/ 02 апреля 2019

У вас есть много способов сделать это:

Консоль

git remote set-url origin [Here new url] 

Просто убедитесь, что вы открыли его в месте, где находится хранилище.

Config

Он находится в .git / config (в той же папке, что и хранилище)

[core]
    repositoryformatversion = 0
    filemode = false
    bare = false
    logallrefupdates = true
    symlinks = false
    ignorecase = true
[remote "origin"]
    url = [Here new url]  <------------------------------------
...

TortoiseGit

Step 1 - open settings

Step 2 - change url

Тогда просто отредактируйте URL.

SourceTree

  1. Нажмите кнопку «Настройки» на панели инструментов, чтобы открыть окно настроек репозитория.

  2. Нажмите «Добавить», чтобы добавить путь к удаленному хранилищу в хранилище. Откроется окно «Удаленные данные».

  3. Введите имя для удаленного пути.

  4. Введите URL / путь к удаленному хранилищу

  5. Введите имя пользователя для услуги хостинга для удаленного хранилища.

  6. Нажмите «ОК», чтобы добавить удаленный путь.

  7. Вернувшись в окно настроек репозитория, нажмите «ОК». Новый удаленный путь должен быть добавлен в хранилище.

  8. Если вам нужно отредактировать уже добавленный удаленный путь, просто нажмите кнопку «Редактировать». Вы должны перейти в окно «Удаленные данные», где вы можете редактировать данные (URL / Путь / Тип хоста) удаленного пути.

  9. Чтобы удалить путь к удаленному репозиторию, нажмите кнопку «Удалить»

enter image description here

enter image description here

исх. Поддержка

4 голосов
/ 15 октября 2018

enter image description here

Устранение неисправностей:

Вы можете столкнуться с этими ошибками при попытке сменить пульт. Нет такого удаленного '[name]'

Эта ошибка означает, что пульт, который вы пытались изменить, не существует:

git remote set-url sofake https://github.com/octocat/Spoon-Knife фатальный: нет такого удаленного «софтика»

Убедитесь, что вы правильно ввели удаленное имя.

Ссылка: https://help.github.com/articles/changing-a-remote-s-url/

1 голос
/ 25 мая 2019

Изменить URI удаленного git на git@github.com вместо https://github.com

git remote set-url origin git@github.com:<username>/<repo>.git

Преимущество состоит в том, что вы можете делать git push автоматически при использовании ssh-agent :

eval `ssh-agent` && expect ~/.ssh/agent && ssh-add -l
git add . && git commit -m "your commit" && git push -u origin master

Также, когда вы используете ожидайте для файла сценария, как показано ниже:

#!/usr/bin/expect -f
spawn git push origin
expect "Username for 'https://github.com':"
send "<username>\n"
expect "Password for 'https://user@github.com':"
send "<password>\n"
interact
...