Re: [viewvc-users] Migration from CVS to Mercurial
Paul Boddie <[email protected]>
| Newsgroups | gmane.comp.version-control.cvs.viewcvs.user |
|---|---|
| Message-ID | <[email protected]> |
C. Michael Pilato wrote: > My understanding is that at least with Mercurial, > there's already a Python interface to work with, which I would expect *has* > to be of some help. A simple, perhaps naive approach would need only to > implement 10-15 interfaces, answering questions about item types and > directory listings, revision log info, and so on. But honestly, I have no > estimate for how much work even that would be. > I'm using ViewVC for a CVS deployment, but have myself moved to Mercurial a while ago. As a result, I've been using hgweb (the built-in Web interface for Mercurial) and I find it very usable, especially in more recent versions with the built-in graph support. For example (the CPython project): http://hg.python.org/cpython/graph/7563f10275a2 Or, with some SVG-related customisations (which need a modern browser) showing a personal project: http://hgweb.boddie.org.uk/EventAggregator/graph ViewVC and hgweb differ somewhat in style, probably because of the different structure of information you get in systems like Mercurial, with a more obvious focus on repository-wide changes in hgweb. I also think that hgweb benefits from usability experiences with systems like ViewVC, so that the number of links to follow to get to a piece of information can be reduced in various common cases. Disadvantages with hgweb include the fairly plain styling of diffs and the lack of syntax highlighting. I imagine that these are topics for Google Summer of Code improvements, but I don't think that adding them would be that difficult. > If I had enough free time to learn Mercurial's concepts and put such an > integration into place myself I'd be keen on doing so, but that's a > conditional that returns FALSE for me pretty me universally these days. > I think I probably considered adding Mercurial support to ViewVC in the beginning, but hgweb is fairly easy to style: http://mercurial.selenic.com/wiki/Theming There are some drawbacks with the templating which probably don't exist in the ViewVC templating system, but it's quite straightforward to customise to a particular look and feel. I don't really have any preference for the usual styling of ViewVC, but I've not tried to re-style it either. On the topic of Mercurial concepts in general, I've tried to improve the Mercurial Wiki documentation with respect to CVS-oriented usage and for those with a CVS-like background: http://mercurial.selenic.com/wiki/CvsLikePractice The things to be most aware of are... * Distributed means having your own copy of the whole repository history (which doesn't change anything from a ViewVC perspective, of course). * Work done locally need not be shared until you are ready to do so. * Operations are repository-wide, not file-oriented, so upon sharing changes and being warned about other people's commits involving different files (creating "new remote heads") may seem like a nuisance, but it makes sense from a repository-wide perspective (the state of the entire repository has changed in diverging ways). But from a ViewVC perspective, where you have code ploughing through the history and building Web pages, there may be fewer differences than one might imagine. Paul ------------------------------------------------------ http://viewvc.tigris.org/ds/viewMessage.do?dsForumId=4255&dsMessageId=2719766 To unsubscribe from this discussion, e-mail: [[email protected]].