Why BitKeeper

advertisement
Why Bitkeeper
Elliott Wolin
GLUEX Collaboration meeting
20-22 May 2004
SCM History
Two revolutions within the past 27 years
 1st revolution focus switched from

 files
 2nd
 repository
revolution focus switched from
 repository

 workflow and release lifecycles
Note that Bitkeeper is a superset of CVS
Why Move to 3rd Generation SCM
Save Time and Manpower
BK Used by Linux kernel, MySQL, etc.
Free BKL (not GPL!) license acceptable to us.
What is New in 3rd Generation
Multiple, hierarchical repository structure
 Reparenting
 Changesets
 Many other improvements, utilities, etc.
 Full support for “gatekeeper” model
 BK is a full-featured commercial product
 Very active development (unlike CVS)

Who Will Be Affected

Group 1 – casual programmers
Few thousand lines of code or less
 Impact: -0.5 to +2


Group 2 – major developers, integrators
 Tens
of thousands of lines of code or more
 Impact: +2 to +7

Group 3 – managers, librarians, integrators
 Impact:
+10!
For CVS Users
BK
Description
CVS
bk clone
Clone repository locally (once)
cvs checkout
bk new
Add new file to local repository
cvs add
bk edit
Unlock local files for editing
bk ci
Check in local files, incl. comment
 Repeat edit/ci cycle 
bk commit
Commit local files as changeset
 Repeat after add’l edit/ci cycles 
bk push
Push files back to parent repository
cvs commit
bk pull
Update local repository from parent
cvs update
bk status
Summary of local repository status
cvs status
bk diffs
Display file differences
cvs diff
Summary
In midst of 2nd revolution in SCM software
 3rd generation has real advantages for us

Hierarchical repository structure, reparenting,
changesets, supports gatekeeper model, etc.
 Active product development

Minor change, minor benefit for most people
 Major benefits for integrators, librarians,
package managers, etc.
 We should start using BK on new projects now!

References

My earlier technical talk on BK:


Bitkeeper web site: www.bitmover.com
SUN note on SCM strategies: www.jlab.org/Hall-

List of current SCM software:

BK screenshots:


CVS to BK: www.bitkeeper.com/cvs2bk.html
Repository strategy from BK:
D/presentations/Bitkeeper_for_Hall_D.ppt
www.jlab.org/Hall-
D/software/teamware.ps
www.dmoz.org/Computers/Software/Configuration_Management/To
ols
www.bitkeeper.com/Products.BK_Pro.Screen.html
www.bitkeeper.com/Products.BK_Pro.Feature_.html
Additional Notes
 I’ve
used: patchy, sccs, rcs, cms,
cmz, cvs, CM, Teamware, bitkeeper
 Analogy: Fortran  OO
programming
Download