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
Git com o pé direito
Search
Rodrigo Machado
August 30, 2014
Programming
1
120
Git com o pé direito
Palestra sobre git no FrontInterior 2014
Rodrigo Machado
August 30, 2014
Tweet
Share
More Decks by Rodrigo Machado
See All by Rodrigo Machado
Integração / Entrega Contínua
rcmachado
0
80
De Objective-C para Swift: Bibliotecas
rcmachado
0
110
Automação com Fabric
rcmachado
1
140
Other Decks in Programming
See All in Programming
大規模アプリのDIフレームワーク刷新戦略 ~過去最大規模の並行開発を止めずにアプリ全体に導入するまで~
mot_techtalk
1
470
CSC509 Lecture 06
javiergs
PRO
0
260
デミカツ切り抜きで面倒くさいことはPythonにやらせよう
aokswork3
0
250
overlayPreferenceValue で実現する ピュア SwiftUI な AdMob ネイティブ広告
uhucream
0
190
The Past, Present, and Future of Enterprise Java
ivargrimstad
0
300
その面倒な作業、「Dart」にやらせませんか? Flutter開発者のための業務効率化
yordgenome03
1
130
バッチ処理を「状態の記録」から「事実の記録」へ
panda728
PRO
0
170
iOSエンジニア向けの英語学習アプリを作る!
yukawashouhei
0
200
CSC305 Lecture 08
javiergs
PRO
0
250
Claude CodeによるAI駆動開発の実践 〜そこから見えてきたこれからのプログラミング〜
iriikeita
0
310
テーブル定義書の構造化抽出して、生成AIでDWH分析を試してみた / devio2025tokyo
kasacchiful
0
200
monorepo の Go テストをはやくした〜い!~最小の依存解決への道のり~ / faster-testing-of-monorepos
convto
2
510
Featured
See All Featured
Side Projects
sachag
455
43k
RailsConf & Balkan Ruby 2019: The Past, Present, and Future of Rails at GitHub
eileencodes
140
34k
How To Stay Up To Date on Web Technology
chriscoyier
791
250k
CSS Pre-Processors: Stylus, Less & Sass
bermonpainter
359
30k
Producing Creativity
orderedlist
PRO
347
40k
Building a Modern Day E-commerce SEO Strategy
aleyda
44
7.8k
Into the Great Unknown - MozCon
thekraken
40
2.1k
Navigating Team Friction
lara
190
15k
Rails Girls Zürich Keynote
gr2m
95
14k
RailsConf 2023
tenderlove
30
1.3k
Visualizing Your Data: Incorporating Mongo into Loggly Infrastructure
mongodb
48
9.7k
Creating an realtime collaboration tool: Agile Flush - .NET Oxford
marcduiker
34
2.3k
Transcript
Git com o pé direito Ou como parar de ter
10+ cópias do mesmo projeto espalhadas pelo computador
Sobre mim Desenvolvedor sênior "full stack” no Queremos! / WeDemand
PHP, Python, MySQL, MongoDB, AWS ~ 10 anos de estrada
Sobre o git
História Linus Torvalds (criador do Linux) em 2005 Criado para
substituir um software proprietário (BitKeeper) Curiosidade: o linux tem ~6000 desenvolvedores - então o git é robusto!
Atenção! !=
Esse é o git
Vantagens Permite que você trabalhe numa funcionalidade nova sem quebrar
o que já está pronto Essencial se existe mais de 1 pessoa trabalhando no projeto
Utilizado na maioria das empresas de desenvolvimento
Começando com o git Onde colocar meu repositório?
GitHub https://github.com/
BitBucket https://bitbucket.org/
Comandos que importam
Obtendo o repositório
O que tem pra comitar?
O que estou comitando?
Adicionando arquivos
Commit
Baixar (e aplicar) commits
Mandar commits pro servidor
– http://git-scm.com/book/en/Git-Branching-What-a-Branch-Is “Um branch no Git é simplesmente um ponteiro
para um dos commits do repositório.” Branch
Criar um branch
Quais são os meus branches?
Mudar para um branch
git log
Avançando um pouco
git alias $ git alias st status
git alias
git alias $ git alias glog "log —all --pretty='format: %d
%Cgreen%h%Creset %an - %s' --graph"
git alias
Merge vs Rebase
Merge vs Rebase Merge • Mais simples • Histórico "poluído"
• O git decide como juntar seu código Rebase • Maior controle na resolução de conflitos • Histórico mais “limpo” • Mais complexo
Text http://stackoverflow.com/questions/11671668/combine-several- commits-and-merging-as-one-commit-into-other-branches
Text http://kevin.deldycke.com/2011/02/moving-git- subtree-repository/
git reflog Armazena todas as ações executadas: Commits Novos branches
Merges etc.
git reflog
git reflog
GUIs Simplificando a vida
GitHub GUI https://mac.github.com/ https://windows.github.com
Tower http://www.git-tower.com
Source Tree http://www.sourcetreeapp.com
Dicas
Commits
Text http://xkcd.com/1296/
Cuidado com ****** Evite commitar “segredos” no repositório Segredos: senhas,
chaves de acesso, etc.
Workflow da equipe Defina um workflow da equipe (ex. merge
vs rebase) Padronização de nomes de branches (ex. issue #) Para equipes maiores: git-flow http://nvie.com/posts/a- successful-git-branching-model/ Cuidado: não crie regras demais :)
Text Branches são leves http://i.imgur.com/seDixfY.jpg
Master "entregável" Mantenha o master “entregável" Evite commitar coisas pela
metade
Text Pratique! https://try.github.com/
Links http://nvie.com/posts/a-successful-git-branching- model/ https://marklodato.github.io/visual-git-guide/index- en.html https://try.github.com/ http://www.git-tower.com/blog/git-cheat-sheet-detail- pt/
Obrigado! @rcmachado rcmachado https://speakerdeck.com/rcmachado