sudo apt install git #instala o git no linux/debian e distros baseadas
git config --global user.name "Seu Nome" #Define identidade-Nome de usuário do GITHUB
git config --global user.email "Seu Email" #Define identidade - Email do GITHUB
#Isso marca o histórico com seu ID
man git #mostra o manual do git
git help #Mostra a pagina de ajuda do git
git help comando #para acessar a ajuda de um comando em especifico
#Exemplo
git help clone #Abre o manual do comando especifico.
git config --global core.editor "code -w" #Substitui o editor padrão VIM pelo VSCODE
git config --list #mostra as configurações atuais
Deixa o terminal mais amigável, marcando com cores, as ações tomadas
git config --global color.ui true
#Na pasta do projeto
git init #Inicia um repositório e cria uma pasta .git com as configurações do projeto
ls -a #para ver se a pasta oculta foi criada
ATENÇÃO Todo o Histórico da versão e arquivos de configuração ficam dentro da pasta .git Apagar a pasta .git vai ocasionar a perda de todo o histórico.
git add . #Prepara todos os arquivos da pasta para um ponto na História
git add nomeDoArquivo #Prepara um arquivo especifico para adicionar
git commit -m "Commit Inicial" #Cria o ponto na História
#o -m é para definir um comentário
git log #Mostra um Histórico dos pontos na História
git log --oneline #Histórico resumido
git log -n 5 #Traz os últimos 5 commits
git log --grep="palavra chave" #Busca por palavra chave
git init #Inicia um repositório - Working Directory
git add . #Prepara todos os arquivos - Stage Area
git commit -m "Commit Inicial" #Cria o ponto na História Local
touch .gitignore #Cria arquivo git ignore
nano .gitignore #Abre o arquivo para edição
#Para ignorar arquivos ou pastas basta adicionar seu nome no arquivo
git add .gitignore
git status # Este comando mostra o status atual
git rm --cached nomeDoArquivo #Remove arquivos da Stage area
git add *.jsx # adicionar todos os arquivos com a extensão .js .php .html .ts etc..
git diff #mostra o que foi alterado
git mv nome.txt nomeNovo.txt #Renomear arquivo
git mv arquivo.txt pasta/arquivo.txt #Move arquivo
git restore arquivo.txt #restaura arquivo do Working Directory
git restore --staged arquivo.txt #Remove arquivo do staged.
git restore --staged . #Remove tudo do staged
git commit --amend -m "Mensagem" #Corrige o ultimo commit
#OBS: Mais correto criar novo ponto na história
#então usar so quando adiciona um arquivo
#Que não pode ficar na historia.
#Como arquivo com dados sensíveis ou inúteis fora do escopo do projeto
git checkout hash -- nomeDoArquivo #O hash marca de qual commit vai restaurar o arquivo
git log --oneline #Para ver o histórico de alterções
git revert HEAD~5 #O 5 são o numero de commits anteriores
#isso cria um nomo commit
git revert hash #mesmo resultado do anterior.