SlideShare uma empresa Scribd logo
1 de 70
Baixar para ler offline
Bruno Orlandi
Git e contribuição para
projetos Open Source
Bruno Orlandi
●
4º Ano Ciências de Computação 
– ICMC USP
●
PET Computação
●
HTML5 Web e Mobile
●
Gosta de compartilhar 
conhecimento
●
@BrOrlandi
Instalando
●
Instalar o Git:
sudo apt­get install git
●
Instalar o Gitg:
sudo apt­get install gitg
Sobre o Minicurso
●
Não será abordado a parte técnica do Git.
●
Objetivo aprender Git e sua utilidade na 
prática!
●
Dúvidas e correções a qualquer momento!
Conteúdo
●
Visão Geral
●
Comandos Básicos
●
Publicando e Colaborando
●
Trabalho em Equipe
●
Praticar
●
Praticar
●
Praticar
O que é Git-SCM
●
Sistema de Controle de Versão Distribuído
●
SCM   Software Configuration Management→
●
Criado por Linus Torvalds (2005)
●
Auxiliar no Desenvolvimento do Linux
Gerência de Configuração de
Software
Gerência de Configuração de Software
●
Durante o desenvolvimento do software 
queremos saber:
– O que mudou e quando?
– Por que mudou?
– Quem fez a mudança?
– Podemos reproduzir esta mudança?
Gerência de Configuração de Software
●
Identificação
●
Documentação
●
Controle
●
Auditoria
Gerência de Configuração de Software
●
Artefatos:
– Código fonte
– Documentação do Software
– Manual de Usuário
Problema exemplo
●
Você precisa editar um site hospedado em um 
servidor
●
Você faz o download via FTP
●
Faz as alterações necessárias
●
Manda os arquivos alterados para o servidor 
via FTP
Problema exemplo
●
Agora outro desenvolvedor também deve fazer 
alterações no site
●
Baixa o mesmo arquivo junto com você
●
Edita e manda para o servidor depois de você
●
Sobrescreve suas alterações
Controle de Versão resolve
●
Controle de versão faz o 'merge' entre as 
alterações.
Distribuído
Controle de Versão
Controle de Versão
O que é Github
●
Servidor de repositórios Git
●
Surgiu em 2008
●
+5 milhões de usuários
Estão no Github
Usam Git
Alternativas
●
Subversion (SVN)
●
Mercurial
●
CVS ­ Concurrent Versioning System
●
Bazaar
●
Git é o mais rápido e eficiente
Servidores
Servidores/Suporte git Mercurial SVN
Github V
Bitbucket V V
SourceForge V V V
Google Code V V V
Antes de começar alguns termos técnios!
Termos
●
Repositório: onde são armazenados todos os 
arquivos do projeto.
●
Commit: registro de alterações realizadas. 
Como se fosse um “checkpoint”.
●
Branch: ramificação do projeto, uma linha de 
desenvolvimento diferente
Termos
●
Merge: incorporar alterações realizadas ou 
unir branchs.
●
Fork: bifurcação, uma cópia do projeto. 
Ubuntu é um fork do Debian.
●
Push: enviar as alterações para um repositório 
remoto.
●
Pull e Fetch: baixar as alterações feitas de um 
repositório remoto. Pull realiza o merge.
Vamos começar na prática!
Instalando
●
Instalar o Git:
sudo apt­get install git
●
Instalar o Gitg:
sudo apt­get install gitg
Help
●
Quando precisar de ajuda:
git help <command>
Configurando
●
Configure seu nome e e­mail:
git config ­­global user.name 
“Meu Nome”
git config ­­global user.email 
meuemail@email.com
●
Configure cores no terminal:
git config ­­global color.ui 
true
Criando o Primeiro Repositório
git init PrimeiroRepo
●
Será criado o diretório com o novo repositório 
vazio.
cd PrimeiroRepo
●
Todas as configurações do repositório ficam 
na pasta .git
Crie seu primeiro arquivo
●
Crie um arquivo, edite e adicione ao 
repositório:
touch PrimeiroArquivo
gedit PrimeiroArquivo
git add PrimeiroArquivo
git commit ­m “Criado o primeiro arquivo.”
Estados dos arquivos
●
Não monitorado (untracked)
●
Modificado (modified)
●
Preparado (staged)
●
Consolidado (commited)
Estados dos arquivos
Status dos arquivos
●
Use o comando:
git status
●
Exibe alterações desde o último commit
●
Exibe os arquivos:
– Modificados
– Preparados para o Commit
– Novos que não estão no repositório
Status dos arquivos
●
Edite o arquivo criado anteriormente
●
Crie um novo arquivo e veja o seu status no 
repositório
Explicando os comandos usados
git add <lista de arquivos>
●
Adiciona os arquivos novos e modificados na 
Staging Area, preparados para o próximo 
Commit.
● git add ­­all 
● git add *.txt
● git add folder/*.txt
● git add folder/
● git add “*.txt”
Explicando comandos usados
git commit [­m “Message”]
●
Registra o commit de todos os arquivos que 
estão na Staging Area.
●
Se o parametro de mensagem não for passado 
abrirá um editor de texto para escrever a 
mensagem
● git config ­­global core.editor 
gedit
Git Workflow
●
Basicamente a maior parte do trabalho com o 
git consiste nestas tarefas:
– Editar
– Commitar
●
Exercite estes comandos!
Log e Show
git log
●
Lista os commits mais recentes.
git log –pretty=oneline
git shortlog
git show [commit]
●
Mostra as alterações de um commit
●
Commit deve ser especificado pela chave
●
Sem parâmetro mostra o ultimo commit
Dif
git diff
●
Exibir diferenças entre commits e branchs
git diff [path]
●
Diferença no diretório
git diff HEAD~1 HEAD
●
Mostra o que foi alterado no último commit
Ferramenta externa Dif
git config ­­global merge.tool 
kdiff3
●
Permite usar uma ferramenta externa para 
usar no Diff e também no Merge.
Git Blame
●
Encontrar os culpados pelas alterações em um 
arquivo.
git blame <arquivo> ­L 10,15
●
Vai exibir das linhas 10 a 15 quem escreveu 
elas.
Git mv e rm
●
Git não trata perfeitamente arquivos 
renomeados ou movidos.
git mv <path1>  <path2>
git rm <file>
●
Remove um arquivo do repositório.
●
A diferença é que essas alterações já são 
adicionadas ao staging.
Desfazendo alterações
git checkout ­­ <path_or_file>
●
Irá desfazer todas as alterações que não 
estejam no Stage desde o último commit.
git checkout HEAD ­­ <path_file>
●
Desfazer as alterações desde o último commit 
incluindo o Stage.
Git reset
git reset <file>
●
Remove um novo arquivo da staging area.
●
Não serve para desfazer alterações, para isso 
use: checkout ­­ 
●
Possui outras funcionalidades.
Git checkout
git checkout <commit_id>
●
Irá trocar HEAD para apontar para o commit.
●
Altera o repositório para o estado daquele 
commit.
●
Útil para fazer testes antes e depois de 
alterações.
git checkout master
●
Para voltar o HEAD à posição normal.
Git Revert
●
Reverter um commit pode ser bastante útil.
git revert <commit_id>
●
Irá criar um novo commit que desfaz as 
alterações do commit especificado.
Branching
Criando ramificações do repositório
Branch
●
É uma ramificação do repositório
●
Alterações(commits) ocorrem na branch
●
Muito útil para trabalhos colaborativos
●
Branchs de desenvolvimento facilitam o 
controle
git branch
Branching
git branch new_branch
git checkout new_branch
●
Cria e troca para uma nova branch
●
É possível comparar branchs com diff:
git diff master new_branch
Merge
●
Uma tarefa muito comum com branchs é 
realizar o merge com outra branch.
git checkout master
git merge new_branch
●
Excluir uma branch:
git branch ­d new_branch
Git Rebase
●
Quando a Branch pai sofre alterações e deseja­
se aplicar estas alterações para Branchs filhas.
●
Branchs filhas devem realizar o rebase:
git rebase master
●
Pode acontecer conflitos!
Conflitos
●
Conflitos podem acontecer ao unirmos 
alterações
●
Acontecem quando ramificações diferentes 
possuem as mesmas linhas nos mesmos 
arquivos editadas diferentes
Merge com Conflito
●
Ao tentar fazer o Merge se houver conflitos 
será acusado e anotado nos arquivos.
●
O repositório fica em estado aguardando você 
consertar os conflitos manualmente.
●
Após isso deve ser feito um commit indicando 
que o conflito foi resolvido.
Tag
●
Útil para definir versões estáveis do projeto.
●
Semelhante a Branch porém não sofre mais 
alterações.
●
Guarda o estado atual da branch.
git tag [nome da tag]
git push <remote> <tag>
Github e Remotes
Remote
●
Repositório remoto, hospedado em um 
servidor.
●
São referenciados por uma URL.
●
Vamos trabalhar com repositório remoto no 
Github.
●
Outra opção interessante Bitbucket.
Remote
●
Podem receber vários commits.
●
Sincronizar o trabalho colaborativo.
●
Exige chave SSH.
git remote add origin <URL>
Criar conta no Github
●
Acessem https://github.com/
●
Criem uma conta utilizando utilizando o 
mesmo e­mail configurado no git config.
●
Gerar chaves SSH no Linux:
https://help.github.com/articles/generating­s
sh­keys
Criar um repositório remoto
●
Crie um repositório no Github.
●
Inicialize um repositório local.
●
Configure o repositório remoto.
●
Crie um arquivo README.md
●
Faça o upload das alterações.
Push
●
Enviar alterações (commits) de uma branch 
para o repositório remoto.
●
A primeira vez:
git push ­u origin master
●
O envio é rejeitado se o repositório local não 
estiver sincronizado.
git push <remote> <branch>
git push
Pull
●
Baixa as alterações do repositório remoto e 
realiza o Merge automático com o repositório 
local.
●
Mantém o repositório sincronizado com os 
últimos commits de uma branch.
●
Permite baixar novas branchs que não foram 
criadas localmente.
git pull 
git pull <remote> <nova>
Git Clone
●
Baixa o repositório remoto.
●
Outra forma de criar um repositório local.
●
Já vem com o remote configurado.
git clone <URL>
Fork no Github
●
Copia um repositório remoto de outro usuário 
para o seu usuário no Github.
●
É assim que começa a contribuição para 
outros projetos.
●
Você teria uma cópia independente do 
repositório original, podendo fazer quaisquer 
alterações.
Issues no Github
●
Tradução: Questões.
●
Reportar bugs.
●
Organizar tarefas a serem feitas.
●
Permite comentários dos usuários.
●
Pode referenciar commits.
Pull Request
●
O grande simbolo de colaboração.
●
É quando você solicita que sua alterações 
sejam unidas a uma branch no mesmo 
repositório ou a um repositório que sofreu o 
fork.
●
Pull request podem ser comentados e 
referenciados no Github.
●
Muito útil para o trabalho colaborativo.
Vamos praticar mais!
Extras
●
.gitignore
●
Git commit ­­ammend
●
Git Stash e Stash Pop
●
Milestones
●
Hooks
●
Github pages
Dúvidas?
Convite
●
Palestras
●
Minicursos
●
Concursos
●
Prêmios
●
Feira de recrutamento
●
http://semcomp.icmc.usp.br/
●
facebook.com/semcomp
Obrigado!
18 a 22 de Agosto

Mais conteúdo relacionado

Mais procurados

Ferramentas Essenciais para Desenvolvedores de Plugins WordPress
Ferramentas Essenciais para Desenvolvedores de Plugins WordPressFerramentas Essenciais para Desenvolvedores de Plugins WordPress
Ferramentas Essenciais para Desenvolvedores de Plugins WordPressTiago Hillebrandt
 
Apresentação Python e Games - Python Brasil 11 - 2015
Apresentação Python e Games - Python Brasil 11 - 2015Apresentação Python e Games - Python Brasil 11 - 2015
Apresentação Python e Games - Python Brasil 11 - 2015Julio Cesar Eiras Melanda
 
Python Nordeste 2016 - Aplicações multiplataforma - Kivy
Python Nordeste 2016 - Aplicações multiplataforma - KivyPython Nordeste 2016 - Aplicações multiplataforma - Kivy
Python Nordeste 2016 - Aplicações multiplataforma - KivyJulio Cesar Eiras Melanda
 
Migração de Banco de Dados - Oracle para MongoDB - TDC2014
Migração de Banco de Dados - Oracle para MongoDB - TDC2014Migração de Banco de Dados - Oracle para MongoDB - TDC2014
Migração de Banco de Dados - Oracle para MongoDB - TDC2014Jonathan Prates
 
Software livre, história, paradigmas, comunidade e colaboração
Software livre, história, paradigmas, comunidade e colaboraçãoSoftware livre, história, paradigmas, comunidade e colaboração
Software livre, história, paradigmas, comunidade e colaboraçãoGeorge Mendonça
 
Abstinência: O dia seguinte de um ex-usuário
Abstinência: O dia seguinte de um ex-usuárioAbstinência: O dia seguinte de um ex-usuário
Abstinência: O dia seguinte de um ex-usuárioUbiratan Z. do Nascimento
 
Minas Testing Conference - Entrega Contínua
Minas Testing Conference - Entrega ContínuaMinas Testing Conference - Entrega Contínua
Minas Testing Conference - Entrega ContínuaSamanta Cicilia
 
Workshop de Introdução ao Git GitHub
Workshop de Introdução ao Git GitHubWorkshop de Introdução ao Git GitHub
Workshop de Introdução ao Git GitHubGilson Junior
 
TDC2016SP - Equipes ágeis de infraestrutura
TDC2016SP - Equipes ágeis de infraestruturaTDC2016SP - Equipes ágeis de infraestrutura
TDC2016SP - Equipes ágeis de infraestruturatdc-globalcode
 
Ubuntu o projeto e a comunidade
Ubuntu   o projeto e a comunidadeUbuntu   o projeto e a comunidade
Ubuntu o projeto e a comunidadeLuiz Thiago
 
Desenvolvendo Produtos sobre a Plataforma Pentaho
Desenvolvendo Produtos sobre a Plataforma PentahoDesenvolvendo Produtos sobre a Plataforma Pentaho
Desenvolvendo Produtos sobre a Plataforma PentahoPentahoBrasil
 
Palestra: Desenvolvendo Produtos sobre a Plataforma Pentaho - Pentaho Day 2013
Palestra: Desenvolvendo Produtos sobre a Plataforma Pentaho - Pentaho Day 2013Palestra: Desenvolvendo Produtos sobre a Plataforma Pentaho - Pentaho Day 2013
Palestra: Desenvolvendo Produtos sobre a Plataforma Pentaho - Pentaho Day 2013Marcio Junior Vieira
 
O que e Software Livre e Comunidade ParaLivre
O que e Software Livre e Comunidade ParaLivreO que e Software Livre e Comunidade ParaLivre
O que e Software Livre e Comunidade ParaLivreParaLivre
 

Mais procurados (20)

Ferramentas Essenciais para Desenvolvedores de Plugins WordPress
Ferramentas Essenciais para Desenvolvedores de Plugins WordPressFerramentas Essenciais para Desenvolvedores de Plugins WordPress
Ferramentas Essenciais para Desenvolvedores de Plugins WordPress
 
BlingTech - Gitlab
BlingTech - GitlabBlingTech - Gitlab
BlingTech - Gitlab
 
Apresentação Python e Games - Python Brasil 11 - 2015
Apresentação Python e Games - Python Brasil 11 - 2015Apresentação Python e Games - Python Brasil 11 - 2015
Apresentação Python e Games - Python Brasil 11 - 2015
 
Python Nordeste 2016 - Aplicações multiplataforma - Kivy
Python Nordeste 2016 - Aplicações multiplataforma - KivyPython Nordeste 2016 - Aplicações multiplataforma - Kivy
Python Nordeste 2016 - Aplicações multiplataforma - Kivy
 
Migração de Banco de Dados - Oracle para MongoDB - TDC2014
Migração de Banco de Dados - Oracle para MongoDB - TDC2014Migração de Banco de Dados - Oracle para MongoDB - TDC2014
Migração de Banco de Dados - Oracle para MongoDB - TDC2014
 
#4 - Git - Stash
#4 - Git - Stash#4 - Git - Stash
#4 - Git - Stash
 
Software livre, história, paradigmas, comunidade e colaboração
Software livre, história, paradigmas, comunidade e colaboraçãoSoftware livre, história, paradigmas, comunidade e colaboração
Software livre, história, paradigmas, comunidade e colaboração
 
Docker #comofaz
Docker  #comofazDocker  #comofaz
Docker #comofaz
 
Abstinência: O dia seguinte de um ex-usuário
Abstinência: O dia seguinte de um ex-usuárioAbstinência: O dia seguinte de um ex-usuário
Abstinência: O dia seguinte de um ex-usuário
 
Minas Testing Conference - Entrega Contínua
Minas Testing Conference - Entrega ContínuaMinas Testing Conference - Entrega Contínua
Minas Testing Conference - Entrega Contínua
 
Workshop de Introdução ao Git GitHub
Workshop de Introdução ao Git GitHubWorkshop de Introdução ao Git GitHub
Workshop de Introdução ao Git GitHub
 
Python agil
Python agilPython agil
Python agil
 
TDC2016SP - Equipes ágeis de infraestrutura
TDC2016SP - Equipes ágeis de infraestruturaTDC2016SP - Equipes ágeis de infraestrutura
TDC2016SP - Equipes ágeis de infraestrutura
 
Ubuntu o projeto e a comunidade
Ubuntu   o projeto e a comunidadeUbuntu   o projeto e a comunidade
Ubuntu o projeto e a comunidade
 
Git
GitGit
Git
 
Desenvolvendo Produtos sobre a Plataforma Pentaho
Desenvolvendo Produtos sobre a Plataforma PentahoDesenvolvendo Produtos sobre a Plataforma Pentaho
Desenvolvendo Produtos sobre a Plataforma Pentaho
 
Palestra: Desenvolvendo Produtos sobre a Plataforma Pentaho - Pentaho Day 2013
Palestra: Desenvolvendo Produtos sobre a Plataforma Pentaho - Pentaho Day 2013Palestra: Desenvolvendo Produtos sobre a Plataforma Pentaho - Pentaho Day 2013
Palestra: Desenvolvendo Produtos sobre a Plataforma Pentaho - Pentaho Day 2013
 
Open source e Gnu/Linux
Open source e Gnu/LinuxOpen source e Gnu/Linux
Open source e Gnu/Linux
 
O que e Software Livre e Comunidade ParaLivre
O que e Software Livre e Comunidade ParaLivreO que e Software Livre e Comunidade ParaLivre
O que e Software Livre e Comunidade ParaLivre
 
Linear Engineering
Linear EngineeringLinear Engineering
Linear Engineering
 

Semelhante a Git e contribuição para projetos Open Source

Git e contibuição com projetos open source usando GitHub
Git e contibuição com projetos open source usando GitHubGit e contibuição com projetos open source usando GitHub
Git e contibuição com projetos open source usando GitHubBruno Orlandi
 
Lidando com Equipes de Desenvolvimento
Lidando com Equipes de DesenvolvimentoLidando com Equipes de Desenvolvimento
Lidando com Equipes de Desenvolvimento4Soft
 
Git e Github: qual a importância dessas ferramentas para o desenvolvedor
Git e Github: qual a importância dessas ferramentas para o desenvolvedorGit e Github: qual a importância dessas ferramentas para o desenvolvedor
Git e Github: qual a importância dessas ferramentas para o desenvolvedorFelipe Pedroso
 
Workshop sistema de versionamento de código - git
Workshop  sistema de versionamento de código - gitWorkshop  sistema de versionamento de código - git
Workshop sistema de versionamento de código - gitThiago Filadelfo
 
Controlo de Versões Distribuído com Git
Controlo de Versões Distribuído com GitControlo de Versões Distribuído com Git
Controlo de Versões Distribuído com GitC. Augusto Proiete
 
Controlo de Versões Distribuído com Git - C. Augusto Proiete
Controlo de Versões Distribuído com Git - C. Augusto ProieteControlo de Versões Distribuído com Git - C. Augusto Proiete
Controlo de Versões Distribuído com Git - C. Augusto ProieteComunidade NetPonto
 
Coding Dojo - Unreal Engine
Coding Dojo - Unreal EngineCoding Dojo - Unreal Engine
Coding Dojo - Unreal EngineAdolfo Neto
 
Qualidade em projetos PHP - SoLiSC 2011
Qualidade em projetos PHP - SoLiSC 2011Qualidade em projetos PHP - SoLiSC 2011
Qualidade em projetos PHP - SoLiSC 2011Luís Cobucci
 
LPUG #10 agenda e community updates - 2020-09-16
LPUG #10   agenda e community updates - 2020-09-16LPUG #10   agenda e community updates - 2020-09-16
LPUG #10 agenda e community updates - 2020-09-16Fernando Fernández
 
Qualidade em projetos PHP - PHPSC Conf 2011
Qualidade em projetos PHP - PHPSC Conf 2011Qualidade em projetos PHP - PHPSC Conf 2011
Qualidade em projetos PHP - PHPSC Conf 2011Luís Cobucci
 
Git: O que eu preciso saber para entrar no mercado? - - Marcos Echevarria - ...
Git: O que eu preciso saber para entrar no mercado? -  - Marcos Echevarria - ...Git: O que eu preciso saber para entrar no mercado? -  - Marcos Echevarria - ...
Git: O que eu preciso saber para entrar no mercado? - - Marcos Echevarria - ...Tchelinux
 
Fatores que influenciam na longevidade de um Software
Fatores que influenciam na longevidade de um SoftwareFatores que influenciam na longevidade de um Software
Fatores que influenciam na longevidade de um SoftwarePablo Dall'Oglio
 
Simplesmente Python: Por que você não deve deixar de aprender essa linguagem
Simplesmente Python: Por que você não deve deixar de aprender essa linguagemSimplesmente Python: Por que você não deve deixar de aprender essa linguagem
Simplesmente Python: Por que você não deve deixar de aprender essa linguagemEric Hideki
 
PDC - Engenharia - Git e Gitorious
PDC - Engenharia - Git e GitoriousPDC - Engenharia - Git e Gitorious
PDC - Engenharia - Git e Gitoriousslides_teltools
 
Xperience Superlógica 2018 - Infraestrutura Ágil
Xperience Superlógica 2018 - Infraestrutura ÁgilXperience Superlógica 2018 - Infraestrutura Ágil
Xperience Superlógica 2018 - Infraestrutura ÁgilGabriela Dias
 

Semelhante a Git e contribuição para projetos Open Source (20)

Git e contibuição com projetos open source usando GitHub
Git e contibuição com projetos open source usando GitHubGit e contibuição com projetos open source usando GitHub
Git e contibuição com projetos open source usando GitHub
 
Git para Designers
Git para DesignersGit para Designers
Git para Designers
 
Lidando com Equipes de Desenvolvimento
Lidando com Equipes de DesenvolvimentoLidando com Equipes de Desenvolvimento
Lidando com Equipes de Desenvolvimento
 
Git e Github: qual a importância dessas ferramentas para o desenvolvedor
Git e Github: qual a importância dessas ferramentas para o desenvolvedorGit e Github: qual a importância dessas ferramentas para o desenvolvedor
Git e Github: qual a importância dessas ferramentas para o desenvolvedor
 
Workshop sistema de versionamento de código - git
Workshop  sistema de versionamento de código - gitWorkshop  sistema de versionamento de código - git
Workshop sistema de versionamento de código - git
 
Scrum
ScrumScrum
Scrum
 
Slide
SlideSlide
Slide
 
São Paulo MuleSoft Meetups - DevOps
São Paulo MuleSoft Meetups - DevOpsSão Paulo MuleSoft Meetups - DevOps
São Paulo MuleSoft Meetups - DevOps
 
Controlo de Versões Distribuído com Git
Controlo de Versões Distribuído com GitControlo de Versões Distribuído com Git
Controlo de Versões Distribuído com Git
 
Controlo de Versões Distribuído com Git - C. Augusto Proiete
Controlo de Versões Distribuído com Git - C. Augusto ProieteControlo de Versões Distribuído com Git - C. Augusto Proiete
Controlo de Versões Distribuído com Git - C. Augusto Proiete
 
Coding Dojo - Unreal Engine
Coding Dojo - Unreal EngineCoding Dojo - Unreal Engine
Coding Dojo - Unreal Engine
 
Qualidade em projetos PHP - SoLiSC 2011
Qualidade em projetos PHP - SoLiSC 2011Qualidade em projetos PHP - SoLiSC 2011
Qualidade em projetos PHP - SoLiSC 2011
 
LPUG #10 agenda e community updates - 2020-09-16
LPUG #10   agenda e community updates - 2020-09-16LPUG #10   agenda e community updates - 2020-09-16
LPUG #10 agenda e community updates - 2020-09-16
 
Qualidade em projetos PHP - PHPSC Conf 2011
Qualidade em projetos PHP - PHPSC Conf 2011Qualidade em projetos PHP - PHPSC Conf 2011
Qualidade em projetos PHP - PHPSC Conf 2011
 
Git: O que eu preciso saber para entrar no mercado? - - Marcos Echevarria - ...
Git: O que eu preciso saber para entrar no mercado? -  - Marcos Echevarria - ...Git: O que eu preciso saber para entrar no mercado? -  - Marcos Echevarria - ...
Git: O que eu preciso saber para entrar no mercado? - - Marcos Echevarria - ...
 
GIT Básico
GIT BásicoGIT Básico
GIT Básico
 
Fatores que influenciam na longevidade de um Software
Fatores que influenciam na longevidade de um SoftwareFatores que influenciam na longevidade de um Software
Fatores que influenciam na longevidade de um Software
 
Simplesmente Python: Por que você não deve deixar de aprender essa linguagem
Simplesmente Python: Por que você não deve deixar de aprender essa linguagemSimplesmente Python: Por que você não deve deixar de aprender essa linguagem
Simplesmente Python: Por que você não deve deixar de aprender essa linguagem
 
PDC - Engenharia - Git e Gitorious
PDC - Engenharia - Git e GitoriousPDC - Engenharia - Git e Gitorious
PDC - Engenharia - Git e Gitorious
 
Xperience Superlógica 2018 - Infraestrutura Ágil
Xperience Superlógica 2018 - Infraestrutura ÁgilXperience Superlógica 2018 - Infraestrutura Ágil
Xperience Superlógica 2018 - Infraestrutura Ágil
 

Mais de Bruno Orlandi

As sete fases da inovação
As sete fases da inovaçãoAs sete fases da inovação
As sete fases da inovaçãoBruno Orlandi
 
Aula 6 - Curso Git e Github - Webschool
Aula 6 - Curso Git e Github - WebschoolAula 6 - Curso Git e Github - Webschool
Aula 6 - Curso Git e Github - WebschoolBruno Orlandi
 
Aula 5 - Curso Git e Github - Webschool
Aula 5 - Curso Git e Github - WebschoolAula 5 - Curso Git e Github - Webschool
Aula 5 - Curso Git e Github - WebschoolBruno Orlandi
 
Aula 4 - Curso Git e Github - Webschool
Aula 4 - Curso Git e Github - WebschoolAula 4 - Curso Git e Github - Webschool
Aula 4 - Curso Git e Github - WebschoolBruno Orlandi
 
Aula 3 - Curso Git e Github - Webschool
Aula 3 - Curso Git e Github - WebschoolAula 3 - Curso Git e Github - Webschool
Aula 3 - Curso Git e Github - WebschoolBruno Orlandi
 
Aula 2 - Curso Git e Github - Webschool
Aula 2 - Curso Git e Github - WebschoolAula 2 - Curso Git e Github - Webschool
Aula 2 - Curso Git e Github - WebschoolBruno Orlandi
 
Minicurso GIT PET Computação
Minicurso GIT PET ComputaçãoMinicurso GIT PET Computação
Minicurso GIT PET ComputaçãoBruno Orlandi
 

Mais de Bruno Orlandi (8)

As sete fases da inovação
As sete fases da inovaçãoAs sete fases da inovação
As sete fases da inovação
 
Aula 6 - Curso Git e Github - Webschool
Aula 6 - Curso Git e Github - WebschoolAula 6 - Curso Git e Github - Webschool
Aula 6 - Curso Git e Github - Webschool
 
Aula 5 - Curso Git e Github - Webschool
Aula 5 - Curso Git e Github - WebschoolAula 5 - Curso Git e Github - Webschool
Aula 5 - Curso Git e Github - Webschool
 
Aula 4 - Curso Git e Github - Webschool
Aula 4 - Curso Git e Github - WebschoolAula 4 - Curso Git e Github - Webschool
Aula 4 - Curso Git e Github - Webschool
 
Aula 3 - Curso Git e Github - Webschool
Aula 3 - Curso Git e Github - WebschoolAula 3 - Curso Git e Github - Webschool
Aula 3 - Curso Git e Github - Webschool
 
Aula 2 - Curso Git e Github - Webschool
Aula 2 - Curso Git e Github - WebschoolAula 2 - Curso Git e Github - Webschool
Aula 2 - Curso Git e Github - Webschool
 
Minicurso GIT PET Computação
Minicurso GIT PET ComputaçãoMinicurso GIT PET Computação
Minicurso GIT PET Computação
 
Web e HTML5
Web e HTML5Web e HTML5
Web e HTML5
 

Git e contribuição para projetos Open Source