Академический Документы
Профессиональный Документы
Культура Документы
Elliott Hoffman
June 12, 2009
Licensed under Creative Commons Attribution-Noncommercial-Share Alike 3.0
What is SVN?
Version control software
Used by many software developers
Free: works on Windows, Linux and Mac
Open source (Apache License)
Use
Information stored in a central location
People can check in/out copies of
information
Revision history is maintained
Can version any type of file
Users decide how to organize their files
SVN for the developer
Keep a record of all your code changes
without having to maintain backup files
Freeze and thaw the state of your code at
any time
Version any non-code files you want
SVN for the team
New branches of code can be created at
will to facilitate simultaneous development
Used in tandem with diff/merge tools
Using SVN – The Repository
Calc & Paint are projects
Each project has a trunk and
branches
Trunk is the “main line” of
development
Branches are offshoots to store
changes so that they do not
affect the trunk’s files
Using SVN - Trunk
Generally contains stable code
Branches are often created from and
merged back into the trunk
The trunk is just another branch to SVN:
it’s just an organizational convention
Using SVN - Branches
Branches are off-shoots from the trunk or
another branch
Branch to make a large code change
without interrupting other development
Branch to keep code versions separate
(e.g. 1.0 vs. 3.0 versions of the same
project)
Merge branches into other branches later
Using SVN - Branches
Questions?