Mam serwery aplikacji, które ładuję razem za pomocą Chef + niektóre skrypty bash typu ad-hoc. Problem polega na tym, że gdy chcę uruchomić aktualizację na jednym z tych serwerów aplikacji, otrzymuję:
19:00:28: *** Please tell me who you are.
Run
git config --global user.email "[email protected]"
git config --global user.name "Your Name"
Czy naprawdę muszę to ustawiać, aby robić proste za git pull origin master
każdym razem, gdy aktualizuję serwer aplikacji? Czy można zrezygnować z tego zachowania, aby nie było błędu, gdy nazwa i adres e-mail nie są ustawione?
git pull
ma zamiar utworzyć zatwierdzenie, ponieważ na przykład dokonał scalenia.Odpowiedzi:
Spędzam na tym wiele godzin, kiedy wywołuję skrypt php, aby inicjować i zatwierdzać git. I odkryłem, że przepływ pracy powinien być:
Jeśli zamienisz [23] i 1, konfiguracja w ogóle nie będzie działać.
Chciałbym, żeby to pomogło.
źródło
--global
przełącznik dogit config
poleceń i zrobić to raz dla swojego konta systemu operacyjnego. Po tym kroki 2-3 nie są potrzebne.Zamiast zrobić a
git pull
, możesz:Żadna z nich nie wymaga konfiguracji nazwy użytkownika / adresu e-mail git.
To zniszczy wszelkie niezatwierdzone lokalne zmiany / zatwierdzenia i pozostawi HEAD wskazujący na zatwierdzenie (nie oddział). Ale żaden z nich nie powinien stanowić problemu dla serwera aplikacji, ponieważ nie powinieneś wprowadzać lokalnych zmian ani dokonywać zmian w tym repozytorium.
źródło
git fetch && git reset --hard HEAD
?git reset --hard HEAD
po prostu odrzuca twoje niezaangażowane zmiany, nie zmienia to, na czym opiera się twój obszar roboczy (ponieważ z definicji jesteś już na HEAD)Jeśli używasz sourcetree: Repozytorium -> Ustawienia repozytorium -> Zaawansowane -> odznacz pole „Użyj globalnych ustawień użytkownika”
działało świetnie dla mnie.
źródło
to działa dla mnie, spróbuj To .. musisz skonfigurować terminal z dostępem zdalnym.
źródło
Zaktualizuj proces ładowania początkowego, aby utworzyć
${HOME}/.gitconfig
odpowiednią zawartość lub skopiować skądś istniejący.źródło
To zadziałało dla mnie świetnie.
źródło
Ten sam problem był ze mną i został rozwiązany przez dodanie domyślnej nazwy i adresu e-mail Ustawienia repozytorium.
Zgodnie z sugestią Dorona -
Jeśli używasz sourcetree: Repozytorium -> Ustawienia repozytorium -> Zaawansowane -> odznacz pole „Użyj globalnych ustawień użytkownika”.
Dodaj domyślną nazwę i adres e-mail.
źródło
W moim przypadku brakuje słowa „e” w słowie „email”, jak stwierdził Chad powyżej, ale widzę, że tak nie jest w przypadku ciebie. Naciśnij następujące polecenie, aby sprawdzić, czy wszystko działa zgodnie z oczekiwaniami.
źródło
Musisz napisać swój e-mail w ten sposób
Następnie: wpisz nazwę użytkownika
Po tym pojawi się okno Poupup
Napisz NAZWA UŻYTKOWNIKA i E- MAILU Na konto, które chcesz wnieść
źródło
Dla mnie problemem było połączenie sieciowe, po ponownym połączeniu z moim Wi-Fi można było pobrać szczegóły i zatwierdzić bez żadnych problemów.
źródło
Zapyta tylko raz i upewni się, że klucz publiczny rsa dla tego komputera został dodany do twojego konta github, do którego próbujesz zatwierdzić lub przekazać żądanie ściągnięcia.
Więcej informacji na ten temat można znaleźć: tutaj
źródło
Miałem to jako wadliwy komunikat o błędzie:
git pull
działało dobrze na linii cmdgit pull
nie powiodło się w procesie CGI Perla (haka sieciowego do automatycznego wdrażania z github) z powyższym błędem.Wykonanie
git status
zidentyfikowanego pliku kolizji. Sortowanie to naprawiło problem.Problem pojawił się później, kiedy zmieniłem niektóre ustawienia konfiguracji.
Tym razem ustawienie $ HOME i $ USER env var naprawiło to (domyślnie są wyłączone w procesie CGI)
źródło
Spójrz na plik konfiguracyjny.
Repozytorium> Ustawienia repozytorium> Edytuj plik konfiguracyjny.
Sprawdź, czy
[user]
sekcja istnieje. Jeśli brakuje sekcji użytkownika, dodaj ją.Przykład:
źródło
używam heroku cli 1. muszę używać całej nazwy użytkownika i adresu e-mail użytkownika
$ git config --global user.email .login email.
$ git config --global nazwa.użytkownika .heroku nazwa.
git dodaj *
5 git commit -m "po config user.name, email użytkownika"
git push heroku master
źródło
Używam Jenkinsa i napotkałem ten problem podczas próby wydania wydania (które wymaga polecenia git commit). Aby rozwiązać problemy, musiałem dodać niestandardową nazwę użytkownika / adres e-mail (patrz zdjęcie). Dzięki temu podczas sprawdzania kodu używał nazwy / adresu e-mail mojego użytkownika podczas wykonywania wydania. Uwaga: ta konfiguracja jest dostępna w konfiguracji projektu rurociągu Jenkins Multibranch Pipeline.
źródło
git pull
nie powinno tego wymagać. Jeśli jednak ściągnięcie powoduje konflikt scalania, wydaje się to niepotrzebne.źródło
IMHO, właściwym sposobem rozwiązania tego błędu jest skonfigurowanie globalnego pliku konfiguracyjnego git.
Aby to zrobić, uruchom następujące polecenie:
git config --global -e
Pojawi się edytor, w którym możesz wstawić domyślne konfiguracje git.
Oto kilka:
Aby uzyskać więcej informacji, zobacz Dostosowywanie Git - Konfiguracja Git
Gdy zobaczysz polecenie typu
git config
...... możesz umieścić to w globalnym pliku konfiguracyjnym git jako:
W przypadku jednorazowych konfiguracji możesz użyć czegoś takiego
git config --global user.name 'your_username'
Jeśli nie ustawisz globalnie konfiguracji git, musisz to zrobić dla każdego repozytorium git, z którym pracujesz lokalnie.
Ustawienia user.name i user.email mówią git, kim jesteś, więc później
git commit
polecenia nie będą narzekać,*** Please tell me who you are.
Wiele razy polecenia git sugerują, że nie należy uruchamiać. Tym razem sugerowane polecenia nie są złe:
Wskazówka: dopóki nie zaznajomiłem się z git, tworzenie kopii zapasowej pliku projektu - przed uruchomieniem sugerowanych poleceń git i eksplorowaniem rzeczy, które moim zdaniem mogłyby zadziałać - kilkakrotnie zapisywało mój bekon.
źródło
Nie można automatycznie wykryć adresu e-mail.
Domyślnie przyjmuje nazwę użytkownika systemu
[email protected]
.Musisz więc ustawić swój adres e-mail jak poniżej:
Po ustawieniu adresu e-mail możesz uruchomić polecenia git i zatwierdzić zmiany.
źródło
Wystąpił ten komunikat o błędzie podczas próby zatwierdzenia niektórych plików.
Po prostu uruchomienie,
git fetch
a następnie próba ponownego zatwierdzenia działało dla mnie.źródło
Aby to naprawić używam: git config --global user.email „[email protected]” i działa.
user.mail nie ma pracy, może trzeba umieścić E. Typo?
źródło
To literówka. Przypadkowo ustawiłeś „user.mail” bez „ e ”. Napraw to, ustawiając „ e- mail użytkownika” w konfiguracji globalnej za pomocą
git config --global user.email „[email protected]”
Znaleziono rozwiązanie tutaj
https://stackoverflow.com/a/14662703
źródło