Перейти к содержимому

Author identity unknown git что делать

  • автор:

1.6 Введение — Первоначальная настройка Git

Теперь, когда Git установлен в вашей системе, самое время настроить среду для работы с Git под себя. Это нужно сделать только один раз — при обновлении версии Git настройки сохранятся. Но, при необходимости, вы можете поменять их в любой момент, выполнив те же команды снова.

В состав Git входит утилита git config , которая позволяет просматривать и настраивать параметры, контролирующие все аспекты работы Git, а также его внешний вид. Эти параметры могут быть сохранены в трёх местах:

  1. Файл [path]/etc/gitconfig содержит значения, общие для всех пользователей системы и для всех их репозиториев. Если при запуске git config указать параметр —system , то параметры будут читаться и сохраняться именно в этот файл. Так как этот файл является системным, то вам потребуются права суперпользователя для внесения изменений в него.
  2. Файл ~/.gitconfig или ~/.config/git/config хранит настройки конкретного пользователя. Этот файл используется при указании параметра —global и применяется ко всем репозиториям, с которыми вы работаете в текущей системе.
  3. Файл config в каталоге Git (т. е. .git/config ) репозитория, который вы используете в данный момент, хранит настройки конкретного репозитория. Вы можете заставить Git читать и писать в этот файл с помощью параметра —local , но на самом деле это значение по умолчанию. Неудивительно, что вам нужно находиться где-то в репозитории Git, чтобы эта опция работала правильно.

Настройки на каждом следующем уровне подменяют настройки из предыдущих уровней, то есть значения в .git/config перекрывают соответствующие значения в [path]/etc/gitconfig .

В системах семейства Windows Git ищет файл .gitconfig в каталоге $HOME ( C:\Users\$USER для большинства пользователей). Кроме того, Git ищет файл [path]/etc/gitconfig , но уже относительно корневого каталога MSys, который находится там, куда вы решили установить Git при запуске инсталлятора.

Если вы используете Git для Windows версии 2.х или новее, то так же обрабатывается файл конфигурации уровня системы, который имеет путь C:\Documents and Settings\All Users\Application Data\Git\config в Windows XP или C:\ProgramData\Git\config в Windows Vista и новее. Этот файл может быть изменён только командой git config -f , запущенной с правами администратора.

Чтобы посмотреть все установленные настройки и узнать где именно они заданы, используйте команду:

$ git config --list --show-origin

Имя пользователя

Первое, что вам следует сделать после установки Git — указать ваше имя и адрес электронной почты. Это важно, потому что каждый коммит в Git содержит эту информацию, и она включена в коммиты, передаваемые вами, и не может быть далее изменена:

$ git config --global user.name "John Doe" $ git config --global user.email johndoe@example.com

Опять же, если указана опция —global , то эти настройки достаточно сделать только один раз, поскольку в этом случае Git будет использовать эти данные для всего, что вы делаете в этой системе. Если для каких-то отдельных проектов вы хотите указать другое имя или электронную почту, можно выполнить эту же команду без параметра —global в каталоге с нужным проектом.

Многие GUI-инструменты предлагают сделать это при первом запуске.

Выбор редактора

Теперь, когда вы указали своё имя, самое время выбрать текстовый редактор, который будет использоваться, если будет нужно набрать сообщение в Git. По умолчанию Git использует стандартный редактор вашей системы, которым обычно является Vim. Если вы хотите использовать другой текстовый редактор, например, Emacs, можно проделать следующее:

$ git config --global core.editor emacs

В системе Windows следует указывать полный путь к исполняемому файлу при установке другого текстового редактора по умолчанию. Пути могут отличаться в зависимости от того, как работает инсталлятор.

В случае с Notepad++, популярным редактором, скорее всего вы захотите установить 32-битную версию, так как 64-битная версия ещё не поддерживает все плагины. Если у вас 32-битная Windows или 64-битный редактор с 64-битной системой, то выполните следующее:

$ git config --global core.editor "'C:/Program Files/Notepad++/notepad++.exe' -multiInst -notabbar -nosession -noPlugin"

Примечание

Vim, Emacs и Notepad++ — популярные текстовые редакторы, которые часто используются разработчиками как в Unix-подобных системах, таких как Linux и Mac, так и в Windows. Если вы используете другой редактор или его 32-битную версию, то обратитесь к разделу Команды git config core.editor за дополнительными инструкциями как использовать его совместно с Git.

Предупреждение

В случае, если вы не установили свой редактор и не знакомы с Vim или Emacs, вы можете попасть в затруднительное положение, когда какой-либо из них будет запущен. Например, в Windows может произойти преждевременное прерывание команды Git при попытке вызова редактора.

Настройка ветки по умолчанию

Когда вы инициализируете репозиторий командой git init , Git создаёт ветку с именем master по умолчанию. Начиная с версии 2.28, вы можете задать другое имя для создания ветки по умолчанию.

Например, чтобы установить имя main для вашей ветки по умолчанию, выполните следующую команду:

$ git config --global init.defaultBranch main

Проверка настроек

Если вы хотите проверить используемую конфигурацию, можете использовать команду git config —list , чтобы показать все настройки, которые Git найдёт:

$ git config --list user.name=John Doe user.email=johndoe@example.com color.status=auto color.branch=auto color.interactive=auto color.diff=auto . 

Некоторые ключи (названия) настроек могут отображаться несколько раз, потому что Git читает настройки из разных файлов (например, из /etc/gitconfig и ~/.gitconfig ). В таком случае Git использует последнее значение для каждого ключа.

Также вы можете проверить значение конкретного ключа, выполнив git config :

$ git config user.name John Doe

Примечание

Так как Git читает значение настроек из нескольких файлов, возможна ситуация когда Git использует не то значение что вы ожидали. В таком случае вы можете спросить Git об origin этого значения. Git выведет имя файла, из которого значение для настройки было взято последним:

$ git config --show-origin rerere.autoUpdate file:/home/johndoe/.gitconfig false

Проблемы с гитом. Что делать?

Деплою бота на heroku и после ввода в консоль команды: git commit -m «First relese получаю ошибку:

C:\Users\Irina\Desktop\py\tbot2>git commit -m "First relese" Author identity unknown *** Please tell me who you are. Run git config --global user.email "you@example.com" git config --global user.name "Your Name" to set your account's default identity. Omit --global to set the identity only in this repository. fatal: unable to auto-detect email address (got 'Irina@Irina.(none)') C:\Users\Irina\Desktop\py\tbot2>
  • Вопрос задан более двух лет назад
  • 1933 просмотра

3 комментария

Простой 3 комментария

notiv-nt

Run git config --global user.email "you@example.com" git config --global user.name "Your Name"

Действительно, что же делать

Levman5

Любитель поиграть в самолёты @Levman5 Автор вопроса

Git Error: Author identity unknown, Please tell me who you are [duplicate]

I’ve heard this problem happening before, it may occur on this situations:

1.If You’re Using Git Desktop

As Described in This Post, Github Desktop Does Strange and requires you to set the settings manually in app setting

2.There something wrong with your creds

Make sure the email and username are correct

3.There something wrong on your computer

Try setting them as a global variable like this:

GIT_AUTHOR_EMAIL="[email protected]" && GIT_AUTHOR_NAME="Your Name" && git commit 

Or, you can edit your ~/.gitconfig file directly. Look and see if there’s a section for [user] with the relevant information. For example:

(There’s no space in front of the [user], and single tabs in front of the name and email labels)

If it doesn’t have those set properly, just go ahead and edit the .gitconfig file by hand.

Here’s Some similar problems like yours that maybe help: Question 1 Question 2

git выдает «Please tell me who you are.»

В дополнение к ответам, поэтому комментарием. Настройте авторизацию по ключам и забудьте про логины/пароли.

20 мар 2017 в 11:54

3 ответа 3

Сортировка: Сброс на вариант по умолчанию

Git Вам явно намекает, что Вам нужно сделать. Также он говорит о том, что он попытался уже сам определить, но не получилось.

Скорее всего Вам нужны такие команды

git config --global user.email "[email protected]" git config --global user.name "elik" 

(эмейл конечно свой напишите).

Если же Вы на работе это делаете, то лучше написать свое полное имя и рабочую почту.

git config --global user.email "[email protected]" git config --global user.name "Vasiliy Pupkin" 

Отслеживать
ответ дан 20 мар 2017 в 10:51
112k 6 6 золотых знаков 93 93 серебряных знака 159 159 бронзовых знаков

а я делал без Командной строки (пытался через студиу )жалко придется всеже с командной строкой поработать)Спасибо

20 мар 2017 в 11:03

В большинстве случаев командная строка все решает. А гуевые утилиты, какими бы они хорошими не были, часто не могут решить простые задачи.

20 мар 2017 в 11:06
да все-же придется с вами согласится
20 мар 2017 в 11:07
@elik Git Extensions умеет редактировать эти настройки через GUI
20 мар 2017 в 11:47

Для решения проблемы необходимо:

 git config --global user.email "[email protected]" git config --global user.name "Vasua Pupkin" 
git remote add origin https://github.com/vasilukwolf/Random-Quote-Machine git checkout -b 1-UserStroty-bla-bla git add . git commit -m "1-Task-bla-bla" git checkout master git merge 1-UserStroty-bla-bla git push origin master 

Если что-то в вдруг после коммита не так, и забыли:

git checkout -- * 

Если закомитили и затупили:

git reset HEAD 

введите сюда описание изображения

Пример нормального workflow:

Отслеживать
ответ дан 20 мар 2017 в 11:02
Dima Vasiluk Dima Vasiluk
2,346 3 3 золотых знака 19 19 серебряных знаков 47 47 бронзовых знаков

Пример нормального workflow больше запутывает, чем объясняет. Откуда-то взялись Dev, юзерстори и эпики. А человек почти впервые видит git, ему рано про это. )

20 мар 2017 в 12:00

Dev предназначен для тестирования и разрешения конфликтов. Epic говорит сам за себя. Например миграция продукта на новую технологию. UserStory — к тебе пришел пользователь, что-то сильно не удобно. Это не баг и не ошибка, но делать надо, иначе человек тратит время. Есть еще Task и Test. Я думаю, этого хватит для нормальной работы с git, если добавить git commit —addend.

20 мар 2017 в 13:02

Epic говорит сам за себя – только для тех, кто работает по agile и применяет в работе эпики. Так далеко не у всех. То же самое с userstory.

20 мар 2017 в 16:50

Всё после первого блока кода не имеет никакого отношения к вопросу. Стремление написать эдакий survival guide понятно, но вы слишком отдаляетесь от исходного вопроса и в итоге рассказываете кучу совершенно нерелевантной информации.

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *