2013-09-06 18 views
6

Jestem na Ubuntu 12.04 LTS i właśnie zaktualizowałem mój git z 1.7 - coś do wersji 1.8.4. Problemem jest to, kiedy chcą pchnąć do repozytorium GitHub, pojawia się następujący komunikat i push nie dzieje:Zdalny anonimowy dostęp do repozytorium zabroniony?

/caniuse $ git push 
Username for 'https://github.com': rafalchmiel 
Password for 'https://[email protected]': 
remote: Anonymous access to rafalchmiel/caniuse.git denied. 
fatal: Authentication failed for 'https://github.com/rafalchmiel/caniuse.git/' 

To, co dostaję od git config --list:

user.name=Rafal Chmiel 
[email protected] 
alias.undo-commit=reset --soft HEAD^ 
color.ui=true 
push.default=matching 
credential.helper=cache --timeout=86400 
github.user=rafalchmiel 
core.repositoryformatversion=0 
core.filemode=true 
core.bare=false 
core.logallrefupdates=true 
remote.origin.url=https://github.com/rafalchmiel/caniuse.git 
remote.origin.fetch=+refs/heads/*:refs/remotes/origin/* 

A te moje piloty (git remote -v):

origin https://github.com/rafalchmiel/caniuse.git (fetch) 
origin https://github.com/rafalchmiel/caniuse.git (push) 

próbowałem konfigurowania kluczy SSH ponownie (choć odbywa się to za pośrednictwem HTTP) i nie szukać opcji. Brak szczęścia. Jakieś pomysły na to, co jeszcze mógłbym zrobić?

+3

Czy próbowałeś zmienić pilota, aby użyć łącza SSH? –

+0

Dziękuję bardzo za sugestię, wypróbowałem to i zadziałało od razu. Zrzucam HTTPS na dobre! SSH FTW. – raf

Odpowiedz

5

Problemy nie zostały rozwiązane, jednak ostatecznie zdecydowałem się na SSH zamiast HTTPS. SSH spowodował w ogóle problemy z no (i nie trzeba wpisywać nazwy użytkownika i przekazywać)!

+2

+2, naprawdę, po stracie dość czasu, to rozwiązało! – maaartinus

+0

SSH powoduje inne problemy. –

+0

Świetnie, z wyjątkiem mojej organizacji blokuje port 22, więc SSH nie jest opcją :-([email protected] "odpowiedź poniżej (Personal Access Token) działa jednak :-) –

0

Napotykałem podobny problem i trafiłem na to pytanie w poszukiwaniu odpowiedzi.

Wyjąłem problem.

  1. Użycie polecenia git push bez dodawania plików może dać ten błąd
  2. Użycie polecenia git push bez dodawania jakichkolwiek zobowiązuje może zrobić to samo

więc proste rozwiązanie byłoby obserwować tą

git add --all . 
git commit 
git push 
2

Miałem ten problem ze względu na fakt, że miałem włączoną funkcję 2-Factor-Auth, a hasło, o które prosił, to e wygenerował hasło/osobisty token dostępu, a nie moje hasło LDAP. Nie pamiętałem, że go skonfigurowałem w tym czasie.

Tworzenie osobistego tokena dostępu: https://help.github.com/articles/creating-an-access-token-for-command-line-use/, pozwoliło mi pomyślnie przesłać z użyciem wygenerowanego tokena jako hasła.

Kontekst: Wewnętrznie hostowany Enterprise Github. Może klonować, włączony jako współpracownik, ale nie może przepchnąć oryginału.

+0

To działało! Wielkie dzięki xtopolis. Mój kontekst różni się nieco od twojego: Mam włączony 2-czynnik-Auth, ale używam IntelliJ 2017.2.5 na Linuksie. Jeszcze raz dziękuję, Orlando. – Orco

0

Jeśli chcesz użyć klucza SSH, należy użyć następującego formatu:

$ <snip> on MBP-0x00A3 in ~/misc/vim_dotfiles 
✭ (git) working on branch alternate ✔ 
❯❯ git remote -v 
origin https://github.com/<snip>/vim_dotfiles.git (fetch) 
origin https://github.com/<snip>/vim_dotfiles.git (push) 

$ <snip> on MBP-0x00A3 in ~/misc/vim_dotfiles 
✭ (git) working on branch alternate ✔ 
❯❯ git remote add personal [email protected]:<snip>/vim_dotfiles.git 

$ <snip> on MBP-0x00A3 in ~/misc/vim_dotfiles 
✭ (git) working on branch alternate ✔ 
❯❯ git remote -v 
origin https://github.com/<snip>/vim_dotfiles.git (fetch) 
origin https://github.com/<snip>/vim_dotfiles.git (push) 
personal [email protected]:<snip>/vim_dotfiles.git (fetch) 
personal [email protected]:<snip>/vim_dotfiles.git (push) 

Teraz można zrobić:

[email protected]:~$ git push personal <branch> 

i wymusi stosowanie klucza SSH.

Powiązane problemy