Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
Introdução Ao Controle de Versão Com Git
Search
Sponsored
·
Your Podcast. Everywhere. Effortlessly.
Share. Educate. Inspire. Entertain. You do you. We'll handle the rest.
→
Carlos Schults
September 12, 2018
Programming
0
54
Introdução Ao Controle de Versão Com Git
Slides do workshop de Git ministrado no dia 12 de setembro de 2018, na Unifai em Adamantina - SP.
Carlos Schults
September 12, 2018
Tweet
Share
More Decks by Carlos Schults
See All by Carlos Schults
Healthy Developer: Como Conciliar Sua Carreira na Tecnologia Com Um Estilo de Vida Saudável?
carlosschults
0
50
Aplicação Básica em C# com Banco de Dados - XXII Semana de Informática da Unifai
carlosschults
0
22
Introdução aos testes unitários automatizados com NUnit e C#
carlosschults
0
86
Other Decks in Programming
See All in Programming
AIと一緒にレガシーに向き合ってみた
nyafunta9858
0
250
dchart: charts from deck markup
ajstarks
3
1k
【卒業研究】会話ログ分析によるユーザーごとの関心に応じた話題提案手法
momok47
0
200
そのAIレビュー、レビューしてますか? / Are you reviewing those AI reviews?
rkaga
6
4.6k
Package Management Learnings from Homebrew
mikemcquaid
0
230
IFSによる形状設計/デモシーンの魅力 @ 慶應大学SFC
gam0022
1
310
AWS re:Invent 2025参加 直前 Seattle-Tacoma Airport(SEA)におけるハードウェア紛失インシデントLT
tetutetu214
2
120
ぼくの開発環境2026
yuzneri
0
240
QAフローを最適化し、品質水準を満たしながらリリースまでの期間を最短化する #RSGT2026
shibayu36
2
4.4k
[KNOTS 2026登壇資料]AIで拡張‧交差する プロダクト開発のプロセス および携わるメンバーの役割
hisatake
0
290
CSC307 Lecture 07
javiergs
PRO
1
560
CSC307 Lecture 05
javiergs
PRO
0
500
Featured
See All Featured
The Director’s Chair: Orchestrating AI for Truly Effective Learning
tmiket
1
98
Beyond borders and beyond the search box: How to win the global "messy middle" with AI-driven SEO
davidcarrasco
1
56
Building Better People: How to give real-time feedback that sticks.
wjessup
370
20k
Lessons Learnt from Crawling 1000+ Websites
charlesmeaden
PRO
1
1.1k
How to Ace a Technical Interview
jacobian
281
24k
A brief & incomplete history of UX Design for the World Wide Web: 1989–2019
jct
1
300
The Hidden Cost of Media on the Web [PixelPalooza 2025]
tammyeverts
2
190
Evolving SEO for Evolving Search Engines
ryanjones
0
130
How to Think Like a Performance Engineer
csswizardry
28
2.5k
How Software Deployment tools have changed in the past 20 years
geshan
0
32k
The Cult of Friendly URLs
andyhume
79
6.8k
Future Trends and Review - Lecture 12 - Web Technologies (1019888BNR)
signer
PRO
0
3.2k
Transcript
Introdução ao Controle de Versão com Git @carlosschults
None
carlosschults.net/unifai2018
Git?
Controle de versão?
todo mundo faz controle de versão...
Resumo
Resumo Resumo Final
Resumo Resumo Final Resumo Final 2
Resumo Resumo Final Resumo Final 2 Resumo Final – AGORA
VAI
Versionamento em projetos de software. Por quê?
#1 tornar a colaboração em grupo mais eficiente
#2 prover isolamento
#3 permitir comparações
#4 verificar autoria
#5 verificar histórico
#6 voltar a um ponto seguro
não iremos abordar:
#1 história
#2 instalação
#3 ferramentas visuais
#4 implementação
#5 github e similares
#5 github* e similares
None
#1 criando e configurando o primeiro repositório
git init git config
None
#2 primeiros commits: criando e visualizando
git status git add git commit git log
commitando um novo arquivo demo #1
Remove o arquivo
Remove o arquivo cria o arquivo
Remove o arquivo cria o arquivo echo Hello World >
arquivo1.txt
untracked cria o arquivo
untracked adiciona o arquivo Remove o arquivo cria o arquivo
untracked adiciona o arquivo Remove o arquivo cria o arquivo
git add arquivo1.txt
untracked new file adiciona o arquivo Remove o arquivo cria
o arquivo
untracked new file adiciona o arquivo commit Remove o arquivo
cria o arquivo
untracked new file adiciona o arquivo commit Remove o arquivo
cria o arquivo git commit –m “Primeiro commit”
untracked new file unnmodified adiciona o arquivo commit Remove o
arquivo cria o arquivo
commitando alterações em arquivo existente demo #2
arquivo1.txt
commit unnmodified arquivo1.txt
commit unnmodified arquivo1.txt edita o arquivo
commit unnmodified arquivo1.txt edita o arquivo echo Segunda linha. >>
arquivo1.txt
commit unnmodified arquivo1.txt edita o arquivo modified
commit unnmodified arquivo1.txt edita o arquivo modified adiciona ao stage
commit unnmodified arquivo1.txt edita o arquivo modified adiciona ao stage
git add arquivo1.txt
commit unnmodified arquivo1.txt edita o arquivo modified adiciona ao stage
staged
modified staged edita o arquivo adiciona ao stage commit unnmodified
arquivo1.txt
modified staged edita o arquivo adiciona ao stage commit unnmodified
git commit –m “Adicionei segunda linha” arquivo1.txt
modified staged edita o arquivo adiciona ao stage commit unnmodified
arquivo1.txt
commitando arquivo existente e criando um novo demo #3
#3 trabalhando com branches
git branch git checkout git merge
trabalhando em um novo branch demo #1
C1 C2 C3 master*
git branch teste
C1 C2 C3 teste master*
git checkout teste
C1 C2 C3 master teste*
untracked new file unnmodified adiciona o arquivo commit Remove o
arquivo cria o arquivo
modified staged edita o arquivo adiciona ao stage commit unnmodified
arquivo- exclusivo- branch-teste.txt
C1 master teste* C2 C3 C4 C5
mesclando branches no modo fast-forward demo #2
C1 master teste* C2 C3 C4 C5
git checkout master
C1 master* teste C2 C3 C4 C5
git merge teste
C1 master* teste C2 C3 C4 C5
excluindo um branch demo #3
C1 master* teste C2 C3 C4 C5
git branch –d teste
C1 master* C2 C3 C4 C5
mesclando branches (3-way merge) demo #4
C1 master* C2 C3 C4 C5
git checkout –b novo
C1 master novo* C2 C3 C4 C5
echo asdfg > arquivo-novo.txt
git add . git commit –m “commit no branch novo”
C1 master novo* C2 C3 C4 C5 C6
git checkout master
echo asdfg > arquivo-no- master.txt
git add . git commit –m “commit no branch master”
C1 master* novo C2 C3 C4 C5 C6 C7
git merge novo
C1 C2 C3 C4 C5 C6 C7 C8 novo master*
#4 fazendo comparações
git diff
comparando alterações não commitadas demo #1
comparando dois commits demo #2
comparando dois branches demo #3
#5 verificando autoria
git blame
None
#6 voltando atrás
git checkout git reset git revert
desfazendo alterações no diretório de trabalho com git checkout demo
#1
edita o arquivo unnmodified
unnmodified edita o arquivo echo nova linha. >> arquivo1.txt
edita o arquivo unnmodified modified
edita o arquivo desfaz a alteração unnmodified modified
edita o arquivo desfaz a alteração git checkout –- arquivo1.txt
unnmodified modified
edita o arquivo desfaz a alteração unnmodified modified
removendo arquivos do stage demo #2
arquivo1.txt
commit unnmodified arquivo1.txt
commit unnmodified arquivo1.txt edita o arquivo
commit unnmodified arquivo1.txt edita o arquivo echo whatever >> arquivo1.txt
commit unnmodified arquivo1.txt edita o arquivo modified
commit unnmodified arquivo1.txt edita o arquivo adiciona ao stage modified
modified commit unnmodified arquivo1.txt edita o arquivo adiciona ao stage
git add arquivo1.txt
commit unnmodified arquivo1.txt edita o arquivo adiciona ao stage staged
modified
unnmodified arquivo1.txt edita o arquivo adiciona ao stage staged remove
do stage modified
commit unnmodified arquivo1.txt edita o arquivo adiciona ao stage remove
do stage git reset HEAD arquivo1.txt modified staged
commit unnmodified arquivo1.txt edita o arquivo adiciona ao stage staged
remove do stage modified
revertendo commits demo #3
#7 colaborando com outras pessoas
git clone git remote git branch –r git fetch git
pull
None
@carlosschults