-
1. Começando
- 1.1 Sobre Controle de Versão
- 1.2 Uma Breve História do Git
- 1.3 O Básico do Git
- 1.4 A Linha de Comando
- 1.5 Instalar o Git
- 1.6 Configuração Inicial do Git
- 1.7 Pedindo Ajuda
- 1.8 Resumo
-
2. Noções Básicas do Git
- 2.1 Obtendo um Repositório Git
- 2.2 Recording Changes to the Repository
- 2.3 Veja o Histórico de Confirmação
- 2.4 Desfazer Coisas
- 2.5 Working with Remotes
- 2.6 Tagging
- 2.7 Alias Git
- 2.8 Resumo
-
3. Ramificação do Git
- 3.1 Branches in a Nutshell
- 3.2 Basic Branching and Merging
- 3.3 Branch Management
- 3.4 Branching Workflows
- 3.5 Remote Branches
- 3.6 Rebasing
- 3.7 Resume
-
4. Git no Servidor
- 4.1 The Protocols
- 4.2 Getting Git on a Server
- 4.3 Generating Your SSH Public Key
- 4.4 Setting Up the Server
- 4.5 Git Daemon
- 4.6 Smart HTTP
- 4.7 GitWeb
- 4.8 GitLab
- 4.9 Opções Hospedadas de Terceiros
- 4.10 Resumo
-
5. Git Distribuído
- 5.1 Distributed Workflows
- 5.2 Contributing to a Project
- 5.3 Maintaining a Project
- 5.4 Resumo
-
6. GitHub
-
7. Ferramentas do Git
- 7.1 Revision Selection
- 7.2 Interactive Staging
- 7.3 Stashing and Cleaning
- 7.4 Signing Your Work
- 7.5 Searching
- 7.6 Rewriting History
- 7.7 Reset Demystified
- 7.8 Advanced Merging
- 7.9 Rerere
- 7.10 Debugging with Git
- 7.11 Submodules
- 7.12 Bundling
- 7.13 Replace
- 7.14 Credential Storage
- 7.15 Resumo
-
8. Personalizar o Git
- 8.1 Git Configuration
- 8.2 Git Attributes
- 8.3 Git Hooks
- 8.4 An Example Git-Enforced Policy
- 8.5 Resumo
-
9. O Git e Outros Sistemas
- 9.1 O Git como Cliente
- 9.2 Migrar para o Git
- 9.3 Resumo
-
10. Internos do Git
- 10.1 Plumbing and Porcelain
- 10.2 Git Objects
- 10.3 Git References
- 10.4 Packfiles
- 10.5 The Refspec
- 10.6 Transfer Protocols
- 10.7 Maintenance and Data Recovery
- 10.8 Environment Variables
- 10.9 Resumo
-
A1. Appendix A: Git em Outros Ambientes
- A1.1 Graphical Interfaces
- A1.2 Git no Visual Studio
- A1.3 Git no Eclipse
- A1.4 Git in Bash
- A1.5 Git no Zsh
- A1.6 Git no Powershell
- A1.7 Resumo
-
A2. Appendix B: Incorporar o Git nos teus Aplicativos
- A2.1 Linha de comando Git
- A2.2 Libgit2
- A2.3 JGit
-
A3. Appendix C: Git Commands
- A3.1 Setup and Config
- A3.2 Getting and Creating Projects
- A3.3 Basic Snapshotting
- A3.4 Branching and Merging
- A3.5 Sharing and Updating Projects
- A3.6 Inspection and Comparison
- A3.7 Debugging
- A3.8 Patching
- A3.9 Email
- A3.10 External Systems
- A3.11 Administration
- A3.12 Plumbing Commands
1.6 Começando - Configuração Inicial do Git
Configuração Inicial do Git
Agora que tens o Git no teu sistema, deves fazer algumas coisas para personalisar o ambiente do Git. Tens que fazer isto apenas uma vez por computador e o efeito irá se manter após atualizações. Também podes mudá-las a qualquer momento executando estes comandos novamente.
O Git vem com uma ferramente chamada git config
que permite ver e atribuir variáveis de configuração que controlam todos os aspectos de como o Git aparece e opera.
Estas variáveis podem ser armazenadas em três locais diferentes:
-
/etc/gitconfig
: válido para todos os utilizadores no sistema e todos os teus repositórios. Se tu passares a opção--system
paragit config
, ele lê e escreve neste arquivo. -
~/.gitconfig
ou~/.config/git/config
: Somente para o teu utilizador. Tu podes fazer o Git ler e escrever neste arquivo passando a opção--global
. -
config
no diretório Git (ou seja,.git/config
) de qualquer repositório que tu estejas a usar: específico para este repositório.
Cada nível sobreescreve os valoes no nível anterior, ou seja, valores em .git/config
prevalecem sobre /etc/gitconfig
.
No Windows, o Git procura pelo arquivo .gitconfig
no diretório $HOME
(C:\Users\$USER
para a maioria).
Ele também procura por /etc/gitconfig
, mesmo sendo relativo à raiz do sistema, que é onde quer que tu tenhas instalado o Git no teu sistema.
Se estiveres a usar a versão 2.x ou posterior do Git para Windows, também há um arquivo de configuração de nível de sistema no C:\Documents and Settings\All Users\Application Data\Git\config
no Windows XP, e em C:\ProgramData\Git\config
no Windows Vista e mais recentes.
Este arquivo de configuração só pode ser alterado por git config -f <file>
como administrador.
A Tua Identidade
A primeira coisa que tu deves fazer ao instalares o Git é configurar o teu nome de utilizador e endereço de e-mail. Isto é importante porque cada comprometimento no Git usa esta informação, e ela é imutavelmente carimbada nos comprometimentos que tu começas a criar:
$ git config --global user.name "Fulano de Tal"
$ git config --global user.email fulanodetal@exemplo.pt
Reiterando, tu precisarás de fazer isto somente uma vez se tiveres a usar a opção --global
, porque então o Git usará esta informação para qualquer coisa que tu fizeres naquele sistema.
Se quiseres substituir esta informação com nome diferente para um projeto específico, podes executar o comando sem a opção --global
dentro daquele projeto.
Muitas ferramentas GUI vão te ajudar com isto quando forem usadas pela primeira vez.
O Teu Editor
Agora que a tua identidade está configurada, podes escolher o editor de texto padrão que será chamado quando Git precisar que escrevas uma mensagem. Se não for configurado, o Git usará o editor padrão. Se tu quiseres usar um editor de texto diferente, como o Emacs, podes fazer o seguinte:
$ git config --global core.editor emacs
Num sistema Windows, se tu quiseres usar um editor de texto diferente, deves especificar o caminho completo para o arquivo executável. Isto pode ser diferente dependendo de como o teu editor está empacotado. No caso do Notepad ++, um editor de programação popular, é provável que tu queiras usar a versão de 32 bits, uma vez que, no momento da escrita, a versão de 64 bits não suporta todos os plug-ins. Se tu estiveres num sistema Windows de 32 bits ou tiver um editor de 64 bits num sistema de 64 bits, digitarás algo como isto:
$ git config --global core.editor "'C:/Program Files/Notepad++/notepad++.exe' -multiInst -nosession"
If you have a 32-bit editor on a 64-bit system, the program will be installed in C:\Program Files (x86)
:
$ git config --global core.editor "'C:/Program Files (x86)/Notepad++/notepad++.exe' -multiInst -nosession"
Vim, Emacs e Notepad++ são editores de texto populares comumente usados por desenvolvedores em sistemas baseados em Unix como Linux e macOS ou sistema Windows.
Se não estiveres acostumado com estes editores, precisarás de procurar por instruções de como configurar o teu editor preferido com Git.
Podes achar, se não configurares o teu editor como este, entras num estado realmente confuso quando o Git tenta iniciá-lo. Um exemplo num sistema Windows pode incluir uma operação Git prematuramente encerrada durante uma edição iniciada pelo Git.
Testar as Tuas Configurações
Se quiseres testar as tuas configurações, podes usar o comando git config --list
para listar todas as configurações que o Git conseguir encontrar naquele momento:
$ git config --list
user.name=John Doe
user.email=johndoe@example.com
color.status=auto
color.branch=auto
color.interactive=auto
color.diff=auto
...
Poderás ver que algumas palavras chave apareçem mais de que uma vez, porque Git lê as mesmas chaves de arquivos diferentes (/etc/gitconfig
e ~/.gitconfig
, por exemplo).
Neste caso, Git usa o último valor para cada chave única que ele vê.
Podes também testar o que o Git tem numa chave específica digitando git config <key>
:
$ git config user.name
John Doe
Uma vez que o Git pode ler o mesmo valor de variável de configuração de mais de um arquivo, é possível que tenhas um valor inesperado para um destes valores e tu não sabe por quê. Em casos como este, podes consultar o Git quanto à origem para este valor, e ele irá dizer-lhe qual arquivo de configuração teve a última palavra ao definir este valor:
$ git config --show-origin rerere.autoUpdate
file:/home/fulanodetal/.gitconfig false