monotone-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Monotone-devel] Comments on monotone


From: Johannes Winkelmann
Subject: [Monotone-devel] Comments on monotone
Date: Mon, 17 May 2004 20:18:01 +0200
User-agent: Mutt/1.4.2i

Hi there,

I've been using monotone for a few projects now and it rocks! I have 
started to write a document with things which were not perfectly clear
to me. I would assume that some of these issues are probably of interest
for others (especially people new to monotone and distributed
development with it) as well, and therefore post it here for discussion. 

Note that I'm very happy with monotone so far and those are just some
notes I took; feel free to ignore any of them if they seem irrelevant
:-). Please also ask if something is not clear.


Comments on Monotone
====================

1 Keys

* Should I use one key per project or global one (a single key for all
  projects)?

  * If global, take a note in the docs that genkey is 
    only needed at first

  * Where do I keep a global key? How do I access it 
    from a remote PC (e.g. password protected area on 
    web page); -> strategies?

2 Branches

* Explain branch naming (is net.venge.monotone meant 
  for the developer working on venge.net or the project 
  hosted at venge.net?)

* If I start working on a project (e.g. 
  monotone/net.venge.monotone), should I start a new 
  branch or commit to the existing one?

  a) If I commit to the existing one, it would be nice 
     if pull could "commit" to a different local branch, 
     e.g. pull branchA and commit to branchB; this way, 
     I can pull someone's branch without messing with my 
     precious branch :-)

  b) For a group of people working on a project hosted 
     at example.net, should they

     1. use a local branch (net.example.$DEVELOPER), 
        merge to net.example, and push net.example,

     2. work all on net.example

* For a public development branch, is it possible to 
  enforce merged heads (lua hook)? This would ensure a 
  single access point for people not familiar with the 
  developers and/or wouldn't want to care which head 
  they should check out. Consider the following 
  example: net.example.program, 
  net.example.program.testing where the later is a 
  testing branch for public testing (by non 
  developers). Note that this "must be merged" lua thing 
  is only for monotone running on the central 
  development server, not the local copy. Of course, 
  this could also be a policy of the development team, 
  but enforcing it would be much more sane IMHO.


3 Functionality I was somewhat missing

* getting (downloading) the latest version (any 
  arbitrary version?) of something ("CVS snapshot"), not 
  the whole repository (this is actually nothing I needed so far, but
  thought this would help once I set up a public repository).

* How can I get someones changes into my DB, check 
  them, and get rid of them (pull/review/drop cycle)?

* "pull" in a working directory could also guess the 
  branch if omitted

Thanks for a great tool.
Best regards, Johannes
-- 
Johannes Winkelmann              mailto:address@hidden
Bern, Switzerland                http://jw.tks6.net




reply via email to

[Prev in Thread] Current Thread [Next in Thread]