From: Michael Olson <mwolson@gnu.org>
Cc: auctex-devel@gnu.org
Subject: Re: Ways of keeping Emacs 22 and external projects in sync
Date: Wed, 03 Jan 2007 13:29:13 -0500 [thread overview]
Message-ID: <87k60455hi.fsf@hariken.mwolson.org> (raw)
In-Reply-To: enb8tj$is7$1@sea.gmane.org
[-- Attachment #1.1: Type: text/plain, Size: 5447 bytes --]
Ralf Angeli <angeli@caeruleus.net> writes:
>> sync-to-emacs:
>> ===
>> #!/bin/bash
>>
>> # Load common definitions
>> . scripts/common.defs
>>
>> (cd $LISP/erc && find . -maxdepth 1 -mindepth 1 -type f -exec cp {} $OLDPWD \;)
>> cp $ETC/ERC-NEWS etc/
>> cp $MAN/erc.texi man/
>> rm -f *.elc
>> ===
>
> The scripts look identical. Is that correct?
Sorry about that. It should have been:
sync-to-emacs:
===
#!/bin/bash
# Load common definitions
. scripts/common.defs
find . -maxdepth 1 -mindepth 1 -type f -exec cp {} $LISP/erc \;
find ./etc -maxdepth 1 -mindepth 1 -type f -exec cp {} $ETC \;
find ./man -maxdepth 1 -mindepth 1 -type f -exec cp {} $MAN \;
===
Sorry about that.
>> When there are some changes that need to be propagated to Emacs 22, I
>
> So you are updating ERC in Emacs not on a release-by-release basis,
> but rather when some important changes need to be propagated?
Yes. Of course, it's a priority to merge releases to Emacs 22.
> Do you apply a tag in that case in order to identify the file
> revisions if somebody has a bug report or support request referring
> to the ERC version in Emacs or do you just use the files in Emacs
> directly for testing and debugging?
No. I can get changes for any revision that I commit at any time, so
there isn't a need for making tags. I use DVC
(http://download.gna.org/dvc/) to easily fetch changes: it gives me a
listing of patches that I've committed, and I only need to hit "=" to
view the one at point in diff form.
I usually do debugging in the erc--main branch, because the versions
are consistent enough that problems should be replicable there. If
needed, I could easily just remove the (add-to-list 'load-path ...)
line for ERC from my config, and work in Emacs directly, calling
sync-from-emacs when I've fixed the problem (to propagate to
erc--emacs--22), and so on.
>> first check emacs--devo--0 to see if someone changed things on the
>> Emacs side, by running ./scripts/sync-from-emacs. If anything is
>> different than the current contents of erc--emacs--22, I immediately
>> check them in (to erc--emacs--22).
>
> Do you regularly synch from Emacs or just when you are about to
> synch to Emacs?
Usually I only do it when I'm about to sync to Emacs. I also do it
whenever I run "tla update" on Emacs 22 (about once a month), if I
notice that some ERC files were modified.
> My idea for RefTeX would have been that a synch from Emacs to RefTeX
> is done regulary, but directly instead of using an intermediate
> repository.
That would work, too.
>> I also think it is a very bad idea for Emacs developers to mandate
>> checking in files individually. It might make sense for work on the
>> core files in lisp/emacs-lisp/ or the top-level of lisp/, but a
>> significant percentage of changes made to the other lisp files involve
>> changing several files at once. Separating log entries for commit
>> messages begins to become a burden. For operations such as updating
>> an entire project, this would become very tedious (not to mention
>> unnecessary, because ChangeLog contains all the information that is
>> really needed).
>
> That reminds me: When you are synching from Emacs to ERC (and vice
> versa) the ChangeLog file is probably handled the same way Lisp files
> are. Because log entries of changes to RefTeX in Emacs currently end
> up in lisp/ChangeLog we'd need a separate ChangeLog file for RefTeX
> for this to work.
That would be trickier. I assumed RefTeX would be getting its own
subdirectory in lisp/. You might have to keep a separate ChangeLog
and manually copy over ChangeLog entries when syncing to Emacs 22.
>> With Arch, such changes are treated as a single change to the entire
>> project, rather than multiple separate changes to single files. There
>> is no possibility (however remote) of changes to several files being
>> only partially applied, as long as Arch is the only version control
>> system involved.
>
> As Savannah supports Arch repositories now it should be no problem to
> maintain RefTeX in such a repository. What I would be missing with
> Arch would be something like PCL-CVS and the web interface like
> Savannah provides it for CVS repositories.
I don't really know what PCL-CVS is used for, but DVC (link given
above) satisfies me. It really brings out Arch's potential.
As for a web interface, I set up one on my own webserver, and edited
Savannah's configuration for ERC to point to it. Link is:
http://www.mwolson.org/cgi-bin/archzoom/archzoom.cgi/erc@sv.gnu.org
For safety's sake (to keep from getting close to my disk space quota),
I have a cron job on my webserver that removes the generated
changesets and such once a week. This assumes that ArchZoom has
temp_dir = /home/mwolson/tmp.
remove-tmp:
===
#!/bin/sh
# Remove ArchZoom cruft
PRE=/home/mwolson
[ -d $PRE/,,tmp ] && exit 0 || :
[ -d $PRE/tmp ] || exit 0
mv /home/mwolson/tmp /home/mwolson/,,tmp
mkdir $PRE/tmp
rm -fr $PRE/,,tmp
===
--
Michael Olson -- FSF Associate Member #652 -- http://www.mwolson.org/
Interests: Lisp, text markup, protocols -- Jabber: mwolson_at_hcoop.net
/` |\ | | | Projects: Emacs, Muse, ERC, EMMS, Planner, ErBot, DVC
|_] | \| |_| Reclaim your digital rights by eliminating DRM.
See http://www.defectivebydesign.org/what_is_drm for details.
[-- Attachment #1.2: Type: application/pgp-signature, Size: 188 bytes --]
[-- Attachment #2: Type: text/plain, Size: 142 bytes --]
_______________________________________________
Emacs-devel mailing list
Emacs-devel@gnu.org
http://lists.gnu.org/mailman/listinfo/emacs-devel
next prev parent reply other threads:[~2007-01-03 18:29 UTC|newest]
Thread overview: 49+ messages / expand[flat|nested] mbox.gz Atom feed top
2006-12-28 22:53 CVS repository synchronization for RefTeX Ralf Angeli
2006-12-29 22:04 ` Stefan Monnier
2006-12-29 23:43 ` Ralf Angeli
2006-12-30 14:20 ` Eli Zaretskii
2006-12-30 15:08 ` Ralf Angeli
2006-12-30 15:20 ` Eli Zaretskii
2006-12-30 16:01 ` Ralf Angeli
2006-12-30 16:47 ` Carsten Dominik
2006-12-30 18:03 ` Eli Zaretskii
2006-12-30 18:50 ` Ralf Angeli
2006-12-30 19:03 ` Eli Zaretskii
2006-12-30 19:18 ` Ralf Angeli
2006-12-31 1:46 ` Richard Stallman
2006-12-30 21:28 ` Alan Shutko
2006-12-30 21:55 ` Reiner Steib
2006-12-31 22:27 ` Giorgos Keramidas
2006-12-31 23:57 ` Ralf Angeli
2007-01-01 7:09 ` Ways of keeping Emacs 22 and external projects in sync (was: CVS repository synchronization for RefTeX) Michael Olson
2007-01-01 15:21 ` Ways of keeping Emacs 22 and external projects in sync Ralf Angeli
2007-01-01 17:59 ` Reiner Steib
2007-01-01 18:36 ` Giorgos Keramidas
2007-01-03 10:43 ` Yavor Doganov
2007-01-03 18:32 ` Michael Olson
2007-01-03 18:29 ` Michael Olson [this message]
2007-01-03 19:53 ` Ralf Angeli
2007-01-03 22:37 ` Michael Olson
2007-01-01 18:20 ` Ways of keeping Emacs 22 and external projects in sync (was: CVS repository synchronization for RefTeX) Giorgos Keramidas
2007-01-01 21:56 ` CVS repository synchronization for RefTeX Richard Stallman
2006-12-30 18:23 ` Richard Stallman
2006-12-30 18:39 ` Ralf Angeli
2006-12-31 1:47 ` Richard Stallman
2007-01-01 16:01 ` David Kastrup
2007-01-02 3:09 ` Richard Stallman
2007-01-02 7:43 ` David Kastrup
2007-01-02 21:24 ` Richard Stallman
2007-01-03 8:48 ` David Kastrup
2007-01-04 2:31 ` Richard Stallman
2007-01-04 21:51 ` David Kastrup
2007-01-06 2:54 ` Richard Stallman
2007-01-06 9:14 ` David Kastrup
2006-12-30 21:54 ` Reiner Steib
2006-12-31 19:36 ` Ralf Angeli
2007-01-01 17:59 ` Reiner Steib
2007-01-01 19:12 ` Ralf Angeli
2006-12-30 22:07 ` Stefan Monnier
2006-12-29 22:59 ` Richard Stallman
2006-12-30 17:00 ` David Kastrup
2007-01-07 21:42 ` Bill Wohler
2007-01-08 19:25 ` [AUCTeX-devel] " Ralf Angeli
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
List information: https://www.gnu.org/software/emacs/
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=87k60455hi.fsf@hariken.mwolson.org \
--to=mwolson@gnu.org \
--cc=auctex-devel@gnu.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.
Code repositories for project(s) associated with this public inbox
https://git.savannah.gnu.org/cgit/emacs.git
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).