public inbox for linux-kernel@vger.kernel.org
 help / color / mirror / Atom feed
From: Petr Baudis <pasky@ucw.cz>
To: Pavel Machek <pavel@ucw.cz>
Cc: Daniel Phillips <phillips@arcor.de>,
	"Martin J. Bligh" <mbligh@aracnet.com>,
	Zack Brown <zbrown@tumblerings.org>,
	linux-kernel@vger.kernel.org
Subject: Re: BitBucket: GPL-ed KitBeeper clone
Date: Sat, 15 Mar 2003 22:32:46 +0100	[thread overview]
Message-ID: <20030315213246.GD31875@pasky.ji.cz> (raw)
In-Reply-To: <20030314122903.GC8057@zaurus.ucw.cz>

Dear diary, on Fri, Mar 14, 2003 at 01:29:03PM CET, I got a letter,
where Pavel Machek <pavel@ucw.cz> told me, that...
> Hi!
> 
> > You can wave your wand, and the soft changeset will turn into a universal 
> > diff or a BK changeset.  But it's obviously a lot cleaner, extensible, 
> > flexible and easier to process automatically than a text diff.  It's an 
> > internal format, so it can be improved from time to time with little or no 
> > breakage.
> > 
> > Did that make sense?
> 
> Yes.
> 
> Some kind of better-patch is badly needed.
> 
> What kind of data would have to be in soft-changeset?
> * unique id of changeset
> * unique id of previous changeset
> (two previous if it is merge)
> ? or would it be better to have here
> whole path to first change?
> * commit comment
> * for each file:
> ** diff -u of change
> ** file's unique id
> ** in case of rename: new name (delete is rename to special dir)
> ** in case of chmod/chown: new permissions
> ** per-file comment
> 
> ? How to handle directory moves?
> 
> Does it seem sane? Any comments?

Sounds almost sane (except the requirement for -u, it should be probably
possible to use the same scale of diff types as now </nitpicking>). When
already doing -u, it should probably also mention the original name of the file
in case of move/rename and especially the original chmod/chown
permissions/ownership. About chown, I'm not that sure ownership should be
recorded/carried, given that normal users can't even chown, and probably the
usernames won't exist on the system anyway. Maybe making that an optional
feature which the patching subject may ignore.

Whole separate issue is how to generate the unique ids. First, we need unique
ids for people, that shouldn't be that difficult. In fact, email should do
quite well, as it does for BitKeeper or arch. Interesting thing could happen
when someone's email is going to change and he wants to use the new one.
Probably when changing this information in his repository, the old one should
be kept as an "alias" and sent along with any updates near the new one --- I
believe the backlog shouldn't even reach any dangerous length, for standard
communication some sane upper threshold (like 5) could be set and more would be
sent only in direct communication and only in case of conflicts.

Changeset unique id should probably include author of that changeset and time
(with seconds precision) of commiting such a changeset to the [original]
repository [of the changeset]. However some insane scripts could make, checkin
and commit several changesets in line fast enough or so, thus you want
something else in the id as well, which could further differentiate commitins
happenning at same time. Checksum of the changeset changes (in some suitable
form) would do. Now, if you want to annoy Larry, separate the fields by '|'s
and you could get something familiar.

File's unique id is a little harder. The best thing to do is probably to
identify file by its origin. The file appeared in some changeset, we have
already unique ids for changesets. And the file appeared under some original
name there, which has to be unique inside of one changeset. Thus take changeset
unique id and add another field there, the original file name under which it
appeared in that changeset. It should be still unique and also cheap to look up
--- you have only to look for changes in that one changeset, look up the
particular file in the list of files appearing there and you should keep some
file name -> "virtual inode" number mapping near the files anyway.

What do you think?

Kind regards,

-- 
 
				Petr "Pasky" Baudis
.
The pure and simple truth is rarely pure and never simple.
		-- Oscar Wilde
.
Stuff: http://pasky.ji.cz/

  parent reply	other threads:[~2003-03-15 21:22 UTC|newest]

Thread overview: 199+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2003-03-02  0:11 BitBucket: GPL-ed KitBeeper clone Adam J. Richter
2003-03-02  0:20 ` Larry McVoy
2003-03-02  0:20 ` David Lang
2003-03-02  0:49 ` Arador
2003-03-02  1:03   ` Jeff Garzik
2003-03-02  2:15   ` Alan Cox
2003-03-02  1:19     ` Jeff Garzik
2003-03-02  1:40       ` BitBucket: GPL-ed *notrademarkhere* clone Andrea Arcangeli
2003-03-02  1:45         ` Jeff Garzik
2003-03-02  2:09           ` Andrea Arcangeli
2003-03-02 17:28             ` Jeff Garzik
2003-03-02 18:16               ` Andrea Arcangeli
2003-03-02 20:12                 ` Jeff Garzik
2003-03-02 21:49                   ` Geert Uytterhoeven
2003-03-03 18:37                 ` Larry McVoy
2003-03-03 18:46                   ` Larry McVoy
2003-03-03 22:57                   ` Andrea Arcangeli
2003-03-03 23:14                     ` Pavel Machek
2003-03-03 23:56                     ` David Lang
2003-03-04  0:02                       ` Jeff Garzik
2003-03-04  0:05                         ` Larry McVoy
2003-03-04  0:15                         ` Andrea Arcangeli
2003-03-04  0:30                           ` Jeff Garzik
2003-03-04  2:20                       ` Martin J. Bligh
2003-03-04  5:29                         ` Linus Torvalds
2003-03-04  5:56                           ` Dimitrie O. Paun
2003-03-04 14:51                             ` Jeff Garzik
2003-03-02  3:29           ` H. Peter Anvin
2003-03-02 17:12             ` Jeff Garzik
2003-03-02 18:39               ` H. Peter Anvin
2003-03-02 20:01                 ` Jeff Garzik
2003-03-03  0:47               ` nickn
2003-03-03  0:55                 ` David Lang
2003-03-03  2:31                   ` Jeff Garzik
2003-03-03  2:32                 ` Jeff Garzik
2003-03-04  1:07                   ` Horst von Brand
2003-03-04  1:10                     ` H. Peter Anvin
2003-03-03 21:53               ` Joel Becker
2003-03-04 23:37                 ` Olaf Hering
2003-03-06 16:47                 ` Pavel Machek
2003-03-06 16:41               ` Pavel Machek
2003-03-07 11:24                 ` Tupshin Harper
2003-03-07 11:28                   ` Pavel Machek
2003-03-07 21:53                 ` H. Peter Anvin
2003-03-08 23:18                   ` Daniel Phillips
2003-03-03  0:13           ` Pavel Machek
2003-03-03  0:10       ` BitBucket: GPL-ed KitBeeper clone Pavel Machek
2003-03-04 16:16         ` David Woodhouse
2003-03-04 16:27           ` Pavel Machek
2003-03-02  1:26 ` Olivier Galibert
2003-03-06 16:18   ` Pavel Machek
2003-03-07 12:12     ` Olivier Galibert
2003-03-07 12:32       ` Pavel Machek
2003-03-07 16:54         ` Olivier Galibert
2003-03-07 17:14           ` Geert Uytterhoeven
2003-03-07 19:08           ` Pavel Machek
2003-03-07 19:25             ` Eli Carter
2003-03-07 20:29               ` Pavel Machek
2003-03-07 23:16             ` Linus Torvalds
2003-03-08 22:52               ` Zack Brown
2003-03-09  0:05                 ` Larry McVoy
2003-03-09  1:21                   ` Davide Libenzi
2003-03-09  2:45                   ` Zack Brown
2003-03-09  3:19                     ` Roman Zippel
2003-03-09  3:42                       ` Linus Torvalds
2003-03-09  4:32                         ` Roman Zippel
2003-03-09 13:34                           ` Eric W. Biederman
2003-03-09 15:35                             ` Roman Zippel
2003-03-09 16:55                               ` Martin J. Bligh
2003-03-09 17:20                                 ` Zack Brown
2003-03-09 17:48                                   ` Martin J. Bligh
2003-03-09 19:58                                   ` Larry McVoy
2003-03-09 21:32                                     ` Zack Brown
2003-03-09 21:54                                       ` Valdis.Kletnieks
2003-03-09 23:28                                         ` Larry McVoy
2003-03-13 20:00                                     ` Pavel Machek
2003-03-09 17:39                                 ` Linus Torvalds
2003-03-09 17:58                                   ` Martin J. Bligh
2003-03-09 18:20                                   ` Larry McVoy
2003-03-09 23:19                                     ` fs
2003-03-13  0:41                                     ` Pavel Machek
2003-03-13 21:21                                       ` Horst von Brand
2003-03-09 20:01                                   ` Roman Zippel
2003-03-13  0:13                             ` Pavel Machek
2003-03-09 14:49                         ` Olivier Galibert
2003-03-13  0:05                         ` Pavel Machek
2003-03-10  0:02                     ` Thoughts about ideal kernel SCM Petr Baudis
2003-03-10  0:32                       ` Larry McVoy
2003-03-12 19:29                         ` Petr Baudis
2003-03-13 10:36                       ` Pavel Machek
2003-03-14 22:56                         ` Petr Baudis
2003-03-17 20:59                       ` Petr Baudis
2003-03-10  3:41                     ` BitBucket: GPL-ed KitBeeper clone Horst von Brand
2003-03-10 13:52                       ` Jamie Lokier
2003-03-10 23:03                     ` Daniel Phillips
2003-03-11 18:40                       ` Zack Brown
2003-03-11 18:46                         ` Martin J. Bligh
2003-03-11 19:30                           ` Daniel Phillips
2003-03-11 19:33                             ` Martin J. Bligh
2003-03-11 20:08                               ` Andrew Morton
2003-03-11 20:29                                 ` Martin J. Bligh
2003-03-12  6:14                             ` Werner Almesberger
2003-03-13  2:48                               ` Daniel Phillips
2003-03-13  3:11                                 ` Werner Almesberger
2003-03-14 12:29                             ` Pavel Machek
2003-03-15 20:53                               ` Martin J. Bligh
2003-03-15 21:26                               ` Daniel Phillips
2003-03-15 21:32                               ` Petr Baudis [this message]
2003-03-15 23:39                                 ` Petr Baudis
2003-03-16  0:39                               ` Horst von Brand
2003-04-07 21:22                               ` Petr Baudis
2003-03-12  3:47                         ` Horst von Brand
2003-03-12  4:03                           ` Larry McVoy
2003-03-12  4:49                             ` [PATCH] ~/kernel/sys.c (2.5.64) (trivial) Jay Patrick Howard
2003-03-12  5:22                           ` BitBucket: GPL-ed KitBeeper clone Zack Brown
2003-03-12  5:44                             ` Horst von Brand
2003-03-12 13:48                               ` Daniel Phillips
2003-03-13  1:03                                 ` Horst von Brand
2003-03-13 16:53                                   ` Daniel Phillips
2003-03-15 15:02                                     ` Horst von Brand
2003-03-15 21:25                                       ` Daniel Phillips
2003-03-12  6:19                             ` Werner Almesberger
2003-03-13  1:31                               ` Horst von Brand
2003-03-12 15:32                             ` Horst von Brand
2003-03-12 16:13                               ` Daniel Phillips
2003-03-12 20:37                                 ` Horst von Brand
2003-03-12 20:54                                   ` H. Peter Anvin
2003-03-13  2:00                                   ` Daniel Phillips
2003-03-15  1:03                                     ` Horst von Brand
2003-03-12 13:22                           ` Daniel Phillips
2003-03-13  0:52                             ` Horst von Brand
2003-03-13 17:00                               ` Daniel Phillips
2003-03-13 21:48                                 ` Zack Brown
2003-03-13 22:04                                   ` Daniel Phillips
2003-03-15 16:21                                 ` Horst von Brand
2003-03-15 21:25                                   ` Daniel Phillips
2003-03-15 21:53                                     ` Robert Anderson
2003-03-15 21:50                                       ` Randy.Dunlap
2003-03-15 22:16                                         ` Robert Anderson
2003-03-15 22:18                                         ` Robert Anderson
2003-03-16  0:18                                       ` Petr Baudis
2003-03-16  0:53                                         ` Davide Libenzi
2003-03-16  0:55                                         ` [arch-users] " Stig Brautaset
2003-03-16  1:44                                         ` Tom Lord
2003-03-16  2:06                                           ` Adam Spiers
2003-03-16  3:28                                             ` David Lang
2003-03-16  5:43                                         ` Robert Anderson
2003-03-16 11:57                                         ` (Re: BitBucket: GPL-ed KitBeeper clone) Moving to arch-users Petr Baudis
2003-03-14 11:34                         ` BitBucket: GPL-ed KitBeeper clone Pavel Machek
2003-03-12 23:38                     ` Pavel Machek
2003-03-09  2:06             ` Horst von Brand
     [not found]             ` <b4b98v_14m_1@penguin.transmeta.com>
2003-03-12 23:23               ` Pavel Machek
2003-03-13 21:15                 ` Horst von Brand
2003-03-08  0:18       ` Olaf Dietsche
2003-03-02  1:37 ` Filip Van Raemdonck
  -- strict thread matches above, loose matches on Subject: below --
2003-04-08 17:52 Chuck Ebbert
2003-04-08 18:02 ` Larry McVoy
2003-04-08 23:19   ` Jamie Lokier
2003-04-09  0:47     ` Larry McVoy
2003-04-09  1:34       ` Jamie Lokier
2003-04-09  1:43       ` Robert White
2003-04-09  2:09     ` Mark Mielke
2003-04-09 13:14       ` Mr. James W. Laferriere
2003-04-09 13:35         ` Matti Aarnio
2003-04-08 13:06 Chuck Ebbert
2003-04-07 23:57 Chuck Ebbert
2003-04-08  0:30 ` Larry McVoy
     [not found] <1047571030.5373.161.camel@passion.cambridge.redhat.com>
2003-03-15 14:17 ` Horst von Brand
2003-03-15 18:48   ` Larry McVoy
2003-03-15 18:51   ` David Woodhouse
     [not found] <20030309001008$2ed5@gated-at.bofh.it>
     [not found] ` <20030309001008$4e61@gated-at.bofh.it>
     [not found]   ` <20030309001008$0732@gated-at.bofh.it>
     [not found]     ` <20030309001008$747c@gated-at.bofh.it>
     [not found]       ` <20030309001008$6342@gated-at.bofh.it>
2003-03-15 10:47         ` Kai Henningsen
2003-03-13 16:21 Ed Vance
2003-03-15 14:31 ` Horst von Brand
2003-03-12 19:00 Kaz Kylheku
2003-03-03 17:02 Adam J. Richter
2003-03-02  2:23 Adam J. Richter
2003-03-03 15:26 ` Edward S. Marshall
2003-03-03 23:06   ` Daniel Phillips
2003-02-26 20:02 BitBucket: GPL-ed BitKeeper clone Pavel Machek
2003-03-01 18:05 ` BitBucket: GPL-ed KitBeeper clone Pavel Janík
2003-03-01 18:39   ` Christoph Hellwig
2003-03-01 22:43     ` Pavel Janík
2003-03-02  9:11       ` Christoph Hellwig
2003-03-02  9:30         ` John Bradford
2003-03-02  9:32           ` Christoph Hellwig
2003-03-03 12:39           ` Pavel Machek
2003-03-03 14:12           ` Alan Cox
2003-03-03 13:57             ` John Bradford
2003-03-03 14:22               ` Richard B. Johnson
2003-03-03 15:08                 ` John Bradford
2003-03-03 17:50                   ` David Lang
2003-03-03 19:37                   ` Pavel Machek
2003-03-03 19:49                     ` John Bradford
2003-03-03 14:22               ` Charles Cazabon
2003-03-02  9:57         ` Pavel Janík
2003-03-03  8:05       ` Helge Hafting
2003-03-03  8:28         ` Bernd Eckenfels
2003-03-01 20:58   ` Paul Fulghum
2003-03-02  4:52     ` Mike Galbraith
2003-03-03  0:02   ` Pavel Machek

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=20030315213246.GD31875@pasky.ji.cz \
    --to=pasky@ucw.cz \
    --cc=linux-kernel@vger.kernel.org \
    --cc=mbligh@aracnet.com \
    --cc=pavel@ucw.cz \
    --cc=phillips@arcor.de \
    --cc=zbrown@tumblerings.org \
    /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.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox