Baixe o app para aproveitar ainda mais
Prévia do material em texto
Superior de Analise e Desenvolvimento de Sistemas Serviços Básicos de Redes para WEB Fernando Costenaro Silva fernando.costenaro@edu.sc.senai.br Controle de Versões • Sistema de controle de versões distribuído • Código fonte (software) • Qualquer tipo de arquivo Controle de Versões • Backup: – Diretório com data/hora – Arquivos com n versões ( v1.1, v1.2, v1.3, ...) – Controle manual das versões • Problemas: – Muitos projetos/arquivos para salvar – Sobrescrita de arquivos – Vários usuários modificando as versões Controle de Versões Apache Subversion (SVN 1.10)Mercurial 4.7 Gratuito até 5 usuários GIT-SCM 2.18 • SCV - Sistema de Controle de Versões • VCN – Version Control System • SCM – Source Code Management GIT • Diretório -> Repositório com um histórico completo • Habilidade total de acompanhamento das revisões (local) • Software livre -> versão 2 da GNU General Public License • Código aberto -> https://github.com/git/git • Endereço oficial: https://git-scm.com/ • Projetado e desenvolvido por Linus Torvalds • Para o desenvolvimento do kernel Linux GIT – Origem do nome • Foi definido por Linus Torvalds para a primeira versão. • Descreveu a ferramenta como: “o rastreador de conteúdo estúpido”. • O significado do nome depende do seu humor: – Combinação aleatória de três letras que é pronunciável e não é realmente usada por nenhum comando comum do UNIX. – Gíria em inglês para indivíduo desprezível – “Global Information Tracker": você está de bom humor e funciona bem – “Goddamn Idiotic Truckload of sh*t": quando não funciona • Fonte: https://github.com/git/git/blob/master/README.md GIT - Funcionamento • Gerencia as versões dos arquivos de forma automática: • Utiliza um arquivo como versão base e registra as alterações. • É possível retroceder para iniciar no documento base e reproduzir cada alteração feita. GIT - Funcionamento • Alterações de mais de um usuário: GIT - Histórico • Principais softwares de controle de versão ao longo dos anos: • 1972 - Source Code Control System (Bell Labs) • 1982 - Revision Control System • 1986 - Concurrent Version System • 2000 - Subversion (SVN) • 2005 - GIT GIT - Tipos • Tipos de sistemas de controle de versão: • Local • Centralizado • Distribuído GIT - Local • Sistemas de controle de versão local GIT - Centralizado • Sistemas de controle de versão centralizado GIT - Distribuído • Sistemas de controle de versão distribuído GIT – Interfaces • Interface: – Shell – GUI (graphical user interface) – Web Browser https://git-scm.com/downloads/guis GIT – Alguns comandos – git init → cria um novo repositório – git clone /caminho → cria uma cópia – git clone user@server:/caminho → de um servidor remoto – git add <arquivo> → propõe mudanças – git commit –m “comentários” → confirma as mudanças – git push origin master → envia alterações para outro local – git pull → atualiza com a versão mais recente – git tag 1.0.1 id_commit → cria um rótulo – git log → exibe o log dos commits – https://git-scm.com/docs GIT na Web • GitHub, https://github.com/ (repositório gratuito e público) • Bitbucket, https://bitbucket.org/ (repositório privado gratuito) • Gitlab, https://about.gitlab.com/ (repositório gratuito e privado) • Gitbook, https://www.gitbook.com/ (livros) • Penflip, https://www.penflip.com/ (escrita colaborativa) GIT – Links úteis – Aprendendo: • http://try.github.io/ – Instalando: • https://git-scm.com/book/pt-br/v1/Primeiros-passos- Instalando-Git – Referências: • https://git-scm.com/book/pt-br/v1 • Com o mesmo grupo do PI, pesquisar sobre um sistema de versionamento online: GitHub, Bitbucket, Gitlab, Gitbook, Penflip, Beanstalk, SourceForge, Cloud Source Repositories. • 1 - Características principais: Interfaces, planos, usuários, especialidade, etc. • 2 – Descrever os principais comandos (pelo menos 5) e alguns especiais (caso tenho). • 3 – O sistema apresenta integração com alguns outros softwares? Cite exemplos com imagens (mostrando o plugin). Exercícios
Compartilhar