Professional Documents
Culture Documents
Lecture8 Version Control Systems Intro
Lecture8 Version Control Systems Intro
Code
Test
denny :p
Centralized
Distributed
Subversion aside
initial repository creation
+
a few more steps
Commits
hg/svn/git commit
Git has the concept of a staging area which adds better control on the versioning, and gives more freedom while editing, but introduces a two step commit process. hg has a similar extensions called crecord
Revisions
Way to identify a snapshot of the code SVN - 1,2,3,4......1019123.... Git/Hg SHA1 hash eg. a954467190e7ab871433e8571da75e1768b6b583 Special revisions such as HEAD, tip, ORIGIN
BOB
(public)
BOB
(private)
Commit
Pull
Push
Usual workflow
on a nice new day update/pull in changes from others see whats new, resolve any conflicts work on your feature hack hack hack keep committing atomically push to public/central repository asend a pull request if you want blog about cool new feature
Good practices
Commit frequently Commit atomically Put in good commit messages No binary/generated files in the repo Never, never, never, never, never, ever break the build