Kiedy próbowałem biec
git push origin master --force
Właśnie dostałem
Counting objects: 2649, done.
Delta compression using up to 2 threads.
Compressing objects: 100% (1280/1280), done.
error: RPC failed; result=22, HTTP code = 413 | 116 KiB/s
fatal: The remote end hung up unexpectedly
Writing objects: 100% (2504/2504), 449.61 MiB | 4.19 MiB/s, done.
Total 2504 (delta 1309), reused 2242 (delta 1216)
fatal: The remote end hung up unexpectedly
Everything up-to-date
Czy to ma coś wspólnego z brakiem bezpieczeństwa? Próbowałem utworzyć klucz publiczny, jak w odpowiedzi na Fatal: Zdalny koniec nieoczekiwanie rozłączył się i uruchomił go ponownie, ale nadal nie działa. Czy tak naprawdę nie używam klucza? Jeśli tak, jak z niego korzystać?
git remote -v
error: could not lock config file .git/config: No such file or directory
pojawi zobacz stackoverflow.com/a/32329453/827525Odpowiedzi:
Wygląda to podobnie do tego, jak mogę ustawić github jako domyślny na ssh, a nie https dla nowych repozytoriów . Prawdopodobnie warto spróbować przełączyć się z protokołu HTTP na ssh:
źródło
origin
już tam jest i próbujesz go wymienić. git nie pozwala na to. Musisz najpierw to zrobić,git remote rm origin
a następnie spróbować ponownie. To by działałogit init
Problem wynika z ustawień bufora git / https. Aby go rozwiązać (wzięte z Gita nie udaje się, gdy wypychasz zatwierdzenie do github )
I ponownie uruchom komendę
źródło
--global
? Regularnie obsługuję duże repozytoria.Przyczyna: Przekroczono domyślny rozmiar pliku dla Git.
Rozwiązanie :
Przejdź do repozytorium.
Uruchom następującą komendę, aby zwiększyć bufor do 500 MB po przejściu do repozytorium:
źródło
git config ssh.postBuffer 524288000
jeśli publikujesz przez ssh zamiast http.git config --global http.postBuffer 100000000
Może pojawić się taki błąd
to dlatego, że nie masz lokalnego
.git/config
pliku Możesz uruchomić go za pomocą tego poleceniagit config --global http.postBuffer 524288000
źródło
Inne rozwiązania nie działały w moim przypadku, naprawienie śmiecia naprawiło to dla mnie:
git gc --aggressive
źródło
W przeciwieństwie do jednej z pozostałych odpowiedzi - miałem problem z wypychaniem za pomocą ssh - przełączyłem się na https i zostało to naprawione.
źródło
Ten błąd można również zgłosić przez brak uprawnień do zapisu w repozytorium.
Moja konkretna sprawa wyglądała następująco:
root
użytkownikiem mojego serwera (przez SSH).git
użytkownika linux, który powinien zarządzać wszystkimi działaniami związanymi z git.root
użytkownikiem, agit
użytkownik po prostu nie miał uprawnień do zapisywania czegokolwiek w repozytorium.źródło
Culprit (w moim przypadku):
sieć o dużym opóźnieniu.
Nie jest to odpowiedź sama w sobie, ale raczej spostrzeżenie, które może pomóc innym. Odkryłem, że ten błąd pojawia się czasami w sieciach o dużych opóźnieniach (muszę na przykład użyć anteny satelitarnej do dostępu do Internetu). Szybkość sieci jest dobra, ale opóźnienia mogą być wysokie. Uwaga: problem występuje tylko w niektórych scenariuszach, ale nie ustaliłem, jaki jest wzorzec.
Tymczasowe ograniczenie:
zmieniłem sieci - przeniosłem się do wolniejszej, ale o mniejszych opóźnieniach sieci komórkowej (mój telefon był używany jako hotspot) - i problem zniknął. Pamiętaj, że mogę to robić tylko w sposób przerywany, ponieważ moja łączność z komórkami jest również przerywana. Ponadto wykorzystanie przepustowości zwiększa koszty. Mam również szczęście, że mam tę opcję dostępną. Nie wszyscy to robią.
Jestem pewien, że jest gdzieś jakieś ustawienie konfiguracji, które sprawia, że git - albo ssh, curl albo cokolwiek pierwszy raz - jest bardziej tolerancyjny dla takich sieci, ale nie wiem co to jest.
Apel do deweloperów:
Tego rodzaju problemy stanowią stały problem dla ludności wiejskiej. Pomyśl o nas podczas projektowania systemów, narzędzi i aplikacji. Dziękuję Ci.
źródło
W naszym przypadku problemem był klon, który napisał
.git/config
plik zawierający wpis adresu URL będący metodą dostępu tylko do odczytu. Zmiana adresu URL z://
metody na@
metodę naprawiła problem.Bieganie
git remote -v
rozjaśniło problem.źródło
Jeśli używasz git dla systemu Windows (i prawdopodobnie tak jest, jeśli robisz to na komputerze z systemem Windows) i żadna z innych poprawek tutaj nie działała, spróbuj przejść na stronę https://github.com/git-for- windows / git / releases i pobieranie wersji w wersji 2.4.5 lub późniejszej Naprawiłem to dla mnie.
źródło
Prawdopodobnie sklonowałeś repozytorium w ramach istniejącego, aby rozwiązać problem, możesz po prostu sklonować repozytorium w innym katalogu i zreplikować zmiany w tym nowym katalogu, a następnie uruchomić wypychanie.
źródło
Kolejny dodatek, ponieważ napotkałem ten błąd w inny sposób i Google mnie tu zabrał.
Moim problemem było niedopasowanie sprawy; jeden camelCase i jeden nie. Najwyraźniej GIT przestaje to robić, nie mówiąc ci, dlaczego. Więc jeśli twoje gałęzie różnią się od zdalnego tylko wielkimi literami, spróbuj zmienić je tak, aby były identyczne.
Zobacz: Git: „Master nie może zostać rozgałęziony” po scaleniu
źródło
Może się to zdarzyć po zaktualizowaniu platformy OSX.
Otwórz Terminal i przejdź do folderu .ssh i naciśnij klawisz Enter
ssh-add -K ~/.ssh/id_rsa
źródło
PLESK Nginx i GIT Otrzymywałem ten błąd na plesk git i podczas wypychania dużego repozytorium za pomocą (kto wie co) dało mi ten błąd z kodem HTTP 413 i spojrzałem na następujący serwer to Plesk i miał działający nginx oraz apache2 więc przejrzałem dzienniki i znalazłem błąd w dziennikach nginx
Podążałem za tym linkiem, aby umożliwić plesk przebudować konfigurację przy większym przesyłaniu plików.
Pominąłem część php dla git
Po tym git push działał bez żadnych błędów.
źródło
Zdarzyło mi się mieć ten sam błąd podczas ściągania.
Zrobiłem sztuczkę „http.postBuffer”. To rozwiązało, ale kiedy chciałem pchać, ponownie napotkałem błąd.
Co rozwiązało mój problem:
1. Sklonowałem go do innego folderu z inną maszyną wirtualną. (Linux).
2. Wprowadziłem zmiany.
3. Wepchnąłem ją z oryginalną maszyną wirtualną, której początkowo nie mogłem pchać. (Windows)
źródło
Wystąpił ten błąd, gdy miałem niepoprawną parę kluczy w .ssh. Dodanie klucza pub do github (w ustawieniach) naprawiło ten problem.
źródło
Mam ten sam problem. Zauważyłem ze strony internetowej git, że URL sklonowanego SSH ma następną strukturę:
Mógłbym rozwiązać problem, zmieniając „:” przez „/” w następujący sposób:
może to być pomocne.
źródło
Wydaje się niemal bezcelowe dodawanie odpowiedzi, ale walczyłem z nią przez wieki, kiedy w końcu odkryłem, że to Visual Studio Online cierpi na sporadyczne awarie. Stało się to oczywiste, gdy VS wciąż prosił o kredyty, a strona VSO czasami dawała 500.
Następnie ustawiłem bufor bufora postów HTTP z powrotem na 2 MB, ponieważ myślę, że lepiej działa z wieloma mniejszymi postami.
Łukasz
źródło
Wygląda na to, że może to być jedna z tysiąca rzeczy.
Dla mnie początkowo pchałem master i rozwijałem się (master nie miał żadnych zmian) przez SourceTree. Zmiana tego, aby rozwijać, działała tylko.
źródło
Miałem podobny błąd podczas przesyłania dużego repozytorium, „fatal: Remote end nieoczekiwanie się rozłączył” bez dalszych szczegółów.
Po wielu badaniach, oto co zrobiłem:
Wreszcie przyszło mi do głowy, że mogę używać starszego klienta git, ponieważ nie widziałem dodatkowych komunikatów o błędach. I uaktualniony do najnowszej git klienta (2.20.1) i voila, błąd zniknął!
źródło
Wystąpił ten błąd, gdy źle napisałem nazwę mojego zdalnego oddziału
źródło
Udało mi się obejść ten problem za pomocą Git Shell.
Każde repozytorium w witrynie github.com zawiera adresy URL HTTPS / SSH / Subversion, których można użyć do pobrania za pomocą powłoki, patrz tutaj: http://prntscr.com/8ydguv .
Na podstawie ostatnich zmian GitHub, SSH wydaje się być najlepszą metodą.
Polecenie do użycia w powłoce:
źródło
git
w terminalu?Zrób to, aby zobaczyć klucz, którego używasz; ssh -vT [email protected]
Następnie upewnij się, że w swojej wersji masz to uruchomienie na początku. eval "$ (ssh-agent -s)" ssh-add ~ / .ssh / id_rsa
źródło
1) cd do projektu reż
2)
git status
3)
git checkout -f HEAD
4) potwierdź sukces, ponownie pociągając suwak w dół, aby upewnić się, że jesteś na bieżąco, jeśli Twoje repo wyglądało na niepełne
Działa to, jeśli pojawi się błąd z Git Visual Studio podczas klonowania repozytorium z Bitbucket
źródło
Może się to również zdarzyć, jeśli któryś z zatwierdzanych przez Ciebie zmian jest zniekształcony.
Miałem (nieświadomie) zatwierdzenie ze zniekształconym polem adresu e-mail autora, ale otrzymywałem tylko ten niejasny
remote end hung up
komunikat o błędzie. Udało mi się wcisnąć inne oddziały nie tylko ten jeden oddział, więc zacząłem popychając zobowiązuje od „złego” jednej gałęzi na raz aż w końcu wylądował na:Wygląda więc na to, że
remote end hung up unexpectedly
błąd polega na „przełykaniu” rzeczywistego komunikatu o błędzie, który jest prawdopodobnie rodzajem zniekształconego zatwierdzenia, jak tutaj.Po naprawieniu źle sformułowanego adresu e-mail udało mi się dobrze wypchnąć.
źródło
Nie sądzę, że to dobry pomysł, aby to zrobić, ale jeśli masz kopię zapasową na swoim komputerze ... naciśnij jeszcze raz, a następnie spróbuj klonować repo, a następnie usuń .git ze starego katalogu i przenieś .git z nowego sklonowanego folderu .. git został rozwiązany ale z powodu problemu niektóre pliki mogą nie zostać przesłane na git. Wciśnij ponownie wszystko od ur z powrotem, a następnie przeciągnij go na serwer ur lub inny komputer, na którym jest uszkodzony. W tej chwili właśnie to zrobiłem ... Działa dla mnie .. i zrób kopię zapasową swojego katalogu, zanim to zrobisz.
I proszę mnie poprawić, jeśli się mylę. Nie wiem też, co może pójść źle po wykonaniu tej czynności? Ale tym razem to naprawdę działa.
źródło
mój problem (krytyczny: zdalne zakończenie zostało nieoczekiwanie zawieszone) został rozwiązany przez sprawdzenie uprawnień i właściciela repozytorium.
Właścicielem plików repozytorium git musi być ten użytkownik, którego chcesz użyć do push / pull / clone.
źródło
Żadna z powyższych odpowiedzi nie działała dla mnie, ale oto, co zadziałało.
1) usuń
.git/
z projektu2) sklonuj zdalne repozytorium w nowej lokalizacji, takiej jak pulpit.
git clone https://github.com/foo/bar.git
3) przenieś
.git/
z nowej lokalizacji do starej lokalizacji4) ponów zatwierdzenie i pchnij zmiany
źródło
Problemem były dla mnie ustawienia sieciowe: mam kartę Wi-Fi „Killer”, która najwyraźniej psuje się z pakietami sieciowymi w sposób, którego nie lubią SSH i SSL.
Aby rozwiązać problem, musiałem wejść do „Killer Control Center”, „Parameters” i wyłączyć „Advanced Stream Detect” - polecenia git znów zaczęły działać natychmiast.
źródło
Ten artykuł ma bardzo dobre wyjaśnienie i rozwiązał mój problem.
https://confluence.atlassian.com/stashkb/git-push-fails-fatal-the-remote-end-hung-up-u nieoczekiwanie-282988530.html
źródło