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: The fast version control system
Search
Gustavo Barbosa
August 01, 2012
Programming
250
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
Git: The fast version control system
A talk about git given to my colleagues at Quatix.
Gustavo Barbosa
August 01, 2012
More Decks by Gustavo Barbosa
See All by Gustavo Barbosa
Arquitetura de Apps em Cenários Offline
barbosa
2
370
Diet View Controllers
barbosa
0
230
CocoaPods: The dependency manager for Objective-C projects
barbosa
0
65
Parse
barbosa
0
140
Introduction to Object
barbosa
0
74
git-flow: a successful branching model
barbosa
4
100
Clean Code
barbosa
0
140
Other Decks in Programming
See All in Programming
LLMによるContent Moderationの本番運用の裏側と品質担保への挑戦
suikabar
2
650
net-httpのHTTP/2対応について
naruse
0
480
Hunting Vulnerabilities in Symfony with LLMs
vinceamstoutz
0
540
JavaDoc 再入門
nagise
1
350
Oxcを導入して開発体験が向上した話
yug1224
4
310
並列実装の現場、2ヶ月間実務でAIを使い倒したAIもPCも私も限界が近い
ming_ayami
0
130
キャリア迷子上等 ─ "ない道"は自分で作ればいい
16bitidol
3
2.1k
New "Type" system on PicoRuby
pocke
1
920
Even G2とAWSで推しのエージェントを召喚しよう!
har1101
1
110
Dataformのリポジトリを立ち上げるときにまずやること / dataform-day0-2026
snhryt
0
160
TSKaigi Night Talks 2026_TypeScriptでサプライチェーンの整合性を型に閉じ込める
geekplus_tech
0
350
Vue × Nuxt × Oxc どこまで使える?実運用の現在地
andpad
0
250
Featured
See All Featured
WENDY [Excerpt]
tessaabrams
11
38k
Future Trends and Review - Lecture 12 - Web Technologies (1019888BNR)
signer
PRO
0
3.6k
Groundhog Day: Seeking Process in Gaming for Health
codingconduct
0
210
Design in an AI World
tapps
1
240
Odyssey Design
rkendrick25
PRO
2
700
The Mindset for Success: Future Career Progression
greggifford
PRO
0
360
Efficient Content Optimization with Google Search Console & Apps Script
katarinadahlin
PRO
1
620
StorybookのUI Testing Handbookを読んだ
zakiyama
31
6.8k
Become a Pro
speakerdeck
PRO
31
6k
Effective software design: The role of men in debugging patriarchy in IT @ Voxxed Days AMS
baasie
0
410
Primal Persuasion: How to Engage the Brain for Learning That Lasts
tmiket
0
370
What Being in a Rock Band Can Teach Us About Real World SEO
427marketing
0
250
Transcript
git the fast version control system
pull pull pull pull pull pull push push push
getting and creating projects
config configuring your git environment
$ git config --global user.name “Your Name” $ git config
--global user.email “
[email protected]
”
$ git config --global alias.st status $ git config --global
alias.ci commit $ git config --global alias.co checkout $ git config --global alias.br branch
$ git config --global color.ui auto
$ git config --global apply.whitespace nowarn
$ git config --global core.editor “mate -w”
~/.gitconfig
init initializes a directory as a git repository
None
None
None
.! |-- COMMIT_EDITMSG! |-- FETCH_HEAD! |-- HEAD! |-- ORIG_HEAD! |--
branches! |-- config! |-- description! |-- hooks! | |-- applypatch-msg! | |-- commit-msg! | |-- post-commit! | |-- post-receive! | |-- post-update! | |-- pre-applypatch! | |-- pre-commit! | |-- pre-rebase! | |-- prepare-commit-msg! | `-- update! |-- index! |-- info! | `-- exclude! |-- logs! | |-- HEAD! | `-- refs! |-- objects! `-- refs! |-- heads! |-- remotes! |-- stash! `-- tags
clone copy a git repository
None
None
basic snapshotting
add adds file contents to the staging area
None
None
None
None
status view the status of your files in the working
directory and staging area
None
None
diff shows diff of what is staged and what is
modified but unstaged
None
None
commit records a snapshot of the staging area
None
None
$ git commit -m ‘Fix commit msg’ --amend
reset
None
$ git reset --hard
$ git clean -df clean.requireForce defaults to true
rm remove files from the staging area
None
None
! mv rename files in the staging area
None
None
! stash saving temporarily local changes
None
None
branching and merging
branch list, create and manage working contexts
None
None
None
None
None
checkout
$ git checkout <branch> $ git checkout <tag> $ git
checkout <commit> $ git checkout <file>
merge merge a branch context into your current branch
None
None
None
None
None
log show commit history of a branch
None
None
None
None
None
None
None
tag tag a point in history as important
None
None
None
None
sharing and updating projects
remote list, add and delete remote repository aliases
None
None
fetch, pull
$ git fetch <repo> ! $ git fetch --all Download
objects and refs from another repository
$ git pull <repo> <branch>
push
$ git push <repo> <branch>
$ git push <repo> :<branch>
patch
$ git format-patch master --stdout > fix_bug.patch
None
$ git diff HEAD~1 > fix_bug.patch $ git apply fix_bug.patch
rebase
merge vs rebase
merge rebase
reordering commits
$ git rebase -i HEAD~3
None
$ git pull --rebase
$ git config branch.master.rebase true $ git config branch.branch3.rebase true
$ git config branch.autosetuprebase always ! $ git pull --no-rebase
None
None
$ git rebase --continue $ git rebase --abort
inspection and comparison
log
None
None
None
None
$ git rev-list
diff
None
None
None
None
None
None
None
git the fast version control system • http:/ /git-scm.com/ •
http:/ /gitready.com/ • http:/ /gitref.org/ • http:/ /github.com/ • http:/ /bitbucket.org/ • http:/ /progit.org/ • http:/ /stackoverflow.com/ • http:/ /www.arthurkoziel.com/2008/05/02/git-configuration/ • http:/ /www.iconfinder.com/