# Git do esquecimento

Autor: João Moreno Rodrigues Falcão
Publicado em: 2020-02-19
Tema: Hacking
URL canônica: https://www.falcaomoreno.com.br/post/2020-02-19-the-forgettable-git/

Um projeto Git pode ser dividido em três partes.
1. **Diretório de trabalho**  
É a pasta onde o programador irá desenvolver as modificações no programa, esta pasta fica no computador da pessoa.

2. **"Staging Area"**  
É o local onde serão listadas asmodificações feitas por esse programador, individualmente.

3. **Repositório**  
É o local onde o Git irá guardar o código que o programador submeter para a versão principal do programa.

### Comandos

Tornar o diretório atual um projeto Git. Vai configurar tudo que precisa ser iniciado.  
init -> initialize
```bash
git init
```
Criar uma cópia de trabalho de um repositório LOCAL
```bash
git clone /caminho/para/o/repositório
```
Copiar um repositório de um servidor REMOTO
```bash
git clone usuario@servidor:/caminho/para/o/repositório
```
Comando para checar as mudanças feitas por você no código que está em seu computador, em comparação com a versão da
```bash
git status
```
É o comando para adicionar um arquivo a lista de rastreamento do Git.
```bash
git add filename
```
Comando para "subir" as modificações para a lista de modificações a serem enviadas para o repositório remoto.
```bash
git commit -m "comentários das alterações"
```
Comando para enviar as modificações que foram "commitadas" para o repositório principal do programa.
```bash
git push origin master
```
Para enviar um projeto para o repositório remoto sem que ele tenha sido clonado.
```bash
git remote add origin <servidor>
```
Cancelar o último commit mas manter as modificações
```bash
git reset --soft HEAD^
```
