Introduction● Mercurial (Hg) is revision control system● Kiln is Mercurial repositories server● TortiesHg is a Mercurial client* Refer to Working with Kiln and Mercurial fordetailed kickstart guide.
Installation & Setup● FogBugz & Kiln share the same credentials● Download the Kiln Client for Windows● Set merge tools - Beyond Compare 3 Pro● Define your username - Your Name<firstname.lastname@example.org>● Define post pull update to work on the latestchange in branch● Create ignore file. Use defaults● I suggest to work with Workbench only, butyou can try VisualHg VS add-on.
Concepts & Terminology● You are working on a local repository.● Push changes to server for others● Pull changes from server to get updated● Commits are always local.● Write "case #" in comment on commit to setlink with FogBugz.● Update is used to set a local repository toanother branch or changeset in order towork on it.● "default" is the main branch (like trunk).
Branches & Merges● You can create a new branch in Commitscreen.● You can make changes and then Committhem into a new branch by creating it.● Switching from one branch to another isdone with Update command.● Merge one branch to another by Updatingto the branch you want to merge the otherbranch into and then merge the otherbranch.● If there was a conflict during merge, you will
Going back in time options● Rollback/Undo - to rollback a local changesafter a local Commit.● Revert - to revert back to original changesetand forget the local changes before Commit.● Backout - to revert a changeset afterCommit and Push● Strip changeset - strips a changesetcompletely with no audit. Can be done onKiln server only.
Working with number of branches● Shelve when you dont want to commitchanges, dont want to lose it and prefer tosave it.● Clone the same repository number of timesinto different folders and update each torelevant branch.● Sync feature branch with changes in"default" (trunk) branch by doing a simpleMerge, but in opposite direction.