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
55
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
52
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
88
Other Decks in Programming
See All in Programming
Claude Codeログ基盤の構築
giginet
PRO
7
3.5k
Ruby and LLM Ecosystem 2nd
koic
1
1.2k
安いハードウェアでVulkan
fadis
0
690
new(1.26) ← これすき / kamakura.go #8
utgwkk
0
2.6k
PHPのバージョンアップ時にも役立ったAST(2026年版)
matsuo_atsushi
0
210
どんと来い、データベース信頼性エンジニアリング / Introduction to DBRE
nnaka2992
1
320
Goの型安全性で実現する複数プロダクトの権限管理
ishikawa_pro
2
500
モダンOBSプラグイン開発
umireon
0
170
Cyrius ーLinux非依存にコンテナをネイティブ実行する専用OSー
n4mlz
0
230
技術検証結果の整理と解析をAIに任せよう!
keisukeikeda
0
130
それはエンジニアリングの糧である:AI開発のためにAIのOSSを開発する現場より / It serves as fuel for engineering: insights from the field of developing open-source AI for AI development.
nrslib
1
430
SourceGeneratorのマーカー属性問題について
htkym
0
210
Featured
See All Featured
New Earth Scene 8
popppiees
1
1.8k
The Web Performance Landscape in 2024 [PerfNow 2024]
tammyeverts
12
1.1k
The Director’s Chair: Orchestrating AI for Truly Effective Learning
tmiket
1
130
The Power of CSS Pseudo Elements
geoffreycrofte
82
6.2k
実際に使うSQLの書き方 徹底解説 / pgcon21j-tutorial
soudai
PRO
199
73k
The Hidden Cost of Media on the Web [PixelPalooza 2025]
tammyeverts
2
250
What Being in a Rock Band Can Teach Us About Real World SEO
427marketing
0
200
The State of eCommerce SEO: How to Win in Today's Products SERPs - #SEOweek
aleyda
2
9.9k
brightonSEO & MeasureFest 2025 - Christian Goodrich - Winning strategies for Black Friday CRO & PPC
cargoodrich
3
130
Mind Mapping
helmedeiros
PRO
1
130
Stewardship and Sustainability of Urban and Community Forests
pwiseman
0
150
The AI Revolution Will Not Be Monopolized: How open-source beats economies of scale, even for LLMs
inesmontani
PRO
3
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