Mercurial KTD 2007-08-13
From Genunix
outline
- move to hg
- what, why
- SCM evaluation Spring 2006
- gate eventually to be off-SWAN w/ commit access granted to external developers
- tentative timeline
- gate structure/hierarchy (usr/src on os.o, usr/closed on elpaso)
- key differences between Teamware and Mercurial
- no partial-tree bringovers
- performance
- unified history
- no keywords
- version numbers handled differently (use changeset hash, not simple integer, mention non-unique rev #s)
- tags
- hooks/extensions
- access control
- terminology
- repository
- working directory
- changeset
- head, tip
- push/pull
- commit
- scenario 1: simple bug fix
- say something about ~/.hgrc?
- create private clone
- make changes (no explicit "sccs edit")
- review changes ("hg status", "hg diff", "hg outgoing", making webrev)
- hg commit
- hg outgoing [I assume this is needed for the RTI]
- RTI
- hg push
- delete workspace
- scenario 2: resynching with parent
- hg pull, hg update
- merging, conflict resolution
- delta squish
- scenario 3: moving an existing Teamware-based workspace to Mercurial
- scenario 4: finding when a change was introduced
- hg annotate
- hg log
- note default is to only show first line of description
- hg bisect?
- scenario 5: adding/removing files
- hg add, hg remove
- hg status
- hg log (what add/remove looks like after the fact)
- scenario 6: moving a directory
- hg rename
- actually moves files
- move = copy+delete
- content changes in parent
- hg log (how to follow renames/copies)
- rename conflicts
- other mappings from Teamware -> Mercurial (relatively common operations not covered in the scenarios)
- "workspace undo" -> "hg rollback"
- "wx backup" -> ?
- "sccs get -p -r" -> "hg cat -r"
- other cdm commands?
- anything else?
- other useful commands
- incoming
- import/export
- backout
- bundle
- grep
- revert
- tag, tags
- pointers to additional information
- hg help
- URL to opensolaris.org page w/ pointers to Mercurial page, our cheat sheet, hg book, etc.