Pytanie w sprawie github, github-for-mac, terminal – Github „fatal: zdalne pochodzenie już istnieje”

362

Staram się śledzićSamouczek Railsów Michaela Hartla ale natknąłem się na błąd.

Zarejestrowałem się na Github i wydałem nowy klucz SSH i stworzyłem nowe repozytorium. Ale kiedy wchodzę do następnego wiersza w terminalu, pojawia się następujący błąd:

Parkers-MacBook-Pro:.ssh ppreyer$ git remote add origin [email protected]:ppreyer/first_app.git
fatal: remote origin already exists.

Zastanawiałem się tylko, czy ktoś inny natknął się na ten problem?

Jeśli jeszcze utworzyłeś repozytorium git, spójrz na.git/config plik, aby sprawdzić, czy źródło nie zostało jeszcze zadeklarowane. Denys Séguret
Stałem wobec tego samego problemu i użyłem polecenia „git remote rm origin”, a następnie użyłem polecenia git remote add URL URL. Akhzar Nazir

Twoja odpowiedź

16   odpowiedzi
3

korzeń

jeśli nie, użyj sudo

za usunięcie pochodzenia:

git zdalnie usuń pochodzenie

dla dodania pochodzenia:

git remote dodaj początekhttp: // giturl

4

np. przesyłasz do github, a następnie przesyłasz do bitbucket, to pokazuje ten typ błędu.

Jak usunąć błąd: usuń plik git-hub w projekcie, a następnie powtórz następujące kroki ...

git init       
git remote add origin [email protected]:Yourname/firstdemotry.git  
git add -A  
git commit -m 'Message'  
git push -u origin master  
27

Najpierw wykonaj:

git remote rm origin

następnie

git remote add origin https://github.com/your_user/your_app.git

i voila! Pracowałem dla mnie!

Dlaczego usunąć pochodzenie? Czy jest jakiś sposób na dodanie czegoś zamiast pochodzenia? Abhils
717

DR powinieneś zaktualizować istniejący pilot:

$ git remote set-url origin [email protected]:ppreyer/first_app.git

Długa wersja:

Jak wskazuje komunikat o błędzie, istnieje już pilot skonfigurowany pod tą samą nazwą. Możesz więc dodać nowy pilot pod inną nazwą lub zaktualizować istniejący, jeśli go nie potrzebujesz:

Aby dodać nowy pilot, na przykład wywołanygithub zamiastorigin (który oczywiście już istnieje w twoim systemie), wykonaj następujące czynności:

$ git remote add github [email protected]:ppreyer/first_app.git

Pamiętaj jednak, że wszędzie w tutorialu, który widzisz"pochodzenie" powinieneś go zastąpić„github”. Na przykład$ git push origin master teraz powinno być$ git push github master.

Jeśli jednak chcesz to zobaczyćorigin który już istnieje, możesz zrobić$ git remote -v. Jeśli uważasz, że jest to spowodowane jakimś błędem, możesz go zaktualizować w następujący sposób:

$ git remote set-url origin [email protected]:ppreyer/first_app.git
Co robigit remote -v wyjścia? Możesz też spróbowaćgit push origin master? Agis
Ok, to zadziałało, ale kiedy przejdę do następnego kroku i wprowadzę git push -u master pochodzenia do terminala, otrzymuję następujący błąd: ERROR: Repository not found. fatal: zdalny koniec niespodziewanie odłożył słuchawkę Co to oznacza? ppreyer
Dlaczego pochodzenie miałoby istnieć w jego nowym repozytorium? Powinien rozwiązać problem (upewniając się na przykład, że pochodzenie jest poprawnym aliasem do github), zamiast tworzyć nowy alias, który musiałby przypominać. Denys Séguret
@zespri: usegit remote set-url --add origin [email protected]/username/repo.git eduncan911
git remote rm origin nie do końca działa. To wyprodukowałobłąd: nie można usunąć sekcji konfiguracji „remote.origin” Andrew Savinykh
7

remote to po prostu adres URL twojego zdalnego repozytorium.

Theorigin jestAlias wskazując na ten adres URL. Więc zamiast pisać cały adres URL za każdym razem, gdy chcemy coś wypchnąć do naszego repozytorium, używamy tego aliasu i uruchamiamy:

git push -u origin master

Mówi się, żeby to zrobićpush nasz kod z naszegolokalnymistrz Oddział dozdalnypochodzenie magazyn.

Kiedykolwiek mysklonuj repozytorium, git domyślnie tworzy ten alias dla nas. Również za każdym razem, gdy tworzymynowe repozytorium, po prostu tworzymy to samo.

Niezależnie od przypadku, zawsze możemy zmienić tę nazwę na wszystko, co nam się podoba, uruchamiając to:

git remote rename [current-name] [new-name]

Ponieważ jest przechowywany po stronie klientagit zmiana aplikacji (na naszej maszynie) nie wpłynie na nic w naszym procesie rozwoju, ani w naszym zdalnym repozytorium. Pamiętaj, że to tylko aimię wskazując naadres.

Jedyne, co się tutaj zmienia, zmieniając nazwę aliasu, to to, że musimy to zadeklarowaćnowe imie za każdym razem, gdy wrzucamy coś do naszego repozytorium.

git push -u my-remote-alias master

Oczywiście pojedyncza nazwa nie może wskazywać dwóch różnych adresów. Dlatego otrzymujesz ten komunikat o błędzie. Istnieje już alias o nazwieorigin na twojej lokalnej maszynie. Aby zobaczyć, ile masz aliasów i jakie są ich nazwy, możesz zainicjować to polecenie:

git remote -v

Spowoduje to wyświetlenie wszystkich posiadanych aliasów oraz odpowiednich adresów URL.

Możesz je również usunąć, jeśli chcesz to uruchomić:

git remote rm my-remote-alias
W skrócie:dowiedz się, co już masz,usuń je lub zmień ich nazwy,dodaj swoje nowe aliasy.

Szczęśliwe kodowanie.

0

aby wartość zwracana kodu wyjścia komendy wynosiła 0

Możesz usunąć starego pilota i dodać go ponownie

git remote remove $1 || true
git remote add $1 $2
1

cd existing_repog, to zdalne zmienianie nazwy pochodzenia stare pochodzenie
265

W skrócie,

git remote rm origin
git remote add origin [email protected]:username/myapp.git

Pracowałem!

Twoje zdrowie!

@KickButtowski rm odnosi się do polecenia remove używanego w * nix. To polecenie mówi gitowi, aby „usunął” dane zdalnego serwera o nazwie „pochodzenie”. rob
czy ktoś może to wyjaśnić? git zdalne źródło rm Kick Buttowski
Nie musisz tego robić w 2 krokach, gdy możesz to zrobić w 1. Zobacz moją odpowiedź. Agis
21

gdy tworzysz nowe repozytorium, zaczynając od starego repozytorium, którego użyłeś jako szablonu (nie rób tego, jeśli tak nie jest). Całkowicie usuń pliki git starego repozytorium, aby móc rozpocząć nowe:

rm -rf .git

Następnie ponownie uruchom nowe repozytorium git, jak zwykle:

git init
git add whatever.wvr ("git add --all" if you want to add all files)
git commit -m "first commit"
git remote add origin [email protected]:ppreyer/first_app.git
git push -u origin master
5

jeśli uruchomisz polecenie w katalogu bez zainicjowania git. Jeśli tak się stanie, najpierw wykonaj:

git init
0

ile masz aliasów i jakie są, możesz zainicjować to polecenie git remote -v

Następnie zobacz, w którym repozytorium jesteś, a następnie spróbuj git remote set-url --add [Wtedy twoje repozytorium] git push -u origin master

32

jakie zdalne repozytoria są skonfigurowane do łączenia się przez via

git remote -v

Spowoduje to zwrócenie listy w tym formacie:

origin  [email protected]:github/git-reference.git (fetch)
origin  [email protected]:github/git-reference.git (push)

Może to pomóc w ustaleniu, na co wskazuje pierwotne „pochodzenie”.

Jeśli chcesz zachować połączenie zdalne, które widzisz z -v, ale nadal chcesz podążać za samouczkiem Railsów bez konieczności pamiętania „github” (lub jakiejś innej nazwy) dla repo tutoriala, możesz zmienić nazwę swojegoinny repozytorium za pomocą polecenia:

git remote rename [current name] [new name]

jak w:

git remote rename origin oldrepo

Powinieneś wtedy być w stanie wznowić samouczek.

11

które repozytoria zdalne zostały połączone z lokalnymi repozytoriami, użyj polecenia cmd:

git remote -v

Teraz, jeśli chcesz usunąć zdalne repo (powiedz, pochodzenie), możesz:

git remote rm origin
@NathanTuggy Nie, to kompletna odpowiedź i moim skromnym zdaniem jest bardziej bezpośrednia niż najbardziej popularna w tym wątku. daOnlyBG
@NathanTuggy Woah, nie wiedział, że kiedyś były ciche zmiany. To wyjaśnia. daOnlyBG
@daOnlyBG: Nie jestem pewien, jak wyglądała odpowiedź, kiedy ją zobaczyłem, ponieważ to było przed komentarzami zablokowanymi w okresach karencji (i dlatego mogło być po cichu edytowane). Ale teraz, całkiem rozsądnie, zgadzam się. Nathan Tuggy
To wygląda bardziej jak komentarz niż odpowiedź. Przy odrobinie więcej rep,będziesz mógł dodawać komentarze. Nathan Tuggy
1

$ git remote add origin [email protected]:abc/backend/abc.git

W tym poleceniu origin nie jest częścią komendy, to tylko nazwa zdalnego repozytorium. Możesz użyć dowolnej nazwy, którą chcesz.

Najpierw możesz sprawdzić, co zawiera, używając poniższego polecenia

$ git remote -v

To da ci taki wynikorigin [email protected]:abc/backend/abc.git (fetch) origin [email protected]:abc/backend/abc.git (push) origin1 [email protected]:abc/backend/abc.git (fetch) origin1 [email protected]:abc/backend/abc.git (push)

jeśli zawiera ścieżkę zdalnego repozytorium, możesz bezpośrednio do niej przejść bez ponownego dodawania źródła

Jeśli nie zawiera ścieżki zdalnego repozytorium

Następnie możesz dodać nowe pochodzenie o innej nazwie i użyć tego do pchnięcia$ git remote add origin101 [email protected]:abc/backend/abc.git

Możesz też zmienić nazwę istniejącego pochodzenia, dodaj swoje pochodzenie

git remote rename origin destination

ponownie strzelaj pod komendą

$ git remote -v

destination [email protected]:abc/backend/abc.git (fetch) destination [email protected]:abc/backend/abc.git (push)

Zmieni twoją istniejącą nazwę repozytorium, abyś mógł użyć tej nazwy pochodzenia

Możesz też po prostu usunąć istniejące pochodzenie i dodać swoje pochodzenie

git remote rm destination

6

że masz już pilota w katalogu git. Jeśli jesteś zadowolony z tego pilota, możesz przesłać kod. Jeśli nie lub jeśli nie możesz popchnąć tylko:

git remote remove origin
git remote add origin [email protected]:ppreyer/first_app.git

Voilà!

36

już istnieje zdalne źródło.” Lub próbując usunąć pochodzenie i „błąd: nie można usunąć sekcji config remote.origin”, należy zrobić ustaw źródło ręcznie.

POSH ~ Git dla Windows PowerShell (i aplikacja GitHub dla Windows) z Windowsem ma z tym problem.

Wpadłem na to, jak robię to często, ponownie podczas konfigurowania mojej ośmiornicy. Oto jak to działa.

Najpierw sprawdź piloty:

C:\gd\code\octopress [source +2 ~3 -0 !]> git remote -v
octopress       https://github.com/imathis/octopress.git (fetch)
octopress       https://github.com/imathis/octopress.git (push)
origin

Najpierw zauważysz, że moje pochodzenie nie ma adresu URL. Każda próba usunięcia, zmiany nazwy itp. Nie powiedzie się.

Zmień więc adres URL ręcznie:

git remote set-url --add origin https://github.com/eduncan911/eduncan911.github.io.git

Następnie możesz potwierdzić, że działało, uruchamiającgit remote -v jeszcze raz:

C:\gd\code\octopress [source +2 ~3 -0 !]> git remote -v
octopress       https://github.com/imathis/octopress.git (fetch)
octopress       https://github.com/imathis/octopress.git (push)
origin  https://github.com/eduncan911/eduncan911.github.io.git (fetch)
origin  https://github.com/eduncan911/eduncan911.github.io.git (push)

To naprawiło dziesiątki repozytoriów git, z którymi miałem problemy, GitHub, BitBucket GitLab itp.

To działało dla mnie. Thanks @ eduncan911. Instrukcje github określają, jak zrobić „git init”, aby utworzyć nowe repozytorium w wierszu poleceń. Spowoduje to utworzenie zdalnego źródła bez adresu URL przy użyciu tego interfejsu PS. mikekidder
tak, to pomogło. Darius Miliauskas
Ach, tak, to kolejna sprawa i dlaczego musisz to zrobić. +1 Może powinniśmy zgłosić to do POSH Git na github. eduncan911
@MennoGouw Myślę, że to pytanie nie na temat; ale zazwyczaj jest to na desce rozdzielczej Repo / home. Jest również w ustawieniach projektu. eduncan911
Jak znaleźć adres URL podczas korzystania z gitlab? Madmenyo

Powiązane pytania