Git & git hub

588 visualizações

Publicada em

Dojo sobre Git e GitHub.

Publicada em: Tecnologia
0 comentários
0 gostaram
Estatísticas
Notas
  • Seja o primeiro a comentar

  • Seja a primeira pessoa a gostar disto

Sem downloads
Visualizações
Visualizações totais
588
No SlideShare
0
A partir de incorporações
0
Número de incorporações
330
Ações
Compartilhamentos
0
Downloads
0
Comentários
0
Gostaram
0
Incorporações 0
Nenhuma incorporação

Nenhuma nota no slide

Git & git hub

  1. 1. Git e GitHub
  2. 2. Equipe Piloto: Ricardo Kovalski Cruz Copiloto: Alisson Vieira
  3. 3. ● O que é o Git? VCS descentralizado. ● Qual a finalidade? Ter maior controle sobre as versões de um sistema. ● Quem pode utilizá-lo? Qualquer pessoa, desde empresas que queiram ter um controle sobre as versões de arquivos de seus projetos até pessoas que encontrem alguma utilidade no git. ● Qual o conceito de armazenamento de arquivos? Snapshots.
  4. 4. Breve Histórico ● 1991 - 2002: Período em que o kernel do Linux sofreu manutenções; ● 2002: O projeto do kernel do Linux começou a utilizar um sistema DVCS propriétario, o BitKeeper; ● 2005: O relacionamento entre a comunidade do Linux e a empresa do Bitkeeper se desfez; ● Foi então que a comunidade de desenvolvedores (em particular Linus Tovards) resolveram desenvolver a sua própria ferramenta, baseando- se nas lições aprendidas quando utilizaram o BitKeeper;
  5. 5. Alguns objetivos ●Velocidade; ●Design simples; ●Suporte robusto quanto a desenvolvimento não linear; ●Totalmente distribuído; ●Capaz de lidar eficientemente com grandes projetos, exemplo: Kernel;
  6. 6. Faça o Download https://git-scm.com/downloads
  7. 7. Configurando o seu Git ●git config --global user.name “seu nome” ●git config --global user.email “seu email” ●git config --global color.ui true
  8. 8. Primeiros Passos ● mkdir “novoDiretorio” - Cria um novo diretório; ● git init - Inicializa o novo diretório; ● touch “novoArquivo” - Cria um novo arquivo; ● ls -la - Lista detalhadamente os arquivos; ● vim “nomeArquivo” - Abre o arquivo no editor padrão do Linux; ● Tecle Insert para entrar no modo de digitação e Esc para entrar no modo de leitura; ● ZZ ou :wq - Salva o arquivo e sai do editor; ● git status - Exibe o status atual do arquivo, ou seja, untracked files;
  9. 9. Os 3 estágios ●Untracked Files - Arquivo não faz parte do controle de versão; ●Changes to be commited - Foi adicionado mas ainda não foi commitado; ●Nothing to commit - Gera um hash;
  10. 10. Untracked Files ●git add “nomeArquivo” - Adiciona o arquivo ao controle de versão; ●git add . - Adiciona todos os arquivos que ainda não fazem parte do controle de versão;
  11. 11. Changes to be commited ●git commit -m “mensagem” - Commita os arquivos; ●git commit “nomeArquivo” - Commita o arquivo especifico; ●git reset HEAD “nomeArquivo” - Retorna ao primeiro estágio; ●git commit -a -m “mensagem” - Adiciona e commita o(s) arquivo(s) “modificados”;
  12. 12. Voltando Commits ● git checkout ‘hash’ - Volta o arquivo p/ versão especifica; ● git reset HEAD~1 - Volta x commits de acordo com o nº informado após o ~; ● git reser HEAD~1 --soft - Desfaz o ultimo commit mas deixa o arquivo pronto p/ ser commitado novamente; ● git reset HEAD~1 --hard - Desfaz o ultimo commit permanentemente; ● git checkout -- “nomeArquivo” - Todas as alterações realizadas serão perdidas e o arquivo voltará exatamente como estava antes, desde que o mesmo não tenha sido commitado;
  13. 13. .gitignore ●Arquivo que terá caminhos de arquivos indesejados. ●Estes arquivos não aparecerão no seu controle de versão e também não estarão mais aparecendo com o status de untrackfiles.
  14. 14. Exibindo logs ● git log - Exibe os logs; ● git log -p - Exibe uma comparação entre as alterações em cada arquivo; ● git log --stat - Exibe as estatísticas de todos os logs; ● git log --pretty=oneline - Exibe em uma linha os logs - (resumo); ● git log --pretty-format:“%h - %an, %ar : %s” - Exibe o inicio do hash, autor do commit, a quanto tempo o commit foi realizado e a descrição do commit; ● git log --since=2.days - Exibe os commits dos dois últimos dias;
  15. 15. Branch ●git branch - Exibe a lista de branchs e informa o atual; ●git branch -a - Exibe branchs locais e remotos; ●git checkout -b “nomeBranch” - Cria um novo branch; ●git checkout “nomeBranch” - Acessa o branch informado; ●git branch -D “nomeBranch” - Remove o branch;
  16. 16. Merge ou Rebase ● git merge “nomeBranch” - Traz as mudanças do branch informado ao branch principal (master); ● git rebase “nomeBranch” - Organiza linearmente os commits na ordem que eles foram realizados, mas fazendo tudo isso em um mesmo branch; Resumindo, o merge não reordena os commits e ainda muitas vezes gera um commit adicional p/ ser concluído, por outro lado, o rebase reordena os commits, não gerando assim um commit adicional;
  17. 17. Gerando as chaves e configurando o repositório remoto ● ssh-keygen - Gerador de chaves: id_rsa é private e id_rsa.pub é public; ● git remote add origin git@github.com:<seuUser>/<seuReporitory>.git ● git remote remove origin - Remove o origin existente
  18. 18. Push e Pull ● git push origin master - Empurra os arquivos do branch master para o servidor origin; OBS.: Quando clonamos um repositório, estamos clonando apenas o branch master. Para clonar os demais branchs devemos criar localmente os mesmos e colocar o caminho a partir do qual queremos copiar. Ex.: git checkout -b “funcionalidade2” origin/funcionalidade2
  19. 19. ●git pull - Verifica se todos os arquivos estão sincronizados; ●git pull origin master - Pucha as alterações feitas que estão no repositório remoto p/ o PC;
  20. 20. Tags ● git tag v0.1.0 - Cria uma nova tag; ● git tag -l - Lista todas as tags existentes no sistema; ● git push origin master --tags - Sobe todas as tags existentes do sistema; ● git push origin mastes v0.1.0 - Sobe a tag específica; ● git tag -d v0.1.0 - Remove o tag local; ● git push origin :refs/tags/v0.1.0 - Remove a tag do repositório remoto;
  21. 21. Referencias ● http://rogerdudler.github.io/git-guide/index.pt_BR.html ● https://git-scm.com/documentation

×