Nesse primeira parte de git comandos explicarei um pouco sobre os comandos mais importantes do git(para a gente), lembrando que existem muitas variações dos comandos e tbm muitos outros comandos. na segunda parte usamos os comandos na pratica.
Leitura (e prática!) recomendada: https://www.atlassian.com/git/tutorials
OBS: O git é um software muito profundo e cheio de nuances! Esse tutorial é beeeem básico!
Dito isso, boa leitura! :)
O comando git clone
faz a cópia de um repositório REMOTO git já existente.
O comando git status
retorna o status da branch em que o usuário se encontra, i.e., se existem arquivos que foram ou não foram adicionados à área de staging, qual branch vc está, etc
O commando git add <nome_do_arquivo>
adiciona um arquivo à área de staging. Os arquivos que podem ser adicionados a essa área são aqueles que foram alterados pelo usuário, e podem ser encontrados com o comando git status
. Caso queira adicionar todos os arquivos alterados ao staging, utilize git add .
ou git add *
. Caso contrário, indique, um por um, os arquivos a serem adicionados.
O comando git commit
faz com que todos os arquivos presentes na área de staging sejam adicionados, de fato, ao projeto, na branch atual.
-
OBS: ISSO NÃO FAZ COM QUE OS ARQUIVOS COMMITADOS SEJAM ADICIONADOS AO REPOSITÓRIO GIT REMOTO.
-
OBS: UTILIZE O COMANDO
git commit -m '<texto>'
PARA COMMITAR. ESCREVA, EM < texto >, algo sucinto descrevendo as alterações feitas.
O comando git push
atualiza aquilo que foi commitado no repositório local para o repositório remoto.
- OBS: utilize
git push origin <nome_da_branch>
para ser claro qual branch deve receber os commits. O comando como um todo significa: git(chamando o git para fazer algo) push(realizando o comando push) origin(o push deve ser feito na branch remota original) <nome_da_branch>(branch que vai receber o push).
O comando git pull
atualiza a branch atual com as alterações da branch original.
O comando git checkout <nome_da_branch>
faz com que ocorra a troca da branch atual para a branch <nome_da_branch>. Ou seja, se eu estou, por exemplo, na branch 'main', utilizando git checkout dev
, eu troco para a branch 'dev'.
- OBS: O COMANDO
git checkout -b <nome_da_branch>
cria, a partir da branch atual, uma branch de nome <nome_da_branch>. Esta, por sua vez, é uma 'cópia' da branch atual, mas o que for feito na branch atual não afeta a nova branch e vice-versa.
O comando git merge <nome_da_branch>
faz a mescla da branch atual com a branch 'nome_da_branch'. Ou seja: todas as adições e alterações feitas em <nome_da_branch> passam pra branch atual. No entanto, <nome_da_branch> continua inalterada.
- OBS: isso pode gerar conflitos. "Conflito", no caso, é quando, ao mesclar duas branches, as duas realizam alterações no mesmo arquivo e, no fim das contas, essas duas versões do arquivo são diferentes. A resolução do conflito é escolher quais alterações queremos.
- Se vc nunca usou o git na sua maquina atual vc deve rodar os comandos
git config user.email "email_usado_no_Github"
git config user.email "Nome_e_sobrenome"
-
Abre o CMD e navegue até o local que vc deseja ter a pasta do seu repositorio.
ex: area de trabalho- Para navegar no CMD use:
No caso da area de trabalho provavelmente o comando sera:
cd <nome_do_diretorio>
cd desktop
- Para navegar no CMD use:
-
Quando estiver no local adequado usar o comando git clone.
- git clone
git clone <link_Do_Repositorio>
Depois desse comando todas as pastas e arquivos do repositório serão copiadas para o seu dispositivo, após isso para utilizar os outros comandos para esse repositório, é necessário mudar o terminal para a pasta clonada:
- Para mudar o diretório novamente:
cd <nome_do_repositorio_clonado>
- git clone
-
Quando estiver no local do repositorio.
- git pull para poder verificar a pasta
.git
e se está tudo atualizadogit pull
Depois agora é fazer sua parte modificando os arquivos
- git pull para poder verificar a pasta
- Salvar as alterações e "commitar".
- git add
ou, para adcionar todos os arquivos modificados:
git add <nome_do_arquivo>
git add .
- git status (para verificar se adcionou certamente os arquivos selecionados)
git status
- git commit (para salvar as alterações)
git commit -m "mensagem_da_commit"
- git add
- Subir as alterações para o repositório remoto.
- git push
git push origin <nome_da_branch>
- git push
- OBS: Sempre estar salvando e commitando para não perder as alterações feitas, mas não é necessário subir rapidamente as alterações.
- Atualizar o repositório local.
- git pull
git pull
- Realizar os mesmos passos do tópico anterior.
- OBS: Seria bom a partir de modificar arquivos mais profundamente, criar uma nova branch apenas para modificações específicas que podem gerar um futuro problema se caso fosse no repositório principal direto.
- Pimeiro verificar as branchs já existentes.
- git branch
git branch -a
- Caso sua branch já exista e você não está nela.
- git checkout
Caso ela não exista.git checkout <nome_da_branch>
- git branch
git branch -M <nome_da_branch>
- Estando na branch, podem utilizar os comandos anteriores normalmente, porém trocando os nomes da main pela a separada.
Ex:git push origin <nome_da_outra_branch>
- Para juntar a separada com a main após todos os testes.
-
Usar o git add e commit para salvar as alterações.
-
Juntar a main primeiramente no repositório local.
git pull origin main --allow-unrelated-histories
- Caso as alterações dêem certo, APENAS COM PERMISSÂO E VERIFICAÇÂO DO DUQUE OU SEMI-DUQUE, juntar a branch separada com a main no repositório remoto. (após salvar tudo e utilizar o git add e commit de tudo)
git push origin main
-