[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Gnu-arch-users] Type-specific diff & patch
From: |
Ludovic Courtès |
Subject: |
[Gnu-arch-users] Type-specific diff & patch |
Date: |
Tue, 02 May 2006 13:49:19 +0200 |
User-agent: |
Gnus/5.110004 (No Gnus v0.4) Emacs/21.4 (gnu/linux) |
Hi,
Matteo Settenvini <address@hidden> writes:
> b) a plugin system; maybe Arch 2 should become little more than a
> specification and a framework, in the sense that gstreamer is; there
> could be plugins for a pletora of things, ranging from merging
> algorithms to supported media / transport protocols; and maybe even a
> plugin for special treatment of certain mime-types -- for example,
> imagine a .odt OpenOffice.org document: it's mostly a bunch of XML files
> compressed in a unique archive. Instead of doing a binary diff of it,
> knowing its ``semantic'' we could diff just its plain-text contents
File-specific diff would be feasible in Arch 1, and it'd be nice to do
it (I meant to give it a try but haven't had time so far).
Basically, just like we have "id tagging methods", we could have "file
diff-ing methods". There could be a per-tree default method, as well as
per-file methods (i.e., not all files within a tree need to use a single
diff method).
Obviously, the main issue would be portability of the diff methods
used. Each diff method would have to be named and described. Such
meta-data could go, for instance, in the `{arch}' sub-directory of a
tree:
{arch}
|
+-- =diff-methods
|
+-- line-oriented
| |
| +-- diff
| +-- diff3
| `-- patch
+-- token-replacement
| |
| +-- diff
| `-- patch
`-- xml
|
+-- diff
`-- patch
The files `diff', `diff3' and `patch' would describe command-lines to be
used to perform the corresponding operations for the diff method at
hand.
In order to allow parties interested in a branch to actually be able to
retrieve it, we would need a way to advertise the set of diff methods in
use within a branch (this would require a slight archive format change).
In practice, one had better publish not only the diff method name (e.g.,
`xml') but also a string associated with it that describes the tools to
be used (e.g., "XyDiff 0.3, see http://...").
This kind of feature would be nice, but it is unclear how much could be
gained from this. Perhaps this is also related to the so-called "target
market" question (e.g., "Do we care about OpenOffice.org documents?").
I recently read that this kind of thing could be done quite easily in
Darcs [0], which might be another source of motivation for some people.
;-)
Thanks,
Ludovic.
[0] "Towards XML Version Control of Office Documents",
http://www2-data.informatik.unibw-muenchen.de/People/borghoff/pspapers/doceng2005.pdf
.
- [Gnu-arch-users] Type-specific diff & patch,
Ludovic Courtès <=
Re: [Gnu-arch-users] Type-specific diff & patch, Ludovic Courtès, 2006/05/02
Re: [Gnu-arch-users] Type-specific diff & patch, Andy Tai, 2006/05/02
Re: [Gnu-arch-users] Type-specific diff & patch, Thomas Lord, 2006/05/02