Sempre que tento entrar no meu repositório, solicito os dois username & password
.
Não tenho problema em digitar novamente minha senha todas as vezes, mas o problema está em inserir nome de usuário. Eu uso https
para clonar meu repositório.
Então, como posso configurar o git para que não seja solicitado username
em cada um git push
.
Eu sou novo no Linux, mas IIRC no Windows git push
só pede senha.
Respostas:
Editar (por @ dk14 como sugerido por moderadores e comentários)
AVISO: Se você usar
credential.helper store
a resposta, sua senha será armazenada completamente sem criptografia ("como está") em~/.git-credentials
. Consulte a seção de comentários abaixo ou as respostas da seção "Vinculado", especialmente se o seu empregador tiver tolerância zero para problemas de segurança.Mesmo sendo aceito, ele não responde à pergunta real do OP sobre omitir apenas um nome de usuário (não uma senha). Para os leitores com esse problema exato, a resposta do @ grawity pode ser útil.
Resposta original (de @Alexander Zhu):
Você pode armazenar suas credenciais usando o seguinte comando
Também sugiro que você leia
$ git help credentials
fonte
git config --unset credential.helper
Você pode fazer isso no
.git/config
arquivo do seu repositório local. Este arquivo contém uma seção chamada 'remote' com uma entrada chamada 'url'. A entrada 'url' deve conter o link https do repositório que você está falando.Quando você prefixa o host 'url' com seu nome de usuário,
git
não deve mais pedir seu nome de usuário. Aqui está um exemplo:fonte
git config credential.helper store
.username for https://gitlab.com:
unable to access 'https://<me>@bitbucket.org:<x>/<y>.git/': Illegal port number
Autenticando permanentemente com repositórios Git
Execute o seguinte comando para ativar o cache de credenciais:
O uso também deve especificar o vencimento do cache
Depois de ativar o cache de credenciais, ele será armazenado em cache por 7200 segundos (2 horas) .
Leia credenciais Documentos
fonte
git config credntial.helper store
esse comando perigoso, responsável por armazenar as credenciais de texto sem formatação no arquivo ~ / .git-credentials? Eu acho (e na minha experiência) o comando ... cache ...- é suficiente:git config --clogal credential.helper 'cache --timeout 7200'
ele cria o dir:~/.git-credential-cache
com o arquivo de cache nele Então, basta executar este comando e NÃO o comando "... store"Adicione novas chaves SSH conforme descrito neste artigo no GitHub .
Se o Git ainda solicitar seu nome de usuário e senha, tente mudar
https://github.com/
para[email protected]:
um URL remoto:fonte
git config remote.origin.url "ssh://git@yourRepoHost/yourRepoName.git"
A maneira mais fácil que encontrei foi com este comando:
Isso funciona site a site e modifica sua configuração global do git.
Para ver as alterações, use:
fonte
Se você estiver usando https em vez de ssh, poderá editar "url"
.git/config
como diz user701648, mas se desejar, poderá adicionar também a senha:fonte
@
incluído na minha senha?url = https://username:abc@[email protected]
Está me dando um erro de que:Could not resolve host: @[email protected]
username
parte parece ser ignorada quando o servidor é redirecionado (como de FOO para FOO.git).Você pode definir seu nome de usuário para todos os repositórios em um determinado site, colocando algo como o seguinte no seu arquivo de configuração do Git. Você deseja alterar " https://example.com " e "eu" para o URL e seu nome de usuário reais.
(Isso é diretamente de "credenciais de ajuda do git")
fonte
Alterar o repositório clonado funciona:
Usar credenciais em cache funciona e definir o período de tempo limite torna as coisas menos irritantes. Se você usar o auxiliar de credenciais do Windows, esse deve ser o método mais fácil (especialmente se o SSH estiver bloqueado).
fonte
Verifique se você está usando SSH em vez de http. Verifique esta resposta SO.
fonte
http
porque na minha universidadessh
é bloqueado pelo departamento sys-admin.cache do git config --global credential.helper
fonte
Além da resposta do usuário701648, você pode armazenar suas credenciais na sua pasta pessoal (global para todos os projetos), em vez da pasta do projeto usando o seguinte comando
fonte
Quando eu apenas git pull, git pull origin xxx, o git pede nome de usuário e senha.
funciona.
fonte
A maneira mais fácil é criar um
~/.netrc
arquivo com o seguinte conteúdo:(como mostrado aqui: https://gist.github.com/ahoward/2885020 )
Você pode até fechar as permissões desse arquivo para que ninguém possa ler sua senha digitando:
fonte
Se você usa a versão SSH , não terá problemas com senhas. Somente uma vez você gera uma chave SSH , para informar ao git, que este PC funcionará com esta conta do github e nunca mais me perguntará sobre nenhum acesso (para este pc).
Como gerar SSH para Github
fonte
Para evitar digitar o nome de usuário, mas ainda assim ser solicitado a digitar uma senha, basta clonar seu repositório, incluindo o nome de usuário:
fonte
Loja $ git config credential.helper
$ git push / push https://github.com/xxx.git
Em seguida, digite seu nome de usuário e senha.
fonte
git push/push https://github.com/xxx.git
que deveria sergit push https://github.com/xxx.git
ssh
+key authentication
é a maneira mais confiável do quehttps
+credential.helper
Você pode configurar para usar SSH em vez de HTTPS para todos os repositórios da seguinte maneira:
url.<base>.insteadOf
está documentado aqui .fonte
Método rápido
obtenha o URL do seu git quando estiver dentro do diretório trabalhando:
então :
solicitará o nome de usuário e a senha pela última vez
feito.
fonte
Você pode simplesmente correr
depois de instalar e fazer login no GIT para Windows em seu sistema.
fonte
(Apenas para Mac OS)
para Windows e Linux , consulte o link da documentação do Github mencionado abaixo.
Da documentação do Github: Link da documentação
Armazenando em cache sua senha do GitHub no Git
Você precisa do Git 1.7.10 ou mais recente para usar o assistente de credencial osxkeychain.
para descobrir o osxkeychain helper já está instalado:
se você receber a resposta a seguir, já a terá instalada e pronta para uso no seu mac:
se você não receber uma resposta como mostrado acima, poderá instalá-lo executando o seguinte comando:
para dizer ao git para usar globalmente o osxkeychain para credenciais do git:
Ele será solicitado uma vez antes de salvar credenciais no chaveiro .
fonte