Versionamento de código Git e GitHub
- #GitHub
- #Git
Versionamento de Código
Versionamento de código nada mais é que ter um controle das versões do seu código! Uma forma de organizar as atualizações do seu projeto e, em cenários em que trabalho em equipe está presente, é extremamente necessário e útil. Tais benefícios serão citados posteriormente, por enquanto, basta citar que o versionamento controla também quem alterou tal código, e qual conteúdo fora alterado.
Com ele, é possível acompanhar a evolução, mudanças do código, controlar o trabalho em equipe, isso é característica de um sistema de controle de versão distribuído.
GitHub
O GitHub é um sistema de hospedagem de código que utiliza o controle de versionamento do Git.
Git
Git é um sistema de controle de versão distribuída gratuito open-source. Ele, com seu versionamento, rastreia e gerência as alterações em um código.
Ambos trabalham juntos, você pode criar um diretório com o projeto tanto localmente (máquina), quanto remotamente (GitHub). O Git baseia-se em códigos, ou seja, tem que aprender. Não tem jeito!
git clone => ele clona um diretório do GitHub
git commit => grava alterações localmente no diretório remoto
git pull => grava alterações do repositório remoto para o local
git push => empurra alterações do repositório para o local
git init => uma vez executada dentro da pasta, ela inicializa
como diretório no Git
git status => mostra árvore de nós, fala qual arquivo falta no commit
ou se está tudo ok
cat config => mostra infor do projeto, como nome do dono, email, Token
git log => informações do commit
...
Para ajeitar o espaço Git primeiro coloca o nome e e-mail:
git --global user.name "Amanda"
git --global user.email "Amanda@gmail.com"
Para se clonar um diretório, o dono da pasta, uma vez privada, para concluir seu objetivo é necessário ou obter um Token, ou SSH. O Token é uma chave que tem um tempo para se expirar e tem seu objetivo próprio, ela aparece pós a execução da linha de código:
git clone <nome do diretório>
O Git pede o token, a pessoa coloca e tudo certo.
Criando repositórios
- Transformando um diretório local em um repositório Git
mkdir <nome pasta>
cd <nome pasta>
git init
get clone <link>
cat config
//Para conectar com o diretório remoto
git remote add origin <link>
//Para clonar apenas uma branch
gir clone <link> --branch <nome da branch> --single-branch
Desfazendo alteração no repositório local.
- Se deu git na pasta errada
rm -rf .git
- Se quer voltar para última versão que tinha salvo
git restore <nome>
- Voltando a versão, desfazer commit
git reset --soft <commit>
--mixed
--hard
- Remover arquivo
git reset <nome>
Salvando alterações do repositório local.
- AMD no GitHub
git add <nome do arquivo já feito>
- Cria uma nova versão e vê se tem algum arquivo faltando
git commit <nome>
git log
git status
.gitignore quando tiver isso, o git irá ignorar e não irá colocar no commit. /.gitkeep deixa.
Enviando e baixando alterações no repositório remoto.
- Conecta o repositório local e remoto
git remote add origin <link>
- Envia o local para remoto
git push -u origin main
- Se for remoto para local
No vs code
- Se for para baixar alterações no local (alguns arquivos)
git pull .
Branch
É uma ramificação do projeto, quando não quer fazer uma mudança na MAIN, cria outra branch de teste e faz la. É como se fosse outra versão.
git check out -b <nome>
- Se tiver duas branch e quiser alterar nas duas, mescla!
git merge <nome>
- Apagar branch
git branch -d <nome>
- Comandos
git fetch =>
git diff =>
git clone <link> --branch <nome> --single-branch
git stash list => lista de mudanças
Ou seja,
Remoto - Local
Inicializar como repositório ⇒ git init
Local - Remoto
Clonar ⇒ git clone <link>
Envia do local para remoto ⇒ git push -u rigin main