Learn about Git - Git Tutorial

Preview:

DESCRIPTION

Learn about Git This a simple git tutorial

Citation preview

O que é sistema de controle de versão?

O controle de versão é um sistema que registra as mudanças feitas em um arquivo ou um conjunto de arquivos ao longo do tempo de forma que você possa recuperar versões específicas.

• reverter arquivos para um estado anterior;

• reverter um projeto inteiro para um estado anterior;

• comparar mudanças feitas ao decorrer do tempo;

• ver quem foi o último a modificar algo que pode estar causando problemas;

O que é sistema de controle de versão?

Utilizando VCS Localmente

Utilizando VCS Remotamente

Utilizando VCS Distribuído

Ferramentas

O que é Git?

Git é gratuito e de código aberto distribuído projetado para lidar com tudo, desde pequenos à grandes projetos com rapidez e eficiência.

Inicialmente projetado e desenvolvido por Linus Torvalds para o desenvolvimento Linux kernel.

Design Goals

● Rápido● Design simples● Suporte ao desenvolvimento não linear● Totalmente distribuído● Capaz de lidar com grandes projetos.

● (Linux kernel 3.6 15.9 SLOC (Million)

Git Básico

Configurando um repositório Git

git initO comando git init inicializa um novo repositório Git. Se você quiser colocar um projeto dentro do controle de versão, este é o primeiro comando que você precisa aprender

git init <diretório>

git cloneO comando git clone cria uma cópia de um repositório git existente. A clonagem é a forma mais comum para os desenvolvedores a obter um ambiente de trabalho com acópia de um repositório central.

git clone <repo> <diretório>

Git Básico

Gravando snapshots

git addO comando git add move alterações do trabalho diretório para a área de teste. Este dá-lhe a oportunidade de preparar um snapshot antes de “commitar” para a master.

git add <file/diretório>

git commit

O comando git commit adiciona ao log o estado atual de uma determinada branch.

git commit -m <mensagem>

git statusO comando git status exibe o estado do diretório de trabalho. Você vai desejar executar este em conjunto com git add e git commit para ver exatamente o que vai ser incluído no próximo snapshot.

git status

git checkoutO comando git checkout possui três diferentes funções: - Checkout de arquivos- Checkout commits- Checkout branches

git checkout <commit/branch>

Desfazendo alterações

Desfazendo alterações públicas

git revertO comando git revert é utilizado quando um commit errôneo é encontrado, revertê-lo é uma maneira fácil e segura de corrigir o código base.

git revert <commit>

Desfazendo alterações

Desfazendo alterações locais

git reset

O comando git reset é utilizado quando deseja desfazer mudanças nos arquivos do diretório de trabalho.

git reset <options> <file>

git clean

O comando git clean remove arquivos que não estão no repositório.

git clean <diretório>

Git Branches

git branch

O comando git branch permite criar ambientes de desenvolvimento isolados dentro de um mesmo repositório.

git branch <branch>

git checkout

O comando git checkout permite navegar entre os branches existentes.

git checkout <options> <branch>

git merge

O comando git merge permite integrar as mudanças feitas em ramos diferentes.

git merge <options> <branch>

Remote Repositories

git remoteO comando git remote é conveniente para administrar conexões remotas.Em vez de passar as URL completas para os comandos fetch, pull, push, ele permite que use um atalho.

git remote <options>

git fetch

O comando git fetch procura baixar um branch de outro repositório e permite ao usuário verificar as mudanças antes de fazer um merge com o projeto atual.

git fetch <remote> <branch>

git pull

O comando git pull baixa um branch de um repositório e faz automaticamente um merge ao projeto atual.

git pull <options> <remote>

git push

O comando git push permite mover um branch local para algum outro repositório.

git push <remote> <branch>

Demo