all messages for Emacs-related lists mirrored at yhetil.org
 help / color / mirror / code / Atom feed
From: "Stephen J. Turnbull" <stephen@xemacs.org>
To: Uday S Reddy <u.s.reddy@cs.bham.ac.uk>
Cc: emacs-devel@gnu.org, rms@gnu.org, monnier@iro.umontreal.ca
Subject: Re: Locks on the Bzr repository
Date: Mon, 23 Aug 2010 19:31:13 +0900	[thread overview]
Message-ID: <878w3x7h8u.fsf@uwakimon.sk.tsukuba.ac.jp> (raw)
In-Reply-To: <19570.10774.921000.853692@gargle.gargle.HOWL>

Uday S Reddy writes:

 > On the other hand, distributed maintenance with a clean management
 > of history necessarily involves rebase.

This is not true in general.  In particular, the workflow suggested in
BzrForEmacsDevs can produce a "clean history"[1] without rebase,
although it may require remerging branches before pushing because of
the race condition.

Other alternatives include the pull workflow (ie, synchronization by
the maintainers -- you can quibble about whether that's "really
distributed", if you like, and I sympathize, but it is an option for a
project), and an automated patch queue as used by the Bazaar project
itself.

 > Bazaar's solution is to provide merge, which lumps each batch of
 > fixes together into a subhistory without concern for any logical
 > coherence among the changes.

That is not a problem of merge.  All VCSes provide merge.  It is a
problem of the workflow and a matter of taste.  Specifically, whether
you care if even single commits (off mainline) are "covered" by a
merge commit (on mainline).  The Bazaar developers consider this a
natural consequence of distributed development, and have adapted the
log command to normally display only the mainline.  (git and Mercurial
have options to do this, or to display only merge commits, which has a
similar effect.)  There remains a small problem of coming up with an
appropriate log message for the merge commit, but in the specific case
of a single commit, you just copy the commit message into the merge
log message.

Some people consider such a history unsightly, and strongly prefer to
rebase.  But this is a matter of taste.

 > In the absence of rebase, the Emacs developers are forced to
 > synchronize with the mainline for each commit they want to do.

This is only true if you insist that every commit (or every commit on
mainline) in the public repo be tested.  But in that case, rebase
doesn't save you any synchronization compared to non-rebase.

There is are at least two alternatives to rebase.  The first is to use
multiple workspaces, one per task, even trivial tasks.  The second is
to use bzr send for each logical changeset, save the bundles to disk,
and then merge them one after another.

If it is acceptable for the mainline to be temporarily untested, then
the developer can test each commit after merging and pushing.  Then of
course they need to fix any problems discovered in a timely fashion.
An alternative is that only the result of the last merge must pass the
tests; then it's reasonable to test before pushing (although not from
"make bootstrap" probably).

 > It would be best if they provide rebase and provide sufficient
 > warning, and leave it to the project managers to use them wisely.

If a project is going to use rebase, git is *strongly* recommended, as
it not only provides rebase, but several other features for creating
"nice" histories such as filter-branch.

Footnotes: 
[1]  AIUI in Emacs practice a "clean history" means that each
conceptual change, whether it is a single typo fix or integration of
a new garbage collector or internal character coding, is represented
by one commit on the mainline.  A large feature like a new garbage
collector might involve many commits on a branch, however.




  reply	other threads:[~2010-08-23 10:31 UTC|newest]

Thread overview: 198+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2010-08-19 15:40 Locks on the Bzr repository Stefan Monnier
2010-08-19 15:52 ` Andreas Schwab
2010-08-19 16:07   ` Jan Djärv
2010-08-19 16:36     ` Andreas Schwab
2010-08-19 20:06       ` Jan Djärv
2010-08-19 21:49         ` Andreas Schwab
2010-08-20  6:22           ` Jan Djärv
2010-08-20  7:40             ` Andreas Schwab
2010-08-20  8:57               ` Eli Zaretskii
2010-08-20  9:13                 ` Andreas Schwab
2010-08-20  9:22                   ` Eli Zaretskii
2010-08-20 11:35                     ` Andreas Schwab
2010-08-20 12:24                       ` Eli Zaretskii
2010-08-20 12:56                         ` Óscar Fuentes
2010-08-20 13:29                         ` Andreas Schwab
2010-08-20 14:43                           ` Eli Zaretskii
2010-08-20 10:15                 ` Stephen J. Turnbull
2010-08-20 11:39                   ` Andreas Schwab
2010-08-20 12:42                     ` Stephen J. Turnbull
2010-08-20 12:23                   ` Eli Zaretskii
2010-08-20 12:52                     ` Óscar Fuentes
2010-08-20 13:33                     ` Andreas Schwab
2010-08-20 14:46                       ` Eli Zaretskii
2010-08-20 15:31                         ` Andreas Schwab
2010-08-20 13:44                     ` Stephen J. Turnbull
2010-08-20 15:19                       ` Eli Zaretskii
2010-08-20 22:41                         ` Uday S Reddy
2010-08-21  8:36                           ` Jan Djärv
2010-08-21  9:08                             ` Eli Zaretskii
2010-08-21 10:30                               ` Jan Djärv
2010-08-21 10:41                                 ` Eli Zaretskii
2010-08-21 10:47                                   ` Jan Djärv
2010-08-21 17:04                                   ` Thien-Thi Nguyen
2010-08-22  7:39                                     ` Stephen J. Turnbull
2010-08-23  3:15                                       ` Thien-Thi Nguyen
2010-08-21  9:38                             ` Uday S Reddy
2010-08-21 10:30                               ` Eli Zaretskii
2010-08-21 10:37                               ` Jan Djärv
2010-08-21 10:56                                 ` Eli Zaretskii
2010-08-21 12:51                                 ` Uday S Reddy
2010-08-21 13:02                                   ` Jan Djärv
2010-08-21 15:36                                   ` Eli Zaretskii
2010-08-22  7:39                                     ` Stephen J. Turnbull
2010-08-21 17:10                                 ` Stephen J. Turnbull
2010-08-21  9:03                           ` Eli Zaretskii
2010-08-21 12:31                             ` Uday S Reddy
2010-08-21 13:45                               ` Óscar Fuentes
2010-08-21 14:56                                 ` Uday S Reddy
2010-08-21 17:32                                   ` Óscar Fuentes
2010-08-22  7:45                                   ` Stephen J. Turnbull
2010-08-21 15:48                               ` Eli Zaretskii
2010-08-21 19:10                               ` Stephen J. Turnbull
2010-08-21 18:59                             ` Stephen J. Turnbull
2010-08-21 19:50                               ` Leo
2010-08-21 19:59                                 ` Eli Zaretskii
2010-08-21 20:17                                   ` Leo
2010-08-21 20:31                                     ` Leo
2010-08-22  1:41                                   ` Tom Tromey
2010-08-22  1:47                                     ` Leo
2010-08-22 13:47                                       ` David De La Harpe Golden
2010-08-22 13:53                                         ` Andreas Schwab
2010-08-22  6:52                                   ` Stephen J. Turnbull
2010-08-22  7:56                                     ` Eli Zaretskii
2010-08-22  8:28                                       ` Stephen J. Turnbull
2010-08-22  8:57                                       ` Leo
2010-08-22 15:11                                         ` Eli Zaretskii
2010-08-21 19:56                               ` Eli Zaretskii
2010-08-21 21:51                                 ` Uday S Reddy
2010-08-21 22:38                                   ` Stefan Monnier
2010-08-22  9:03                                     ` Uday S Reddy
2010-08-22  9:36                                       ` Teemu Likonen
2010-08-22  9:44                                       ` Eli Zaretskii
2010-08-22 11:25                                       ` Stephen J. Turnbull
2010-08-23  4:24                                         ` Richard Stallman
2010-08-23  4:54                                           ` Eli Zaretskii
2010-08-23  7:52                                             ` Glenn Morris
2010-08-23 13:55                                               ` Eli Zaretskii
2010-08-24  4:32                                                 ` Richard Stallman
2010-08-24 13:30                                                 ` Karl Fogel
2010-08-24  4:32                                             ` Richard Stallman
2010-08-23  9:55                                           ` Stephen J. Turnbull
2010-08-23  4:24                                       ` Richard Stallman
2010-08-23  5:06                                         ` Eli Zaretskii
2010-08-23  7:58                                         ` Uday S Reddy
2010-08-23 10:31                                           ` Stephen J. Turnbull [this message]
2010-08-23 12:41                                             ` Uday S Reddy
2010-08-24  6:31                                               ` Stephen J. Turnbull
2010-08-24 12:37                                                 ` Lluís
2010-08-24 13:05                                                   ` Lluís
2010-08-24 13:25                                                     ` Óscar Fuentes
2010-08-24 14:18                                                     ` Stephen J. Turnbull
2010-08-24 15:25                                                       ` Lluís
2010-08-24 14:10                                                   ` Stephen J. Turnbull
2010-08-24 15:02                                                     ` Lluís
2010-08-24 16:59                                                     ` Eli Zaretskii
2010-08-24 21:27                                                       ` Óscar Fuentes
2010-08-24 16:42                                                   ` Uday S Reddy
2010-08-24 17:12                                                     ` Lluís
2010-08-24 18:47                                                       ` Uday S Reddy
2010-08-24 14:05                                                 ` Uday S Reddy
2010-08-24 15:54                                                   ` Stephen J. Turnbull
2010-08-24 16:48                                                 ` Eli Zaretskii
2010-08-25 13:03                                           ` Richard Stallman
2010-08-25 13:32                                             ` Juanma Barranquero
2010-08-31 21:33                                               ` Richard Stallman
2010-09-01  0:30                                                 ` Chong Yidong
2010-09-01  1:44                                                   ` Bernardo Barros
2010-09-01  2:36                                                     ` Miles Bader
2010-09-01  3:07                                                   ` Eli Zaretskii
2010-09-01  6:49                                                     ` Stefan Monnier
2010-09-01 18:17                                                   ` Richard Stallman
2010-09-01 19:10                                                     ` Bastien
2010-09-02  5:22                                                       ` Eli Zaretskii
2010-09-02  6:31                                                         ` Bastien
2010-09-03  1:24                                                           ` Richard Stallman
2010-09-03  8:01                                                             ` Eli Zaretskii
2010-09-03  9:50                                                             ` Bastien
2010-09-03 13:58                                                               ` Karl Fogel
2010-08-25 20:25                                             ` Uday S Reddy
2010-08-27 15:36                                               ` Richard Stallman
2010-08-22  7:36                                 ` Stephen J. Turnbull
2010-08-22  8:52                                   ` Eli Zaretskii
2010-08-22  9:21                                     ` Stephen J. Turnbull
2010-08-22  9:38                                       ` Eli Zaretskii
2010-08-22 11:14                                         ` Stephen J. Turnbull
2010-08-22 11:47                                           ` Eli Zaretskii
2010-08-22 11:13                               ` Jan Djärv
2010-08-22 13:13                                 ` Stephen J. Turnbull
2010-08-22 17:10                                   ` Jan Djärv
2010-08-21  2:29                         ` Stephen J. Turnbull
2010-08-20 16:08                 ` bzr smart server [was Re: Locks on the Bzr repository] Glenn Morris
2010-08-20 16:56                   ` Lennart Borgman
2010-08-20 17:11                     ` Eli Zaretskii
2010-08-20 17:13                       ` Lennart Borgman
2010-08-20 17:23                         ` Eli Zaretskii
2010-08-20 17:52                           ` bzr smart server David Kastrup
2010-08-20 17:12                   ` bzr smart server [was Re: Locks on the Bzr repository] Eli Zaretskii
2010-08-20 23:02                     ` bzr smart server Stefan Monnier
2010-08-21  8:05                       ` Eli Zaretskii
2010-08-21 13:22                         ` Óscar Fuentes
2010-08-21 15:31                           ` Eli Zaretskii
2010-08-21 17:09                             ` Óscar Fuentes
2010-08-21 17:28                               ` Eli Zaretskii
2010-08-21 13:46                         ` Miles Bader
2010-08-21 15:32                           ` Eli Zaretskii
2010-08-21 15:45                             ` Miles Bader
2010-08-21 15:51                               ` Eli Zaretskii
2010-08-21 17:16                                 ` Óscar Fuentes
2010-08-21 17:28                                 ` Jason Rumney
2010-08-21 17:36                                   ` Eli Zaretskii
2010-08-21 17:40                                   ` Óscar Fuentes
2010-08-21 14:00                         ` Eric Hanchrow
2010-08-21 14:06                           ` Lennart Borgman
2010-08-21 14:24                             ` Óscar Fuentes
2010-08-21 15:12                               ` Lennart Borgman
2010-08-21 17:12                                 ` Óscar Fuentes
2010-08-22 17:06                       ` Richard Stallman
2010-08-20  4:44         ` Locks on the Bzr repository Miles Bader
2010-08-20  4:52           ` Jason Rumney
2010-08-20  6:22           ` Jan Djärv
2010-08-19 16:26   ` Eli Zaretskii
2010-08-19 16:54     ` Andreas Schwab
2010-08-19 16:12 ` Jason Rumney
2010-08-19 16:43   ` Dan Nicolaescu
2010-08-19 16:48     ` Jason Rumney
2010-08-19 17:08       ` Dan Nicolaescu
2010-08-19 17:32         ` Jason Rumney
2010-08-19 16:24 ` Eli Zaretskii
2010-08-19 17:29   ` Jason Rumney
2010-08-19 21:42     ` Stefan Monnier
2010-08-20  9:06       ` Eli Zaretskii
2010-08-21  9:37         ` Stefan Monnier
2010-08-19 16:26 ` Jay Belanger
2010-08-21 20:36 ` bzr send workflow (Was: Locks on the Bzr repository) Bojan Nikolic
2010-08-21 22:05   ` bzr send workflow Stefan Monnier
2010-08-21 22:48     ` Bojan Nikolic
2010-08-22  5:26     ` No ChangeLog's (was: bzr send workflow) Eli Zaretskii
2010-08-22  8:11       ` Stephen J. Turnbull
2010-08-22  8:58         ` Eli Zaretskii
2010-08-22 12:29     ` bzr send workflow Andreas Schwab
2010-08-22 13:14       ` Eli Zaretskii
2010-08-22 14:52         ` Andreas Schwab
2010-08-23  4:24       ` Richard Stallman
2010-08-23  5:11         ` Eli Zaretskii
2010-08-23  5:30           ` Eli Zaretskii
2010-08-24  4:32           ` Richard Stallman
2010-08-25 15:03     ` Andy Wingo
2010-08-25 19:18       ` Juanma Barranquero
2010-08-26 17:11         ` Chong Yidong
2010-08-26 17:26           ` Juanma Barranquero
2010-08-27  5:20           ` Stephen J. Turnbull
2010-08-27 11:27             ` Wojciech Meyer
2010-08-22  7:56   ` bzr send workflow (Was: Locks on the Bzr repository) Stephen J. Turnbull
2010-08-22 11:11     ` Lennart Borgman
2010-08-22 13:44       ` bzr send workflow Miles Bader
2010-08-22 14:40     ` Bojan Nikolic
2010-08-23  4:14       ` Stephen J. Turnbull
2010-08-23  5:33         ` Eli Zaretskii

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=878w3x7h8u.fsf@uwakimon.sk.tsukuba.ac.jp \
    --to=stephen@xemacs.org \
    --cc=emacs-devel@gnu.org \
    --cc=monnier@iro.umontreal.ca \
    --cc=rms@gnu.org \
    --cc=u.s.reddy@cs.bham.ac.uk \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
Code repositories for project(s) associated with this external index

	https://git.savannah.gnu.org/cgit/emacs.git
	https://git.savannah.gnu.org/cgit/emacs/org-mode.git

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.