Pytanie Zmień identyfikator URI (URL) dla zdalnego repozytorium Git


Mam repozytorium (źródło) na kluczu USB, który sklonowałem na moim dysku twardym (lokalnym). Przeniosłem "origin" na NAS i pomyślnie przetestowałem klonowanie go stąd.

Chciałbym wiedzieć, czy mogę zmienić URI "origin" w ustawieniach "local", więc będzie on teraz pobierał z NAS, a nie z klucza USB.

Na razie widzę dwa rozwiązania:

  • popchnij wszystko do usb-orign i skopiuj go ponownie do NAS (wymaga dużo pracy dzięki nowym zatwierdzeniom dla nas-origin);

  • dodaj nowy pilot do "lokalnego" i usuń stary (boję się, że złamie moją historię).


2800
2018-03-12 12:48


pochodzenie


Musiałem to zrobić na starej wersji git (1.5.6.5) i opcja set-url nie istniała. Po prostu usunięcie niechcianego pilota i dodanie nowego o tej samej nazwie działało bez problemu i utrzymywało historię w porządku. - HotN


Odpowiedzi:


Możesz

git remote set-url origin git://new.url.here

(widzieć git help remote) lub możesz po prostu edytować .git/config i zmień tam adresy URL. Nie grozi ci utrata historii, jeśli nie zrobisz czegoś bardzo głupiego (a jeśli się martwisz, po prostu zrób kopię repozytorium od czasu repozytorium jest twoja historia.)


4577
2018-03-12 12:55



Jeśli masz innego użytkownika powłoki, to może chcesz określić użytkownika git na początku nowego url np .: myself@git://new.url.here - sobi3ch
Możesz również ustawić główną gałąź rozgałęzienia dla swojej nowej lokalizacji początkowej za pomocą: git branch -u origin/master. To pozwoli ci po prostu git push zamiast konieczności git push origin master każdego razu. - kelorek
@kelorek lub możesz po prostu git push -u origin master pierwszy raz :) - hobbs
Musiałem również git remote set-url --push origin git://... w celu ustawienia adresu początkowego ... (push). - jpillora
użyj https: // zamiast git: // - Anil


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)

Zmienianie adresu URL zdalnego


581
2017-10-10 14:43



Jako osoba, która boi się terminala z powodu braku wizualnej informacji zwrotnej, bardzo doceniam twoją odpowiedź. - daniel.sedlacek
Wolę tę odpowiedź. Jest bardziej kompletny. - Gabriel Villacis
Nie dlatego, że nie lubię odpowiedzi hobbów, ale uważam, że szczegóły są bardziej zrozumiałe dla wszystkich, nawet dla inżynierów (lub nie inżynierów), którzy dopiero zaczynają. - Gabriel Villacis


Zmień host dla serwera Git Origin

od: http://pseudofish.com/blog/2010/06/28/change-host-for-a-git-origin-server/

Mam nadzieję, że nie jest to coś, co musisz zrobić. Serwer, z którego korzystałem przy współpracy nad kilkoma projektami git z wygaśnięciem nazwy domeny. Oznaczało to znalezienie sposobu na przeniesienie lokalnych repozytoriów w celu ponownego zsynchronizowania.

Aktualizacja: Dzięki @mawolf za wskazanie jest łatwy sposób z najnowszymi wersjami git (po lutym 2010):

git remote set-url origin ssh://newhost.com/usr/local/gitroot/myproject.git

Zobacz szczegóły na stronie man.

Jeśli masz starszą wersję, spróbuj tego:

Jako zastrzeżenie działa to tylko dlatego, że jest to ten sam serwer, tylko o różnych nazwach.

Zakładając, że jest to nowa nazwa hosta newhost.coma stary był oldhost.comzmiana jest dość prosta.

Edytuj plik .git/config plik w twoim katalogu roboczym. Powinieneś zobaczyć coś takiego:

[remote "origin"]
fetch = +refs/heads/*:refs/remotes/origin/*
url = ssh://oldhost.com/usr/local/gitroot/myproject.git

Zmiana oldhost.com do newhost.com, zapisz plik i gotowe.

Z moich ograniczonych testów (git pull origin; git push origin; gitx) wszystko wydaje się w porządku. I tak, wiem, że to jest zła forma do bałaganu z gitarami wewnętrznymi.


77
2018-02-15 02:52



Zła forma? Być może. Ale jeśli ty potrzeba zrobić coś, czego autorzy nie oczekiwali, że ktokolwiek kiedykolwiek będzie musiał zrobić, to czasami wymaga ingerencji w wewnętrzne elementy. Ale jeśli popełnisz błąd, musisz zaakceptować konsekwencje. Backup your local repository _before_ messing with git internals. - Jesse Chisholm


git remote set-url origin git://new.location

(alternatywnie, otwórz .git/config, szukać [remote "origin"]i edytuj plik url = linia.

Możesz to sprawdzić, analizując piloty:

git remote -v
# origin  git://new.location (fetch)
# origin  git://new.location (push)

Następnym razem, gdy będziesz naciskać, będziesz musiał określić nową gałąź upstream, np .:

git push -u origin master

Zobacz też: GitHub: Zmienianie adresu URL pilota


37
2018-04-26 23:13



Nie mogłem ustawić nowego pochodzenia przez edycję pliku .git / config. Podano, że repozytorium git o nazwie pod adresem URL nie było repozytorium git. Po usunięciu i ponownym utworzeniu pochodzenia wszystko było w porządku. Jednak nie szukałem zdalnego adresu URL dla git jako rozwiązania mojego problemu. - octopusgrabbus


  1. usuń pochodzenie za pomocą polecenia na gitbash git zdalne rm pochodzenie 
  2. A teraz dodaj nowe źródło używając gitbash git remote dodaj pochodzenie (Skopiuj adres URL HTTP z repozytorium projektu w wiadrze bitowej) Gotowe

14
2018-06-24 11:10





git remote set-url {nazwa} {url}

dawny) git remote set-url origin https://github.com/myName/GitTest.git


13
2017-12-28 04:53





Przełączanie zdalnych adresów URL

Otwórz terminal.

Ist Step:- Zmień bieżący katalog roboczy na swój lokalny projekt.

Drugi krok:- Wymień istniejące piloty, aby uzyskać nazwę pilota, który chcesz zmienić.

Trzeci krok:- git remote -v

origin  https://github.com/USERNAME/REPOSITORY.git (fetch)

origin  https://github.com/USERNAME/REPOSITORY.git (push)

Zmień adres URL zdalnego z HTTPS na SSH za pomocą polecenia git remote set-url.

4 krok:- git remote set-url origin git@github.com:USERNAME/REPOSITORY.git

Teraz sprawdź, czy zdalny adres URL się zmienił.

5 krok:- git remote -v Zweryfikuj nowy zdalny adres URL

origin  git@github.com:USERNAME/REPOSITORY.git (fetch)
origin  git@github.com:USERNAME/REPOSITORY.git (push)

12
2017-12-08 11:01





jeśli sklonujesz, twoja lokalna wola automatycznie się składa,

zdalny adres URL, skąd zostanie sklonowany.

możesz to sprawdzić za pomocą git remote -v

jeśli chcesz dokonać zmian,

git remote set-url origin https://github.io/my_repo.git

tutaj,

pochodzenie - twój oddział 

Jeśli chcesz przepisać istniejąca gałąź nadal możesz z niej korzystać ... nadpisze twoje istniejące ... to zrobi,

git remote remove url
and 
git remote add origin url

dla Ciebie...


6
2017-07-31 07:33