DEV Community

Cover image for Abraçar mudanças (II)
Hildeberto
Hildeberto

Posted on • Updated on

Abraçar mudanças (II)

Este é o segundo artigo de uma série sobre Git. É um assunto extenso que será dividido em:

I - Controle de versão
II - Configuração
III - O que há por baixo dos panos
IV - Comandos mais comuns
V - Fluxo de trabalho
VI - Serviços Git na web
VII - Contribuindo com código aberto

Configuração

O comando responsável pela configuração é o git config. O Git tem muitos níveis possíveis de configuração. Trataremos aqui: no repositório, no usuário e no sistema.

Esses níveis são expostos por arquivos-texto que contêm as opções de configuração vigentes. As configurações que não estiverem declaradas nesses arquivos, usarão um valor padrão.

Uma configuração no nível do sistema é gravada pelo comando git config --system, seguido do nome da configuração e do seu valor. Esse par "nome-valor" será salvo no arquivo /etc/gitconfig. E necessário ter permissão de superusuário para configurar o Git nesse nível.

Os valores aplicados serão usados para todos os usuários do sistema operacional. Como exemplo, abaixo o comando que utilizará o valor "main" como nome da ramificação principal, na criação de um repositório:

sudo git config --system init.defaultBranch main

A configuração no nível de usuário é gravada pelo comando git config --global, seguido do nome da configuração e do seu valor. Será salva no arquivo ~/.gitconfig ou ~/.config/git/config, a depender do sistema operacional, sendo o ~, o símbolo da pasta padrão do usuário conectado. Os valores aplicados serão usados para o usuário conectado. Exemplos comuns:

git config --global user.name "Hildeberto" e
git config --global user.email "hildeberto@gmail.com"

  • usados para ajustar nome e email que serão usados para atribuir as modificações nos repositórios.

git config --global alias.st 'status'

  • usado para declarar um "alias" (apelido, outra forma de se referir) para o comando "status", que a partir de então pode ser referenciado apenas como "st", ou seja um git st obterá o mesmo resultado que um git status. (falaremos sobre "alias" com mais detalhes)

A configuração no nível de repositório é gravada pelo comando git config --local, seguido do nome da configuração e do seu valor. Será gravado no arquivo .git/config, na pasta do repositório. Os valores aplicados serão usados para aquele repositório específico. Exemplo:

git config --local user.name "Outronome"

  • vai registrar as alterações do repositório com outro nome de usuário, que aquele definido no nível de usuário.

Para obter a configuração vigente para o repositório em que está localizado, use o comando git config --list.

Qualquer configuração pode ser sobrescrita, ajustada por um valor diferente, por uma configuração de nome igual, na seguinte ordem de precedência: repositório, usuário, sistema.

Ou seja, o que é configurado no nível do repositório sobrescreve a mesma configuração no nível de usuário ou do sistema.

Praticamente tudo é configurável no Git. O comando git help --config listará todas as opções de configuração disponíveis. Mais detalhes podem ser obtidos com o comando git help config.

Referência

No próximo artigo, vamos ver como é a ferramenta "por baixo dos panos".

Top comments (0)