Я пытаюсь принять участие в проекте на github.com со своего рабочего ноутбука, который уже настроен для сервера git компании. Есть ли способ зафиксировать, указав разные учетные данные автора, возможно, используя другой файл конфигурации или другие параметры командной строки?
Я пробовал использовать
--author="My Name <MyNameEmail@email.com>"
и я получил сообщение:
Committer: unknown <WorkEmail@workemail.net>
Your name and email address were configured automatically based
on your username and hostname. Please check that they are accurate.
You can suppress this message by setting them explicitly:
git config --global user.name "Your Name"
git config --global user.email you@example.com
After doing this, you may fix the identity used for this commit with:
git commit --amend --reset-author
но он все еще не обновлял мое имя пользователя для перехода в проект github.com. Можно ли еще что-нибудь попробовать и возможно ли это?
-c user.name=Me user.email=me@example.com
. Чтобы использовать настраиваемую глобальную конфигурацию, см. Этот вопрос или используйте псевдоним оболочки, содержащий-c
параметры. Но ни один из этих вариантов, вероятно, не является правильным в данной ситуации - вам нужна конфигурация для каждого репо.{author,committer}.{name,email}
. Смотрите мой ответ нижеОтветы:
Во-первых, автор не обязательно совпадает с коммиттером. Git отслеживает и то, и другое.
Чтобы указать, какое имя использовать только для этого репозитория, вы можете:
git config user.name "Your Name" git config user.email "Your email"
Обратите внимание на отсутствие
--global
опции. Это установит конфигурацию только в этом репозитории.В качестве альтернативы вы можете сделать это только для одной команды, используя
-c
опцию:git -c "user.name=Your Name" -c "user.email=Your email" commit ...
Но я думаю, что лучше просто использовать параметры конфигурации выше.
источник
Попробуйте добавить это к своей команде git:
Это нормально для одноразового использования, но вы можете предпочесть сохранить это в файле .git / config локального репозитория, который вы клонировали из git. Это можно сделать, запустив
git config
(без --global или --system, чтобы сделать его «локальным для репо») или отредактировав.git/config
(это тот же синтаксис, что и~/.gitconfig
источник
.bash_aliases
, и / или вы также можете установить ловушку перед фиксацией, чтобы отклонить фиксацию, когда пользователь не определен.Кроме того, можно установить переменные окружения
GIT_COMMITTER_NAME
,GIT_COMMITTER_EMAIL
,GIT_AUTHOR_NAME
иGIT_AUTHOR_EMAIL
на основе в скорлупе или даже в командовании.источник
git commit --amend
. Изменился только коммитер.git commit --amend --author="$GIT_COMMITTER_NAME <$GIT_COMMITTER_EMAIL>"
git commit --amend
дизайн не изменяет автора, как сказано на странице руководства. Решение:git commit --amend --reset-author
Я верю, что ты можешь бежать:
для разных частей git. Попробуйте открыть папку, в которой выполняется работа для репозитория на сервере github.
Убедитесь, что вы видите в этой рабочей папке папку .git. Теперь откройте эту папку в Terminal / Console / CommandPrompt и попробуйте изменить имя пользователя и адрес электронной почты для этой папки, только выполнив указанные выше команды.
Изменив это, теперь вы можете получить доступ к серверу GitHub.
Посмотрите здесь: https://help.github.com/articles/setting-your-username-in-git
Кроме того, я считаю, что есть способ перейти к удаленному репо, используя ваше имя пользователя и пароль github в самой команде, но я не цитирую его, потому что это не сработало для меня.
источник
Продолжая ответ Джесси Глика здесь, с расширенной реализацией, потому что его предложение ИМО - лучший способ сделать это.
Добавьте ниже в свой .bash_profile. Вам будет предложено ввести пользователя при первом запуске любой команды git в активной оболочке. Затем он запомнит пользователя для всех последующих запусков.
(очевидно, перекрестная ссылка на входное значение пользователя для точных желаемых имен и адресов электронной почты для различных значений git auther / name в блоке case и при необходимости обновлять назначения)
источник
Фактически, начиная с Git 2.22 (второй квартал 2019 г.), у вас появилась новая возможность:
{author,committer}.{name,email}
были введены четыре новые переменные конфигурации для переопределенияuser.{name,email}
в более конкретных случаях.См. Commit 39ab4d0 (4 февраля 2019 г.) Уильяма Хаббса (``) .
(Объединено Junio C Hamano -
gitster
- в коммите 4e021dc , 7 марта 2019 г.)источник