gnu-arch-users
[Top][All Lists]
Advanced

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

Re: [Gnu-arch-users] Linux BKCVS to GNU Arch Script


From: Catalin Marinas
Subject: Re: [Gnu-arch-users] Linux BKCVS to GNU Arch Script
Date: Thu, 10 Feb 2005 13:43:54 +0000
User-agent: Gnus/5.1007 (Gnus v5.10.7) Emacs/21.3 (gnu/linux)

Johannes Berg <address@hidden> wrote:
> and notice a few things:
>  * the script will not work correctly if `pwd` or the argument to -d
> contain spaces

Some quotes around `pwd` and GNUARCH_LINUX_DIR could fix the problem.

>  * rsync is, afaik, not atomic. I don't know how exactly this would
> affect the script though

For a given changeset, 1.NNNN (which actually is the RCS revision
number for the ChangeSet,v file), the files modified in the commit
have a "(Logical change 1.NNNN)" string in their corresponding commit
log. Since rsync is not atomic, some files can be left out of the last
changeset (not yet rsync'ed), making this changeset incomplete.

The next time you run the script, it tries to re-apply the last patch
(reversed, with --dry-run) since it is assumed that the possible
incomplete changeset has now all the files in the BKCVS repository.

Even if rsync is not atomic, I haven't seen this problem for the last
~4000 changesets.

>  * you can very well leave the 'Keywords' header line out of the log

I thought it is mandatory, but, well, I can remove it. It might be
useful to add some version information in this header (like
2.6.11-rc3).

>  * is the changelog variable in the awk script guaranteed to start
> with a newline? might be worth checking

Yes, only if the BK log structure doesn't change. Otherwise, the
log subject line would be very long (includes the changelog).

>  * the script doesn't work right (due to the home directory munging)
> if one wants to sign the archive or use sftp with keys

I don't have this problem but you can remove the home dir munging. I
wanted to preserve the author of the patch but I couldn't find a
different way (well, you could change the arch id file in your home
directory but you need to make sure you don't use arch when the script
is running).

A --author option to the commit command would be useful in arch,
especially for people contributing patches and who want to receive the
credits for them.

>  * it will fail if you don't have a revision library due to using tla
> library-remove

True, it doesn't check if there is any revision library. But without a
revision library it would be quite slow. Last time I worked with
pristine trees, there was no hard-link between subsequent patches.

> Well, that's about it :) Some of these should just be documented, for
> example the last item. You might add a safety check to check if a
> revlib is used.

Thanks for the comments. Anyway, feel free to modify the
documentation and/or the script itself on the wiki. My intention was
to show an example people can adapt to their system.

Regards,

Catalin





reply via email to

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