Primeiros passos com Git: guia para iniciantes
Para muitos devs autodidatas, Git pode parecer intimidador. Este guia cobre o básico para você começar a usar com confiança.
“I’m an egotistical bastard, and I name all my projects after myself. First Linux, now Git.” - Linus Torvalds, creator of Git
Pré-requisitos
- Noções básicas de criar e subir arquivos para um site.
Objetivos
- Entender o que é Git e por que usar.
- Criar um projeto local e enviar para um servidor usando Git via linha de comando.
O que é Git?
Git is a distributed version control system (VCS) designed to track changes in source code during software development. It enables multiple developers to work on the same project by using branches.
Nota: Git é diferente de GitHub. Git é o sistema de controle de versão; GitHub é a plataforma que hospeda repositórios Git.
Git vs. FTP
FTP
Usando FTP, você envia arquivos direto para o servidor.
Process:
Local Environment ⇋ FTP Program ⇋ Live Server
Exemplo:
file:///Users/you/project ⇋ Transmit/WinFTP ⇋ https://example.com
Git
Com Git, as alterações são gerenciadas em um repositório.
Process:
Local Environment ⇋ Git Repository ⇋ Live Server
For example:
file:///Users/you/project ⇋ GitHub.com ⇋ https://example.com
Nota: Tower, SourceTree, GitHub Desktop são GUIs para Git. Aqui o foco é o terminal.
Passo 1: Instalação
Mac
- Abra o Terminal.
- Confira se o Git está instalado:
1
git --version- Se estiver, um número de versão aparece.
- Caso contrário, instale o Xcode e habilite Command Line Tools em Xcode > Preferences > Downloads.
- (Opcional) Instale o Homebrew para facilitar instalações no macOS.
Windows
- Baixe e instale o Git for Windows.
- Use o Git Bash, que emula a linha de comando Unix e suporta todos os comandos Git.
Passo 2: Criar um repositório Git online
- Crie uma conta no GitHub.
- Crie um repositório novo sem README.md ou .gitignore. Nomeie como project (ou outro). A URL ficará
https://github.com/seu-usuario/project.
Passo 3: Criar um projeto local
If you’re new to the command line, consider reading introductory guides. Below are essential commands:
Referência básica de linha de comando
pwd- mostra o diretório atual.ls- lista arquivos e diretórios.cd- troca de diretório.mkdir- cria um diretório.
Navigate to your desired location in the Terminal:
- Confirm your location:
1
pwd - Create a new directory for your project:
1
mkdir project-local - Move into this new directory:
1
cd project-local
Referência básica de Git
git config- configurações do Git.git init- inicializa um repositório.git status- mostra o estado do working directory e staging.git add- adiciona mudanças ao staging.git commit- salva as mudanças.git push- envia commits locais para o remoto.git pull- busca e faz merge do remoto.
Configure sua conta Git
Defina nome e email globais:
1
2
git config --global user.name "Your Name"
git config --global user.email your.email@example.com
Inicialize o repositório
- Inicialize o repositório:
1
git init
- Isso cria o diretório
.gitcom os metadados do repo.
- Isso cria o diretório
- Faça link do diretório local com o repositório do GitHub:
1
git remote add origin https://github.com/your-username/project
Adicionando e fazendo commit
-
Adicione arquivos ao projeto, como
index.htmlestyle.css. - Coloque-os sob versionamento:
1
git add . - Veja o status:
1
git status
- Faça commit:
1
git commit -am "Initial Commit"
- Envie para o GitHub:
1
git push origin master
Now, your files are hosted on GitHub!
Step 4: Deploy to a Live Server
If you have SSH access to your server, you can deploy your Git-managed project directly:
- SSH into your server:
1
ssh username@your-server.com
- Navigate to the directory where you want to deploy your project and create a new directory:
1 2
mkdir project-remote cd project-remote
- Initialize a Git repository and link it to your GitHub repository:
1 2
git init git remote add origin https://github.com/your-username/project.git
- Pull the files from GitHub:
1
git pull origin master
Your website should now be live at your domain!
This guide provides a foundational understanding of Git, from setup to deploying a project. For further reading, explore more advanced topics and best practices in version control.