Mam problem z git i moim terminalem.
Oto galeria przedstawiająca mój numer: http://imgur.com/a/6RrEY
Kiedy wypycham zatwierdzenia z mojego terminala, git mówi, że wysyłam je z inną nazwą użytkownika, to jest użytkownik z mojej organizacji (mojej firmy) bez żadnego zatwierdzenia i wygląda na to, że nie należy do nikogo: (sprawdź pierwsze zdjęcie w galerii)
Ale tak się nie dzieje, gdy używam Github dla Maca, w kanale widzę zatwierdzone przez siebie zatwierdzenia.
Problem dotyczy również moich osobistych repozytoriów, mój terminal mówi, że nie mam uprawnień do wypychania zatwierdzeń w tych repozytoriach (co jest oczywiście błędne), ponieważ próbuje wysłać je z tym użytkownikiem: (sprawdź drugie zdjęcie w galerii)
Zgadnij co ? Nie dzieje się tak również w przypadku Github na Maca.
Kilka dni temu zmieniłem komputer na zupełnie nowy, więc zresetowałem cały mój klucz ssh z github i zostawiłem tylko nowy wygenerowany przez Github dla Maca, więc nie sądzę, że jest jakiś ukryty klucz użytkownika duch / ssh gdzieś, ten dysk jest zupełnie nowy: (sprawdź galerię trzecie zdjęcie)
Mój plik .gitconfig jest czysty, są tylko moje dane uwierzytelniające: ( patrz czwarte zdjęcie w galerii)
Naprawdę tego nie rozumiem, pomóż, StackOverflow, jesteś moją jedyną nadzieją.
(Przepraszam za moje słabe umiejętności Gimp i odniesienie do Gwiezdnych Wojen)
EDYCJA: ssh-add -l
pokazuje tylko dobry klucz ssh utworzony przez github dla mac i mam tylko jedno konto github
EDIT2: ssh -T git@github.com
rozpoznaj mnie jako dobrego użytkownika.
EDIT3: Po kilku testach wygląda na to, że mój terminal wykonuje zatwierdzenia z moją nazwą użytkownika, ale wypycha je drugą, Github for Mac zatwierdza i wypycha z dobrą nazwą użytkownika. jedynki).
EDIT4: W osobistym repozytorium git log --pretty="%h %an %ae"
pokazuje moją dobrą nazwę użytkownika
EDIT5: Brak oznak zmiennych środowiskowych, które przesłaniałyby moje poświadczenia w plikuenv
. Nawet jeśli spróbuję ustawić te zmienne z dobrymi poświadczeniami, problem będzie się powtarzał.
EDIT6: Wszystko działa normalnie, jeśli zmuszę użytkownika do wejścia na ścieżkę /.git/config
repozytorium, ale nie sądzę, że to dobra opcja:http://USER@github.com/USER/REPO.git
EDIT7: Usunęliśmy użytkownika git, który przekazał mi zmiany, co powoduje kolejny błąd:remote: Invalid username or password. fatal: Authentication failed for 'https://github.com/USER/REPO.git/'
KOŃCOWA EDYCJA: zainstalowałem git z homebrew, git config --global push.default simple
wpisałem i teraz pobiera moje poświadczenia nawet bez wymuszania na użytkowniku. To jest dziwne. Dziękuję wszystkim za pomoc, jesteście wspaniali!
~/.gitconfig
jest jasne i tak jest $project_root/.git/config
. W rzeczywistości mam ten problem z każdym projektem osobistym, projekty robocze mogą być wypychane, ponieważ ten inny użytkownik należy do mojej organizacji, która jest właścicielem tych repozytoriów.
~/.gitconfig
i$project_root/.git/config
pliki. Jedna z tych dwóch jest z pewnością błędnie skonfigurowana dla nazwy użytkownika.