git config (Português)

Neste documento, daremos uma olhada em profundidade no comando git config. Discutimos brevemente git config uso em nossa página Configurando um Repositório. O comando git config é uma função de conveniência usada para definir valores de configuração Git em um projeto global ou local . Esses níveis de configuração correspondem a .gitconfig arquivos de texto. Executar git config modificará um arquivo de texto de configuração. Cobriremos as definições de configuração comuns como e-mail, nome de usuário e editor. Discutiremos os aliases do Git, que permitem criar atalhos para operações Git usadas com frequência. Familiarizar-se com git config e as várias configurações do Git o ajudará a criar um fluxo de trabalho Git poderoso e personalizado .

Uso

O caso de uso mais básico para git config é invocá-lo com um nome de configuração, que exibirá o valor definido em esse nome. Os nomes de configuração são strings delimitadas por pontos compostas por uma “seção” e uma “chave” com base em sua hierarquia. Por exemplo: user.email

 

Neste exemplo, e-mail é uma propriedade filho do bloco de configuração do usuário. Isso retornará o endereço de e-mail configurado, se houver, que o Git irá associar aos commits criados localmente.

níveis e arquivos de configuração do git

Antes de discutirmos o uso do git config, vamos cobrir os níveis de configuração. O comando git config pode aceitar argumentos para especificar em qual nível de configuração operar. Os seguintes níveis de configuração estão disponíveis:

  • --local

Por padrão, git config gravará em um nível local se nenhuma opção de configuração for passada. A configuração de nível local é aplicada ao repositório de contexto git config é invocado. Os valores de configuração local são armazenados em um arquivo que pode ser encontrado no diretório repo “s .git: .git/config

  • --global

A configuração de nível global é do usuário específico, o que significa que é aplicado a um usuário do sistema operacional. Os valores de configuração global são armazenados em um arquivo localizado no diretório inicial do usuário. ~ /.gitconfig em sistemas unix e C:\Users\\.gitconfig no Windows

  • --system

A configuração no nível do sistema é aplicada em uma máquina inteira. Isso cobre todos os usuários em um sistema operacional e todos os repositórios. O arquivo de configuração de nível de sistema reside em um arquivo gitconfig fora do caminho raiz do sistema. $(prefix)/etc/gitconfig em sistemas unix. No Windows, esse arquivo pode ser encontrado em C:\Documents and Settings\All Users\Application Data\Git\config no Windows XP e em C:\ProgramData\Git\config no Windows Vista e mais recente.

Assim, a ordem de prioridade dos níveis de configuração é: local, global, sistema. Isso significa que, ao procurar um valor de configuração, o Git começará no nível local e subirá no nível do sistema.

Escrevendo um valor

Expandindo o que já sabemos sobre git config, vejamos um exemplo em que escrevemos um valor:

 

Este exemplo escreve o valor para o nome da configuração user.email. Ele usa o sinalizador --global para este valor é definido para o usuário do sistema operacional atual.

git config editor – core.editor

Muitos comandos Git iniciarão um editor de texto para solicitar mais entradas. Um dos usos mais comuns casos para git config é configurar qual editor Git deve usar. Listado abaixo está uma tabela de editores populares e comandos git config correspondentes:

Ferramentas de mesclagem

No caso de um conflito de mesclagem, o Git lançará uma “ferramenta de mesclagem”. Por padrão, o Git usa uma implementação interna o do programa diff comum do Unix. O diff interno do Git é um visualizador mínimo de conflitos de mesclagem. Existem muitas resoluções de conflitos de mesclagem de terceiros externos que podem ser usadas. Para uma visão geral de várias ferramentas e configurações de mesclagem, consulte nosso guia sobre dicas e ferramentas para resolver conflitos com Git.

Saídas coloridas

O Git suporta saída de terminal colorida que ajuda na leitura rápida da saída Git. Você pode personalizar sua saída Git para usar um tema de cores personalizado. O comando git config é usado para definir esses valores de cor.

color.ui

Esta é a variável principal para cores Git. Definir como falso desabilitará todas as saídas de terminal coloridas do Git.

 

Por padrão, color.ui é definido como automático, o que aplicará cores ao fluxo de saída do terminal imediato.A configuração automática omitirá a saída do código de cor se o fluxo de saída for redirecionado para um arquivo ou canalizado para outro processo.

Você pode definir o valor color.ui para sempre que também aplicará a saída do código de cores ao redirecionar o fluxo de saída para arquivos ou canais. Isso pode causar problemas involuntariamente, pois o tubo receptor pode não estar esperando entrada codificada por cores.

Valores de cor Git

Além de color.ui , existem muitas outras configurações de cores granulares. Como color.ui, essas configurações de cores podem ser definidas como falso, automático ou sempre. Essas configurações de cor também podem ter um valor de cor específico definido. Alguns exemplos de valores de cores suportados são:

  • normal
  • preto
  • vermelho
  • verde
  • amarelo
  • azul
  • magenta
  • ciano
  • branco

As cores também podem ser especificadas como códigos de cores hexadecimais como # ff0000 ou valores de cor ANSI 256 se o seu terminal suportar.

Definições de configuração de cores Git

color.branch

  • Configura a cor de saída do comando branch Git

color.branch. slot >

  • Este valor também se aplica à saída do branch Git. slot > é um dos seguintes:
    • 1. atual: o ramo atual
    • 2. local: uma filial local
    • 3. remoto: um ramo remoto ref em refs / remotes
    • 4. upstream: um branch de rastreamento upstream
    • 5. simples: qualquer outra referência

color.diff

  • Aplica cores a git diff, git log e git show saída

color.diff .slot >

  • Configuração de um slot > valor sob color.diff diz ao git em qual parte do patch usar uma cor específica.
    • 1. contexto: O texto de contexto do diff. O contexto Git são as linhas de conteúdo de texto mostradas em um diff ou patch que destaca as mudanças.
    • 2. simples: um sinônimo de contexto
    • 3. meta: aplica cor à meta informação do diff
    • 4. frag: aplica cor ao “cabeçalho do pedaço” ou “função no cabeçalho do pedaço”
    • 5. antigo: aplica uma cor às linhas removidas no diff
    • 6. novo: colore as linhas adicionadas do diff
    • 7. commit: colours commit headers dentro do diff
    • 8. espaço em branco: define uma cor para qualquer erro de espaço em branco em um diff

color.decorate. slot >

  • Personalize a cor da saída git log --decorate. Os valores de slot > compatíveis são: branch, remoteBranch, tag, stash ou HEAD. Eles são respectivamente aplicáveis a branches locais, branches de rastreamento remoto, tags, alterações armazenadas e HEAD.

color.grep

  • Aplica cor à saída do git grep.

color.grep. slot >

  • Também aplicável ao git grep. A variável slot > especifica qual parte da saída do grep aplicar a cor.
    • 1. contexto: texto não correspondente em linhas de contexto
    • 2. nome do arquivo: prefixo do nome do arquivo
    • 3. função: linhas do nome da função
    • 4. número de linho: prefixo do número da linha
    • 5. corresponder: texto correspondente
    • 6. matchContext: correspondência de texto em linhas de contexto
    • 7. matchSelected: correspondência de texto nas linhas selecionadas
    • 8. selecionado: texto não correspondente nas linhas selecionadas
    • 9. separador: separadores entre campos em uma linha (:, -, e =) e entre blocos (-)

8. color.interactive

  • Esta variável aplica cor para prompts e exibições interativos. Os exemplos são git add --interactive e git clean --interactive

9. color.interactive.slot >

  • A variável slot > pode ser especificada para um alvo mais específico ” saída interativa “. Os valores de slot disponíveis > são: prompt, header, help, error; e cada ação na saída interativa correspondente.

color.pager

  • Ativa ou desativa a saída colorida quando o pager está em uso

color.showBranch

  • Ativa ou desativa a saída de cores para o comando git show branch

12. color.status

  • Um valor booleano que ativa ou desativa a saída de cores para o status Git

13. color.status.slot >

Usado para especificar a cor personalizada para os elementos de status git especificados. slot > suporta os seguintes valores:

  • 1.cabeçalho
    • Segmenta o texto do cabeçalho da área de status
  • 2. adicionado ou atualizado
    • Ambos os arquivos de destino que são adicionados, mas não confirmados
  • 3. changed
    • Arquivos de destino que são modificados, mas não adicionados ao índice git
  • 4. não rastreado
    • Arquivos de destino que não são rastreados pelo Git
  • 5. branch
    • Aplica cor ao branch atual
  • 6. nobranch
    • A cor do aviso “sem ramificação” é exibida
  • 7. não mesclados
    • arquivos de cores que têm alterações não mescladas

Aliases

Você pode estar familiarizado com o conceito de aliases de a linha de comando do sistema operacional; caso contrário, eles são atalhos personalizados que definem qual comando será expandido para comandos mais longos ou combinados. Os aliases economizam o tempo e o custo de energia da digitação de comandos usados com frequência. O Git fornece seu próprio sistema de aliases. Um caso de uso comum para os aliases do Git é o encurtamento o comando commit. Os aliases do Git são armazenados nos arquivos de configuração do Git. Isso significa que você pode usar o comando git config para configurar os aliases.

 

Este exemplo cria um alias ci para o comando git commit. Você pode então chamar git commit executando git ci. Os aliases também podem fazer referência a outros aliases para criar combos poderosos.

 

Este exemplo cria uma alteração de alias que compõe o ci alias em um novo alias que usa --amend flag.

Formatação & espaço em branco

Git tem vários recursos de “espaço em branco” que podem ser configurados para destacar o espaço em branco problemas ao usar o git diff. Os problemas de espaço em branco serão destacados usando a cor configurada color.diff.whitespace

Os seguintes recursos são ativados por padrão:

  • blank-at-eol destaca espaços em branco órfãos nas terminações de linha
  • space-before-tab destaca um caractere de espaço que aparece antes de um caractere de tabulação ao recuar uma linha
  • blank-at-eof destaca linhas em branco inseridas no final de um arquivo

Os seguintes recursos estão desabilitados por padrão

  • indent-with-non-tab destaca uma linha recuada com espaços em vez de tabulações
  • tab-in-indent destaca um recuo inicial da tabulação como um erro
  • trailing-space é uma abreviação de espaço em branco na hora e espaço em branco na hora
  • cr-at-eol highlights um retorno de carro nas terminações de linha
  • tabwidth= define quantas posições de caractere uma guia ocupa. O valor padrão é 8. Os valores permitidos são 1-63

Resumo

Neste artigo, cobrimos o uso do git config command. Discutimos como o comando é um método de convencimento para editar arquivos git config brutos no sistema de arquivos. Vimos as operações básicas de leitura e gravação para opções de configuração. Vimos os padrões de configuração comuns:

  • Como configurar o editor Git
  • Como substituir os níveis de configuração
  • Como redefinir os padrões de configuração
  • Como personalizar as cores git

Em geral, git config é uma ferramenta auxiliar que fornece um atalho para a edição bruta de git config arquivos no disco. Cobrimos em profundidade as opções de personalização pessoal. Conhecimento básico das opções de configuração git é um pré-requisito para configurar um repositório. Veja nosso guia lá para uma demonstração dos princípios básicos.

Write a Comment

O seu endereço de email não será publicado. Campos obrigatórios marcados com *