Поэтому давай закрывать эти боли. Будет несколько серий постов, банально, но полезно. Пройдем максимально просто и быстро. Если чо непонятно пиши в комменты, будем разбираться.
Думал в рамках закрытого интенсива сделать, но пусть будет бесплатно.
ㅤ
Ну и первая проблема:
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: empty ident name (for <user@dev.>) not allowed
Не устану повторять — читай то, что тебе пишут!
Эта штука появляется в момент команды
git commit.В ошибке говорится — я хуй знает кто ты такой, давай уже определись и тогда все заработает.
То есть гит не знает от чьего имени оправлять коммит в репозиторий.
Как решать?
Ну оно тебе явно уже написало какие команды нужно забить. А забить надо пару строк:
git config --global user.email "hello@devopsina.ru"
git config --global user.name "Roman Shubin"
Всё, теперь коммит подпишется и ошибка уйдет. Глобальные настройки обычно лежат в файле
~/.gitconfigНу дак оно же глобально прописалось для всех реп??
Конечно, но это можно изменять в конфиге самой репы. То есть допустим у меня есть 2 репы:
1. BashDays
2. LinuxFactory
В первом случае я хочу подписывать и отправлять коммиты как Roman Shubin, а во втором как Harbor Whore.
Сейчас на глобальном уровне в обоих случаях будет Roman Shubin.
Чтобы это пофиксить. Открываем нужную нам гит репу на своей машине, пиздуем в папку
.git и открываем на редактирование файл config.Ну и в него добавляем секцию user.
[user]
name = Roman Shubin
email = hello@devopsina.ru
Соответственно для второй репы делаем тоже самое, только меняем мыло и имя на нужное тебе.
Если руками в падлу писать, выполняем команды:
git config user.email "hello@devopsina.ru"
git config user.name "Roman Shubin"
Тут отсутствует ключик
--global. Ну и чтобы посмотреть кем подпишется коммит, есть команда:
git config --list --show-origin
Находясь в папке с репой, она выведет всю необходимую информацию. Порой очень полезно предварительно проверить, перед пушем в репу.
Ну и скучная, но важная теория:
- Если вы используете GitHub, GitLab или другую платформу, и хотите, чтобы ваши коммиты были связаны с вашим аккаунтом, то email, указанный в Git, должен совпадать с email, привязанным к вашему аккаунту на этой платформе. Это нужно для того, чтобы платформа могла корректно отображать ваши коммиты в вашем профиле.
- Если email не совпадает, коммиты все равно будут отправлены, но они не будут автоматически связаны с вашим аккаунтом на платформе.
Такие дела. Видишь, не все так сложно как ты думаешь. Завтра рассмотрим еще очень важные вещи, от которых жопа обычно горит на начальных этапах.
tags: #git #devops #linuxfactory
—
🔔 @bashdays➡️ @gitgate