>First, it would be good if the installation section for Windows, 2.2.1, mentioned that admin privileges > were required (probably only post-XP?).
I've never tried installing software on Windows as a non-admin. I know that's possible in some special cases with .Net apps, but I've never done it. You aren't talking about right-clicking and choosing Run as administrator..., correct? I don't remember having to do that. Though it's so second nature to everything I do in W7, that I may have done it while on autopilot. >Second, the discussion of Windows explorer integration in 5.2 does not explain much of anything, i.e., >what the specific commands in the context menu do or what the overlay icons mean (the latter I think I >know). >Here, as elsewhere, my biggest uncertainty is whether commands operate on the working/local copy, >the repository, or some combination. What's the difference between forget and remove? If revert files > operates on the working copy (my guess), what are the implications for branching and merging? I looked >around for similar entries in the more fully documented Workbench section 5.4. esp the file context >menus 5.4.10, but didn't find much--it does discuss revert. I don't have the text open yet (still trying to install Thg in Ubuntu). That said, the overlay icons are the green checkboxes and red X's on the files and folders under version control. The green checkbox means that those files and folders match the version of the files in the current tip of the repository. Red X's mean they do not match (and, presumably, that a commit should be performed). The context menu for Tortoise, as with most Explorer context menus, apply to the directory (and files within that directory) where the context menu is invoked. (Is this enough for you to understand whether that would be a local or a remote repository, or do I need to explain why this always implies one? I won't tell you which, here, for fear of contaminating your perception.) Sorry for being obtuse here, but what are your expectations or fears that revert might have on branches and merges? Have you looked at any documentation on version control or Directed Acyclic Graphs (DAGs)? I'm asking you this before I inquire from the author who their target audience is, but I'm assuming they anticipated folks who had some working knowledge of version control. Since you don't know, I'm assuming you don't. Ignoring extensions that can be layered on Mercurial, the core of any version control system is to maintain the history of software change revisions, or changesets (a block of changes in several files). Reverting a file merely means you wish to restore that file to its state from the last commit (changeset). If you specify a revision to revert to, the working copy of the file is restored to the state of that commit (or changeset). If you revert to a previous revision, then do a commit, the newly committed changeset will show a new set of changes that undo all of the changes since the revision to which you reverted. Does that help explain any implications to branches and merges? If not, should I go back and explain exactly what branches and merges are in relation to a changeset? >Also unclear to me are update, synchronize and recovery. Update (with "Discard local changes") amounts to a revert on a whole changeset (as opposed to a single file). It also moves the tip or working changeset to the specified revision. (If you don't specify "Discard local changes", then it merely moves the working changeset or tip to the specified revision, while your working directory contains all of the current code. If you are up to date on revision 5, revert to version 3, then edit the code and do a commit, it will create a second child to revision 3, in essence, creating a branch there. That commit will include all of the changes in 4 and 5 and the changes you just made. Ugly.) Stay away from the recover command. It's only used when you synchronize and you have a network failure that prevents the synch from completing. (Or other, similar failure.) Synchronize is unique to distributed version control systems, as opposed to the more classical approach. In a classical approach, there is a canonical server that hosts the version control system. Everyone pushes their changes to that unique location. If you don't have access to the server, you cannot commit. When you commit a revision (and create a new changeset), everyone sees it immediately. The server is the shared resource. In DVCS, every developer has their own server with their own unique history of changes (in the form of changesets or revisions). When two developers cooperate, they must at some point synchronize their work. This usually consists of pulling, merging, verifying operability (locally), committing (locally) changes required to maintain operability, then a final push. Pulling and pushing are synchronizing activities that take place between two repositories that share a common history of origin. (You can't really synchronize a Paint.Net Software repository with the DWPF Nuclear Remediation Control Software repository because they don't have a shared starting point.) Here, the changesets are the shared resource which must be synchronized. This may be explained elsewhere, but in case it isn't, this "everybody has their own copy" philosophy allows developers to commit (locally) changes that may not yet be able to compile. "Commit often!" is the mantra of DVCS. You don't have to synch until you have a fully functional version, but you don't want to risk losing your work (or your change history). With a DVCS, you can eat your cake and have it, too. If you do this on a classical VCS, mobs will line up outside your cubical with pitchforks and torches. >5.4 is generally much better, but does not always explain things, e.g., >5.4.1 Workbench menus just lists the menus. I think most of the items are explained further down in the > context of toolbars. >Having this stuff documented in the manual would be nice; some kind of tool tip might be even more >useful. I agree, but I'm only focusing on the documentation here. I believe I can add a small blurb in the docs that (briefly) describe the menus. If nothing else, we should be able to say that they're demonstrated or explained below. ------------------------------------------------------------------------------ Got visibility? Most devs has no idea what their production app looks like. Find out how fast your code is with AppDynamics Lite. http://ad.doubleclick.net/clk;262219671;13503038;y? http://info.appdynamics.com/FreeJavaPerformanceDownload.html _______________________________________________ Tortoisehg-discuss mailing list [email protected] https://lists.sourceforge.net/lists/listinfo/tortoisehg-discuss

