SlideShare ist ein Scribd-Unternehmen logo
1 von 72
Downloaden Sie, um offline zu lesen
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
●
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>
Interfaces Gráficas GUI
●
Pelo terminal se faz tudo.
●
Interfaces gráficas ajudam na visualização e 
auxiliam em algumas tarefas.
●
Recomendadas:
– Egit – Plugin para Eclipse
– Gitg – Para Linux
– SourceTree – Para Windows
●
Não recomendado: Github for Windows
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!
Caso de Exemplo
●
Extensão para  GNOME: Desktop Scroller.
●
Cria uma área de rolagem entre os Desktops.
●
Permite configurar onde a área é ativa.
●
Hoje mantido por outros usuários.
Dúvidas?
Extras
●
.gitignore
●
Git commit ­­ammend
●
Git Stash e Stash Pop
●
Milestones
●
Hooks
●
Github pages
Convite
●
Palestras
●
Minicursos
●
Concursos
●
Prêmios
●
Feira de recrutamento
●
http://semcomp.icmc.usp.br/
●
facebook.com/semcomp
Contato
●
@BrOrlandi
●
brorlandi@gmail.com
●
www.slideshare.net/BrunoOrlandi
Obrigado!
São Carlos - 2014
Obrigado!

Weitere ähnliche Inhalte

Was ist angesagt?

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
 
Scrum e Plataforma Microsoft
Scrum e Plataforma MicrosoftScrum e Plataforma Microsoft
Scrum e Plataforma MicrosoftFernando Ferreira
 
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
 
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
 
Use o git e perca o medo de errar
Use o git e perca o medo de errarUse o git e perca o medo de errar
Use o git e perca o medo de errarBruno Calheira
 
TDC POA 2016 - Robotium + Cucumber + Gradle, misture com spoon e tenha uma ex...
TDC POA 2016 - Robotium + Cucumber + Gradle, misture com spoon e tenha uma ex...TDC POA 2016 - Robotium + Cucumber + Gradle, misture com spoon e tenha uma ex...
TDC POA 2016 - Robotium + Cucumber + Gradle, misture com spoon e tenha uma ex...João Clineu - CTFL, CSM, CSD
 
Produtividade com Spring Roo no Google App Engine
Produtividade com Spring Roo no Google App EngineProdutividade com Spring Roo no Google App Engine
Produtividade com Spring Roo no Google App EngineDr. Spock
 
Desenvolvendo Widgets QML para o KDE Plasma
Desenvolvendo Widgets QML para o KDE PlasmaDesenvolvendo Widgets QML para o KDE Plasma
Desenvolvendo Widgets QML para o KDE PlasmaSandro Andrade
 
Práticas de Agilidade e QA na Comunidade KDE
Práticas de Agilidade e QA na Comunidade KDEPráticas de Agilidade e QA na Comunidade KDE
Práticas de Agilidade e QA na Comunidade KDESandro Andrade
 
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
 
Desenvolvendo Aplicações Android com Qt
Desenvolvendo Aplicações Android com QtDesenvolvendo Aplicações Android com Qt
Desenvolvendo Aplicações Android com QtSandro Andrade
 
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
 
Git e Gitlab para Iniciantes
Git e Gitlab para IniciantesGit e Gitlab para Iniciantes
Git e Gitlab para IniciantesIgorDiniz22
 

Was ist angesagt? (20)

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 e Plataforma Microsoft
Scrum e Plataforma MicrosoftScrum e Plataforma Microsoft
Scrum e Plataforma Microsoft
 
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
 
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
 
Easynvest - DevCamp 2018
Easynvest - DevCamp 2018Easynvest - DevCamp 2018
Easynvest - DevCamp 2018
 
Scrum
ScrumScrum
Scrum
 
Use o git e perca o medo de errar
Use o git e perca o medo de errarUse o git e perca o medo de errar
Use o git e perca o medo de errar
 
TDC POA 2016 - Robotium + Cucumber + Gradle, misture com spoon e tenha uma ex...
TDC POA 2016 - Robotium + Cucumber + Gradle, misture com spoon e tenha uma ex...TDC POA 2016 - Robotium + Cucumber + Gradle, misture com spoon e tenha uma ex...
TDC POA 2016 - Robotium + Cucumber + Gradle, misture com spoon e tenha uma ex...
 
Produtividade com Spring Roo no Google App Engine
Produtividade com Spring Roo no Google App EngineProdutividade com Spring Roo no Google App Engine
Produtividade com Spring Roo no Google App Engine
 
Docker #comofaz
Docker  #comofazDocker  #comofaz
Docker #comofaz
 
Python agil
Python agilPython agil
Python agil
 
Desenvolvendo Widgets QML para o KDE Plasma
Desenvolvendo Widgets QML para o KDE PlasmaDesenvolvendo Widgets QML para o KDE Plasma
Desenvolvendo Widgets QML para o KDE Plasma
 
Práticas de Agilidade e QA na Comunidade KDE
Práticas de Agilidade e QA na Comunidade KDEPráticas de Agilidade e QA na Comunidade KDE
Práticas de Agilidade e QA na Comunidade KDE
 
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
 
O KDE no mundo
O KDE no mundoO KDE no mundo
O KDE no mundo
 
Git alem do basico
Git alem do basicoGit alem do basico
Git alem do basico
 
Desenvolvendo Aplicações Android com Qt
Desenvolvendo Aplicações Android com QtDesenvolvendo Aplicações Android com Qt
Desenvolvendo Aplicações Android com Qt
 
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
 
Linear Engineering
Linear EngineeringLinear Engineering
Linear Engineering
 
Git e Gitlab para Iniciantes
Git e Gitlab para IniciantesGit e Gitlab para Iniciantes
Git e Gitlab para Iniciantes
 

Andere mochten auch

Introducción a git
Introducción a gitIntroducción a git
Introducción a gitKeopx
 
Git Series. Episode 3. Git Flow and Github-Flow
Git Series. Episode 3. Git Flow and Github-FlowGit Series. Episode 3. Git Flow and Github-Flow
Git Series. Episode 3. Git Flow and Github-FlowMikhail Melnik
 
Control de versiones con Git y Github
Control de versiones con Git y GithubControl de versiones con Git y Github
Control de versiones con Git y Githubguest638090
 
Git: un enfoque práctico
Git: un enfoque prácticoGit: un enfoque práctico
Git: un enfoque prácticoPatxi Gortázar
 
Mini-tutorial de git
Mini-tutorial de gitMini-tutorial de git
Mini-tutorial de gitAntonio Ognio
 
El git nuestro de cada dia
El git nuestro de cada diaEl git nuestro de cada dia
El git nuestro de cada diaAlan Descoins
 
Integración contínua con Jenkins
Integración contínua con JenkinsIntegración contínua con Jenkins
Integración contínua con JenkinsCésar Hernández
 
Ic maven jenkins_sonar
Ic maven jenkins_sonarIc maven jenkins_sonar
Ic maven jenkins_sonarRocío Muñoz
 
Using Docker for Testing
Using Docker for TestingUsing Docker for Testing
Using Docker for TestingCarlos Sanchez
 
Java mission control para monitoreo, administración y profilig de aplicacione...
Java mission control para monitoreo, administración y profilig de aplicacione...Java mission control para monitoreo, administración y profilig de aplicacione...
Java mission control para monitoreo, administración y profilig de aplicacione...César Hernández
 
Introducción al uso Git y GitHub para trabajo colaborativo
Introducción al uso Git y GitHub para trabajo colaborativoIntroducción al uso Git y GitHub para trabajo colaborativo
Introducción al uso Git y GitHub para trabajo colaborativoJuan J. Merelo
 

Andere mochten auch (15)

Sendo um GIT master
Sendo um GIT masterSendo um GIT master
Sendo um GIT master
 
Introducción a git
Introducción a gitIntroducción a git
Introducción a git
 
Git Series. Episode 3. Git Flow and Github-Flow
Git Series. Episode 3. Git Flow and Github-FlowGit Series. Episode 3. Git Flow and Github-Flow
Git Series. Episode 3. Git Flow and Github-Flow
 
Git Rebase vs Merge
Git Rebase vs MergeGit Rebase vs Merge
Git Rebase vs Merge
 
Git for the absolute beginners
Git for the absolute beginnersGit for the absolute beginners
Git for the absolute beginners
 
Control de versiones con Git y Github
Control de versiones con Git y GithubControl de versiones con Git y Github
Control de versiones con Git y Github
 
Jenkins, no me rompas los builds!
Jenkins, no me rompas los builds!Jenkins, no me rompas los builds!
Jenkins, no me rompas los builds!
 
Git: un enfoque práctico
Git: un enfoque prácticoGit: un enfoque práctico
Git: un enfoque práctico
 
Mini-tutorial de git
Mini-tutorial de gitMini-tutorial de git
Mini-tutorial de git
 
El git nuestro de cada dia
El git nuestro de cada diaEl git nuestro de cada dia
El git nuestro de cada dia
 
Integración contínua con Jenkins
Integración contínua con JenkinsIntegración contínua con Jenkins
Integración contínua con Jenkins
 
Ic maven jenkins_sonar
Ic maven jenkins_sonarIc maven jenkins_sonar
Ic maven jenkins_sonar
 
Using Docker for Testing
Using Docker for TestingUsing Docker for Testing
Using Docker for Testing
 
Java mission control para monitoreo, administración y profilig de aplicacione...
Java mission control para monitoreo, administración y profilig de aplicacione...Java mission control para monitoreo, administración y profilig de aplicacione...
Java mission control para monitoreo, administración y profilig de aplicacione...
 
Introducción al uso Git y GitHub para trabajo colaborativo
Introducción al uso Git y GitHub para trabajo colaborativoIntroducción al uso Git y GitHub para trabajo colaborativo
Introducción al uso Git y GitHub para trabajo colaborativo
 

Ähnlich wie Git e contribuição para projetos Open Source

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
 
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
 
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
 
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
 
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
 
PDC - Engenharia - Git e Gitorious
PDC - Engenharia - Git e GitoriousPDC - Engenharia - Git e Gitorious
PDC - Engenharia - Git e Gitoriousslides_teltools
 
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
 
V Pylestra - introdução ao python
V Pylestra - introdução ao pythonV Pylestra - introdução ao python
V Pylestra - introdução ao pythonSilvio Roberto
 
[TDC Floripa 2016] Facilitando Concepções de Produtos de TI de maneira colabo...
[TDC Floripa 2016] Facilitando Concepções de Produtos de TI de maneira colabo...[TDC Floripa 2016] Facilitando Concepções de Produtos de TI de maneira colabo...
[TDC Floripa 2016] Facilitando Concepções de Produtos de TI de maneira colabo...Guilherme Motta
 
Tem gente demais mexendo no APP!
Tem gente demais mexendo no APP!Tem gente demais mexendo no APP!
Tem gente demais mexendo no APP!tdc-globalcode
 

Ähnlich wie Git e contribuição para projetos Open Source (20)

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
 
Palestra sobre Git EEDACT2015
Palestra sobre Git EEDACT2015Palestra sobre Git EEDACT2015
Palestra sobre Git EEDACT2015
 
Slide
SlideSlide
Slide
 
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
 
São Paulo MuleSoft Meetups - DevOps
São Paulo MuleSoft Meetups - DevOpsSão Paulo MuleSoft Meetups - DevOps
São Paulo MuleSoft Meetups - DevOps
 
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
 
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 Básico
GIT BásicoGIT Básico
GIT Básico
 
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
 
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 - ...
 
PDC - Engenharia - Git e Gitorious
PDC - Engenharia - Git e GitoriousPDC - Engenharia - Git e Gitorious
PDC - Engenharia - Git e Gitorious
 
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
 
Apresentacao sfd-poa
Apresentacao sfd-poaApresentacao sfd-poa
Apresentacao sfd-poa
 
V Pylestra - introdução ao python
V Pylestra - introdução ao pythonV Pylestra - introdução ao python
V Pylestra - introdução ao python
 
[TDC Floripa 2016] Facilitando Concepções de Produtos de TI de maneira colabo...
[TDC Floripa 2016] Facilitando Concepções de Produtos de TI de maneira colabo...[TDC Floripa 2016] Facilitando Concepções de Produtos de TI de maneira colabo...
[TDC Floripa 2016] Facilitando Concepções de Produtos de TI de maneira colabo...
 
BlingTech - Gitlab
BlingTech - GitlabBlingTech - Gitlab
BlingTech - Gitlab
 
Ferramentas para versionamento Utilizando git
Ferramentas para versionamento Utilizando gitFerramentas para versionamento Utilizando git
Ferramentas para versionamento Utilizando git
 
Tem gente demais mexendo no APP!
Tem gente demais mexendo no APP!Tem gente demais mexendo no APP!
Tem gente demais mexendo no APP!
 

Mehr von 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
 

Mehr von 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