Я начал использовать код Visual Studio и пытался сохранить свой тестовый проект в GitHub , но код Visual Studio всегда запрашивает мои учетные данные GitHub .
Я установил на свой компьютер GitHub Desktop, а также Git , я уже запустил:
git config --global credential.helper wincred
но все же код Visual Studio запрашивает учетные данные.
Любая помощь?
вот мой файл .gitconfig, расположенный в профиле пользователя:
[filter "lfs"]
clean = git-lfs clean %f
smudge = git-lfs smudge %f
required = true
[user]
name = ddieppa
[user]
email = fake@live.com
[credential]
helper = wincred
Вот всплывающие окна с запросом учетных данных:
Я ввожу свои учетные данные GitHub во всплывающем окне, но все еще получаю эту ошибку в окне вывода Git в коде Visual Studio :
remote: Anonymous access to ddieppa/LineOfBizApp.git denied.
fatal: Authentication failed for 'https://github.com/ddieppa/LineOfBizApp.git/'
git
visual-studio
github
visual-studio-code
ddieppa
источник
источник
Ответы:
Последнее обновление: 05 марта 2019 г.
После 98 голосов, я думаю, что мне нужно дать верный ответ с объяснением.
Почему код VS запрашивает пароль? Поскольку VSCode запускает функцию автоматической выборки, в то время как у git server нет никакой информации, чтобы подтвердить вашу личность. Это происходит, когда:
https
удаленный URL. Да! Этот вид пульта абсолютно спросит вас каждый раз. Здесь нет исключений! (Вы можете сделать временный трюк для кэширования авторизации, как показано ниже, но это не рекомендуется.)ssl
удаленный URL, НО вы не скопировали ваш открытый ключ ssh на git-сервер. Используйтеssh-keygen
для генерации вашего ключа и копирования его на git-сервер. Готово! Это решение также помогает вам никогда не вводить пароль на терминале снова. Смотрите хорошую инструкцию от @Fnatical здесь для ответа.Обновленная часть в конце этого ответа на самом деле вам не поможет. (Это фактически делает вас застойными в вашем рабочем процессе.) Это только останавливает вещи, происходящие в VSCode, и перемещает эти события в терминал.
Извините, если этот плохой ответ затронул вас в течение долгого времени.
-
оригинальный ответ (плохой)
Я нашел решение в документе VSCode :
Итак, включите помощник по учетным данным, чтобы Git сохранял ваш пароль в памяти в течение некоторого времени. По умолчанию Git кеширует ваш пароль в течение 15 минут.
В Терминале введите следующее:
Чтобы изменить время ожидания кэша паролей по умолчанию, введите следующее:
ОБНОВЛЕНИЕ (если оригинальный ответ не работает)
Я установил VS Code и config то же самое выше, но, как сказал @ddieppa, у меня это тоже не сработало. Поэтому я попытался найти параметр в настройках пользователя и увидел «git.autofetch» = true, теперь установите его как false! Код VS больше не требуется повторно вводить пароль!
В меню выберите File / Preferences / User Setting и введите эти:
Поместите ваши настройки в этот файл, чтобы перезаписать настройки по умолчанию
источник
git config --global credential.helper cache
. Взгляните на git-scm.com/book/gr/v2/Git-Tools-Credential-Storage для более подробной информации.Вы должны иметь возможность установить свои учетные данные следующим образом:
git remote set-url origin https://<USERNAME>:<PASSWORD>@bitbucket.org/path/to/repo.git
Вы можете получить удаленный URL следующим образом:
git config --get remote.origin.url
источник
Это работает для меня:
1. Установите хранилище учетных данных в хранилище
$ git config --global credential.helper store
2. Затем проверьте, хотите ли вы:
$ git config --global credential.helper store
Простой пример использования git bash, цитируемого здесь (работает только для текущего репо, используйте
--global
для всех репо)Будет работать и для VS Code.
Более подробный пример и расширенное использование здесь .
Примечание. Имя пользователя и пароли не шифруются и хранятся в текстовом формате, поэтому используйте их только на своем компьютере.
источник
store
сделал это.https
чтобыssh
и использование ключей SSH в качестве альтернативы.Следующие шаги помогут вам понять, как:
** Генерация ключей SSH без ключевой фразы нецелесообразна, если ваша работа особенно чувствительна.
ОС - Fedora 28 | Редактор - VS Code v1.23.0 | Репозиторий - Git
Генерация ключей SSH:
ssh-keygen -t rsa -C "email@goeshere.com"
После выполнения вышеуказанных действий местоположение вашего открытого ключа отображается в окне терминала. Если в данный момент вошедшим в систему пользователем является «bob», местоположение вашего открытого ключа будет /home/bob/.ssh/id_rsa.pub
Скопируйте и импортируйте открытый ключ в GitHub:
cat /home/bob/.ssh/id_rsa.pub
Скопируйте весь открытый ключ, который теперь отображается в окне терминала, в буфер обмена.
Подтвердите вышеуказанные шаги:
ssh -T git@github.com
yes
Здравствуй ! Вы успешно прошли аутентификацию, но GitHub не предоставляет доступ к оболочке.
Первый коммит / толчок без необходимости ввода имени пользователя / пароля: -
touch test.txt
git add test.txt
git commit
- открывает редактор, вводит сообщение и сохраняет файл. Если vi - ваш редактор, нажмите, какi
только файл откроется, введите сообщение, нажмите esc, а затем введите,:x
чтобы сохранить изменения.git push
Единственный сбой, с которым вы можете столкнуться, это когда вы пытаетесь подключиться к GitHub по SSH. Эта ссылка окажет некоторую помощь -
Хорошей охоты!
источник
Попробуйте установить « Git Credential Manager для Windows » (и следуйте инструкциям по настройке диспетчера учетных данных ).
При необходимости в приложении, использующем Git (например, VS Code), оно « волшебным образом » открывает необходимый диалог для ввода учетных данных Visual Studio Team Services.
источник
ssh-agent
уже бегу . Но VS Code, похоже, игнорирует это в Linux.Все, что мне нужно было сделать, это запустить эту команду:
git config --global credential.helper wincred
Затем мне дважды предложили ввести пароль.
В следующий раз это сработало без запроса пароля.
источник
store
вместоwincred
.git config --global credential.helper 'cache --timeout==1209600'
чтобы он длился 2 недели вместо 15 минут по умолчанию. Источник: help.github.com/en/github/using-git/…store
будет постоянно хранить его на диск. Кроме того, мой предыдущий комментарий содержит ошибку: не используйте==
, используйте=
. Слишком поздно для редактирования.Используйте ssh вместо http / https.
Вы должны установить ключи SSH на локальном компьютере, загружать их на свой сервер мерзавца и заменить форму URL - адрес ,
http://
чтобыgit://
и вам не нужно больше используют пароли.Если вы не можете использовать ssh, добавьте это в вашу конфигурацию:
документы здесь .
Использование ключа SSH в GitHub
Просто следуйте этим шагам, и вы быстро настроите свой ssh-ключ:
Создайте новый ключ ssh (или пропустите этот шаг, если у вас уже есть ключ)
ssh-keygen -t rsa -C "your@email"
Как только ваш ключ установлен в
home/.ssh
директорию (илиUsers/<your user>.ssh
под windows), откройте его и скопируйте содержимоеКак добавить ключ sh в аккаунт github?
SSH keys
Add ssh key
И все готово к работе :-)
источник
В общем, вы можете использовать встроенные хранилища учетных данных:
git config --global credential.helper store
Или, если вы используете Windows, вы можете использовать их учетную систему:
git config --global credential.helper wincred
Или, если вы используете MacOS, вы можете использовать их учетную систему:
git config --global credential.helper osxkeychain
Первое решение является оптимальным в большинстве ситуаций.
источник
Автоматическая аутентификация Git . Из примечаний к выпуску v1.45 :
источник
askpass = /usr/bin/ksshaskpass
в моем,.gitconfig
и в результате я каждый раз получал имя пользователя и пароль. Это, вероятно, получит больше голосов как роли версии 1.45 на большем количестве машин.Для Windows 10: перейдите в панель управления / Диспетчер учетных данных / Windows Credential -> нажмите на ссылку git, -> edit -> update to new password. Это должно работать
источник
Используйте ключ SSH без ключевой фразы.
Может быть, это очевидно для некоторых (не для меня). Это также не решает проблему, если вам абсолютно необходима фраза-пароль, но это был достойный компромисс в моей ситуации на Mac.
источник
После недолгой борьбы с чем-то вроде этого, я думаю, я нашел хорошее решение, особенно когда у меня есть несколько учетных записей в GitHub и BitBucket. Однако для VSCode он в конечном итоге завершился запуском его с терминала Git Bash, чтобы он унаследовал переменные среды из сеанса bash и знал, на какой ssh-agent смотреть.
Я понимаю, что это старый пост, но я все еще изо всех сил пытался найти одно место, чтобы получить необходимую мне информацию. Плюс с 2017 года ssh-agent получил возможность запрашивать пароль только при попытке получить доступ к репо.
Я приведу здесь свои выводы, если кому-то интересно:
источник
После этой статьи :
Вы можете просто установить GIT_SSH env. вар. к программе plink.exe Замазки. (Затем используйте pageant.exe в качестве агента авторизации)
источник
Решите проблему, выполнив следующие действия.
Деинсталлировали ПО Vscode и git и переустанавливали тоже самое. Изменен URL-адрес клона репозитория git с ssh на https.
источник
У меня была похожая проблема в коде Visual Studio.
Я решил, изменив удаленный URL на https . (в файле .git / config)
а также
вытащил снова, всплывающее окно windows вышло, проблемы решены.
источник
Для меня я настроил свое удаленное репо с ключом SSH, но git не смог их найти, потому что переменная среды HOMEDRIVE автоматически устанавливалась на сетевой ресурс из-за политики домена моей компании. Изменение этой переменной среды в моей оболочке перед запуском
code .
приводило к тому, что VSCode наследовал правильную переменную среды и больше не возникало ошибок соединения в окне вывода git.Теперь мне просто нужно выяснить, как переопределить политику домена, чтобы HOMEDRIVE всегда указывал на мой локальный
c:\users\marvhen
каталог, который является каталогом по умолчанию для.ssh
каталога.источник
Мне удалось остановить это, выполнив следующие шаги.
cd "C:\Program Files\Git\mingw64\libexec\git-core"
а затемgit-credential-manager.exe uninstall
git config --global credential.helper wincred
ПРИМЕЧАНИЕ. Я использовал токен личного доступа в качестве пароля.
источник
Я решил похожую проблему простым способом:
git pull origin master
. Замените «origin» вашим удаленным именемВот и все. Я решил проблему
источник
кроме добавления записей конфигурации ssh выше
если окна
в powershell теперь vs код не должен подсказать ...
источник
Для Windows 10 нажмите клавишу Windows, введите кредит, и вы должны увидеть «Диспетчер учетных данных» на панели управления. Нажмите, чтобы открыть, а затем удалить соответствующие кэшированные учетные данные, затем повторите попытку, он попросит ввести пароль пользователя с идентификатором пароля, и вы будете в порядке. ,
Случилось со мной, когда я сменил сетевой пароль
источник
Я обычно запускаю эту простую команду, чтобы изменить удаленный URL git с https на ssh
источник