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 for SVN users, Tech talk week @ outbrain
Search
Ran Tavory
September 07, 2014
Programming
200
2
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
Git for SVN users, Tech talk week @ outbrain
Ran Tavory
September 07, 2014
More Decks by Ran Tavory
See All by Ran Tavory
go-grpc-channelz: a Go based UI for gRPC's channelz
rantav
0
660
Code Review (Navy Hackathon)
rantav
0
120
Infrastructure Testing Using Kubernetes And Golang
rantav
0
120
Infrastructure testing using Kubernetes
rantav
0
600
Interview Workshop - Technical Questions
rantav
0
380
Code Review Best Practices
rantav
0
130
Code Review @ AppsFlyer
rantav
0
110
GraphQL at Yodas
rantav
2
190
Git for champs
rantav
0
180
Other Decks in Programming
See All in Programming
過去最大のMCPアップデート! 2026-07-28 RC版の謎に迫る
licux
6
210
Javaの型とAI時代に型が大事な理由 / java types and type in AI era
kishida
2
120
Spring Security 実践 ─ GraphQL APIで実務に役立つ 認証・認可 を学ぶ
wagyu
0
210
セキュリティの専門家じゃなくてもできる。「セキュリティ意識」をアップデートして サプライチェーン攻撃への耐性を高めよう。
tk3fftk
5
690
AI駆動開発で崩れていくコードベースを立て直す
kyoko_nr_nr
1
450
Oxcを導入して開発体験が向上した話
yug1224
4
300
フロントエンドとバックエンドで「1文字」を揃えよう
youkidearitai
PRO
0
240
さぁV100、メモリをお食べ・・・
nilpe
0
130
Technical Debt: Understanding it Rightly, Engaging it Rightly #LaravelLiveJP
shogogg
0
210
Swiftのレキシカルスコープ管理
kntkymt
0
220
並列実装の現場、2ヶ月間実務でAIを使い倒したAIもPCも私も限界が近い
ming_ayami
0
120
RTSPクライアントを自作してみた話
simotin13
0
520
Featured
See All Featured
Bioeconomy Workshop: Dr. Julius Ecuru, Opportunities for a Bioeconomy in West Africa
akademiya2063
PRO
1
140
Sharpening the Axe: The Primacy of Toolmaking
bcantrill
46
2.9k
Build your cross-platform service in a week with App Engine
jlugia
234
18k
Leveraging LLMs for student feedback in introductory data science courses - posit::conf(2025)
minecr
1
280
WENDY [Excerpt]
tessaabrams
11
38k
A designer walks into a library…
pauljervisheath
211
24k
Have SEOs Ruined the Internet? - User Awareness of SEO in 2025
akashhashmi
0
370
The Curious Case for Waylosing
cassininazir
1
380
Future Trends and Review - Lecture 12 - Web Technologies (1019888BNR)
signer
PRO
0
3.6k
Six Lessons from altMBA
skipperchong
29
4.3k
The Director’s Chair: Orchestrating AI for Truly Effective Learning
tmiket
1
190
Mobile First: as difficult as doing things right
swwweet
225
10k
Transcript
Git Introduction For Subversion Users Ran Tavory Attributed to Totango
Who am I • A Developer, of course… • Migrated
two teams from SVN to Git • Gormim
None
Why git?
Why Git? • IT IS BETTER. There’s a site for
that.
Git is a File System
All (most) Operations are Local and Fast! • Commit •
Log (view history) • Diff • ...
Git is Distributed
Git is Fast
Lightweight (and local) Branching
Data Integrity
Staging Area
Stash Area
None
Setup
Git Setup $ brew install git! $ git config --global
user.name “Ran Tavory”! $ git config --global user.email “
[email protected]
” https://gist.github.com/rantav/ 5d6fb14057f062ecbc70
GitHub Setup https://help.github.com/articles/ set-up-git
Clone the Repo $git clone https://github.com/ rantav/devdev.git
The Basics
git status
git add
git diff
git diff More here: http://www.gitguys.com/topics/git-diff/
git commit
git commit --amend
git checkout
git rm
git mv
git log
git log -p
git log --word-diff
git log --stat
git log hacking
git remote
git pull
To rebase or not to rebase? • Prefer rebase •
this keeps the commit log cleaner •git pl! • Sometimes an actual merge is needed • So don’t rebase • For example, when merging branches
git push
SVN Parallels
Git for SVN
Git for SVN
Git for SVN
Git Lifecycle
Git Lifecycle
The Staging Area (AKA The Index)
Branching
Text http://pcottle.github.io/learnGitBranching/?demo A cool demo
Branching
Branching
Branching - Merging (fast forward)
Branching - Deleting
Branching cont
Branching - Merging (3 way merge)
Branching - Management
Branching - Remote
Branching - Remote
Branching - Remote
Branching - Remote git pull == git fetch && git
merge
Branching - Pushing Requires tracking
Deleting Remote Branches
Pull Requests
Creating a Pull Request 1 2 3 4
Reviewing a Pull Request
Merging Pull Request Online
Merging Pull Requests Offline •Resolve Conflicts •Test •Improve
Deleting Branch After PR Merge
Git Flow
None
1. Create a Branch git co -b bug-157 Branch Naming:
bug-xxx! feature-yyy! wip-zzz
2. Add Commits Commit messages are super important!!!
3. Open a Pull Request Make sure you assign a
reviewer!
4. Discuss AKA Code Review Continue to commit and push.
This will be reflected
5. Merge Merge means: It’s good for production. master is
always deployable
Pull Request Demo
Code Review
Code Review
Protips
Protip: How to transition your team from svn to git
1. Use git-svn, or Svn2git 2. Start using git “as svn” eg no branches 3. Start using branches and pull requests (if github) 4. Personal opinion: Use only CLI tools
Protip: git rebase -i
Protip: zsh integration
Protip: git stash
Extra
Conflicts
Conflicts Edit Collision # Edit file and then $ git
add! $ git commit
Conflicts Removed File
Conflicts Removed File - Keep
Conflicts Removed File - Remove
Conflicts Git Mergtool • Not covered here... • http://git-scm.com/docs/git-mergetool
Conflicts While Rebasing
Learning More
Refs http://git-scm.com/about http://thkoch2001.github.io/whygitisbetter/ http://www.slideshare.net/manishchaks/subversion- to-git-migration http://www.git-tower.com/blog/git-for-subversion- users-cheat-sheet-detail/ http://git.or.cz/course/svn.html (or: where
did I steal from?)
Refs https://help.github.com/articles/resolving-a-merge-conflict- from-the-command-line http://pcottle.github.io/learnGitBranching/ http://jeffkreeftmeijer.com/2010/the-magical-and-not- harmful-rebase/ https://help.github.com/articles/using-pull-requests https://help.github.com/articles/creating-a-pull-request http://en.wikipedia.org/wiki/ Coupling_(computer_programming)