Сначала я удалил все учетные данные, связанные с git, в диспетчере учетных данных в Windows, изменил свое имя пользователя и адрес электронной почты пользователя на другого пользователя в репозитории, а затем отправил их на удаленное устройство. Затем Git попросил меня войти через браузер. Я нажал кнопку входа в систему, и появившаяся вкладка браузера сообщила мне, что аутентификация прошла успешно, не спрашивая меня о вводе пароля нового пользователя. И когда я проверяю историю коммитов на Github, она показывает, что коммит был сделан новым пользователем (пользователем, на которого я изменил свое имя пользователя), но этот пользователь никогда не входил в систему на моем компьютере. Как это возможно? Это связано с ssh? Но я нажимаю и вытягиваю, используя только https. И почему новый пользователь может нажать на мой репозиторий? Я не добавил его в качестве соавтора.
User.name и user.email вообще не связаны с аутентификацией. Это просто поля, написанные для коммитов, сделанных локально. Любой может написать что угодно для этих полей, и любой может отправлять коммиты, объявленные как сделанные кем угодно.
Вы можете думать об этих полях как о подписи электронной почты: вы пишете ее при создании электронной почты/фиксации, и люди могут ее прочитать, но это всего лишь часть электронной почты/коммита, и любой может написать что-либо в электронных письмах/фиксациях, которые он отправляет/делает.
Как мне на самом деле выйти из системы и войти в систему с другой учетной записью? Почему git не просит меня снова ввести имя пользователя и пароль, а вместо этого просто автоматически вошел в систему.