Nathaniel Smith wrote:
On Sun, Oct 29, 2006 at 12:14:37AM -0700, Graydon Hoare wrote:
Nathaniel Smith wrote:
Check out git-cvsserver.pl, which exposes a read/write (!) interface
to a git repo through the pserver protocol...
It's not so horrible as it sounds because you get to use the sane,
non-CVS model internally; the semantics are reasonably
straightforward. The painful part is implementing pserver, which is a
protocol defined more by the quirky implementations you must
interoperate with than by a solid spec.
You know, it's sort of sick but this could kill two birds with one
stone. If we make a "--bind-cvs-pserver" option flag for "mtn serve"
that multiplexes a pserver command interpreter into the usual sync
stream, we'd have a cvs interoperability story *and* the ability to
provide partial checkouts ("just use cvs").
This was, err, actually one of the vague motivations spurring me to
think about Chryn -- just because trying to implement multiplexing by
hand is hard enough, never mind trying to deal with two ports and
protocols at the same time :-). But yeah, it would be an awesome
(albeit, well... tasteless) ability to have.
boost::asio (http://asio.sf.net to be included in the next version,
probably coming out in may) handles this quite well.
--
Matthew A. Nicholson
matt-land.com
_______________________________________________
Monotone-devel mailing list
Monotone-devel@nongnu.org
http://lists.nongnu.org/mailman/listinfo/monotone-devel