Pular para o conteúdo
Início » Git » Cache temporário das credenciais GIT – username e password

Cache temporário das credenciais GIT – username e password

Existem situações em que você precisa trabalhar com um repositório GIT usando o protocolo HTTPs e não pode armazenar permanentemente as credenciais de usuário na configuração local. Uma solução é armazenar em um cache temporário as credenciais (username e password – senha) por um tempo limitado.

git-credential-cache é o auxiliar que vamos usar para armazenar temporariamente as senhas na memória.

Veja também como definir o autor de um comando Git para uma única execução do comando nesta dica rápida, ou ainda Como configurar username e email por projeto com Git.

O comando git-credential-cache

git config credential.helper 'cache [<options>]'

Descrição

Este comando armazena credenciais na memória para uso por um determinado tempo do programa Git.

As credenciais armazenadas nunca são armazenadas em disco, sendo esquecidas após um tempo limite configurável.

O cache pode ser acessado por meio de um soquete de domínio Unix, restrito ao usuário atual por permissões do sistema de arquivos.

Options

Algumas opções estão disponíveis no uso do comando:

--timeout

Especifica o tempo em segundos para armazenar as credenciais em cache. O valor padrão é 900 o equivalente a 15 minutos.

--socket <path>

Use a opção socket especificando o path (caminho em disco) para contatar um daemon de cache em execução, ou inicie um novo daemon de cache se não tiver sido iniciado.

O padrão é $XDG_CACHE_HOME/git/credential/socket, a menos que ~/.git-credential-cache/ exista, se existir o caminho ~/.git-credential-cache/socket é usado no lugar.

Se o seu diretório pessoal estiver em um sistema de arquivos montado em rede, pode ser necessário alterá-lo para um sistema de arquivos local.

Ao utilizar esta opção você deve especificar um caminho absoluto.

Controlando o daemon

Se desejar que o daemon encerre antes do tempo configurado, esquecendo assim todas as credenciais em cache antes de seu tempo limite, você pode utilizar um comando de saída:

git credential-cache exit

Exemplos

O objetivo em utilizar esse helper é diminuir a quantidade de vezes que precisará digitar usuário e senha em um espaço de tempo curto, por exemplo, quando está fazendo ajustes de deploy em um servidor de testes.

Confira o exemplo de uso a seguir

git config credential.helper cache
git push https://gitlab.com/palavrasagrada.git
Username: <seu nome de usuário>
Password: <sua senha>

[passados 5 minutos]

git push https://gitlab.com/palavrasagrada.git
[Suas credenciais em cache serão utilizadas automaticamente dentro do prazo limite]

Neste exemplo de atualização do site Bíblia Palavra Sagrada, o desenvolvedor chamou o helper credential.helper cache antes de realizar o primeiro push.

Na primeira interação com o repositório, o GIT solicita que o usuário e senha sejam fornecidos, o desenvolvedor executa normalmente digitando-os.

Passados 5 minutos de trabalho no código-fonte, um novo push será executado pelo desenvolvedor, porém, desta vez as credenciais armazenadas em cache são utilizadas sem que seja necessário digitar usuário e senha novamente.

Isto acontecerá pelo prazo de 15 minutos padrão do helper.

Para aumentar o tempo limite é possível utilizar a opção --timeout fornecendo os segundos:

$ git config credential.helper 'cache --timeout=3600'

No exemplo acima o tempo definido será de 1 hora.

Mantenha-se atualizado

Não esqueça de me seguir no Twitter e assinar o Canal Mazer.dev no Youtube para receber atualizações de novos artigos, vídeo aulas e cursos gratuitos em desenvolvimento e engenharia de software.

Mais sobre GIT, Github e Gitlab

Como resolver o “error: src refspec main does not match any”no Git
A mensagem de erro: "error: src refspec main does not match any" acontece por algumas causas rotineiramente comuns, principalmente ao iniciar um novo repositório de projeto. Uma segunda linha de mensagem com o texto: "error: …
Livros e-books gratuitos de programação e computação em geral
Procurando livros e-books gratuitos sobre programação, desenvolvimento de software e outras áreas de computação? Esta lista trás estes temas e ainda livros sobre engenharia de software, e outros assuntos. O período de pandemia fez explodir …
Git dica rápida: git checkout de arquivos específicos de outra branch
O comando git checkout pode ser usado para atualizar arquivos ou diretórios específicos em sua árvore de trabalho com os de outra ramificação (branch), sem que seja necessário mesclar a ramificação inteira. Isso pode ser …
Criando o README do seu perfil no Github
Personalize o README do seu perfil no Github, deixe seu cartão de visitas de programador com a "sua cara" e aumente a visibilidade e clareza de sua posição técnica na área de desenvolvimento de software. …
Git commits semânticos
Commits semânticos no uso de Git e outros VCS (sistemas de versionamento de código), são a melhor forma de documentação de execução de implementação, por conferir contexto à gestão de mudanças. Escrever mensagens de commits …
Como corrigir GIT lento com SSH no Github, Gitlab ou Bitbucket
Para corrigir comandos GIT de push e pull lentos, quando estamos usando chaves ssh nos serviços de repositórios Github, Gitlab e Bitbucket, é necessário alterar a configuração de versão de IP utilizada. Eu gosto de …

1 comentário em “Cache temporário das credenciais GIT – username e password”

  1. Resposta: Git - dicas rápidas, comandos e tutoriais - MAZER.DEV

Deixe um comentário

O seu endereço de e-mail não será publicado.

pt_BRPortuguese
%d blogueiros gostam disto: