Tagging How-To: making a cvs diff of changed local files : sf-active
IMC / INFORMATION WARFARE MUNITIONS
sf-active :: indymedia
english | castellano | italian | Nederlands
download : documentation : support
irc : cvs : bugs : faq : servers
latest articles : sf-active sites
about sf-active
sf-active is a collection of object-oriented classes for content management, open publishing and news syndication. All the pages needed to run an indymedia site are distributed with the code

other links
indymedia codebases
indymedia global tech

software, politica e indymedia





printable version - email this article

Tagging How-To: making a cvs diff of changed local files
by gek Saturday, Jun. 19, 2004 at 9:07 PM

This is a how-to about what I'm doing to get a cvs diff between last tagged cvs and current cvs to document the change from 0.9 to 0.9.2 -- this is definitely inelegant and anyone who knows a better way, please let us know!

STEP-BY-STEP CURRENT HOW-TO
(actual background details below)

To get a list of all added/modified files in the sitename/ directory tree, first you get all modified files by checking out a fresh copy of current cvs. Then, do:

cvs -q diff --brief -N -r tagname | grep '^RCS'

I did this between 0.9 to rc0.9.2 versions and put it at http://sfa.indymedia.org/news/2004/06/32.php

But as Bart pointed out about my list, it didnt include new files, only modified ones. The -N switch is supposed to make it output added files/directories as well (showing modified files only is cvs diff's default behavior).

According to internet rumors, -N switch only started working for rela in some particular version of cvs. I am using cvs 1.11.5 (vs. cvs current stable 1.11.17) so its possible -N doesn't work in my version.

If it works for you, great, and you've got your list. But I figured I'd also document the junky way I got the second list of added files/directories using diff to compare two directory trees of the 0.9 tag checkout and current cvs checkout:
diff -rl --brief tagged/sf-active/sf-active/sitename current/sf-active/sf-active/sitename | grep '^Only\ in\ current'

An example of this list is at http://sfa.indymedia.org/news/2004/06/35.php

Anyway, I still had to manually edit the output of this to remove stuff like CVS Entries files, etc. It would be nice to find out if -N does work in more recent cvs versions or another way to get this list all at once through cvs.


BACKGROUND INFO:
A requirement for sf-active tagged releases is a simple list of added/modified files in the sitename/ directory tree.

This is needed because while the shared/ tree exists in only one place on sf-active servers, sf-active developers also maintain/upgrade a couple dozen local installations which require manual/human cvs upgrade for each site's local files -- as well as manually merging customization changes the local imc people have made.

The long-term plan to minimize this problem which is move as many files in the sitename/ tree to shared/, and sites which have a need to customize them (i.e. all templates for all pages are in sitename/ tree) can override by creating a local version of any file. We've already done this for language dictionary files. This change minizes the number of files we have to worry about for each local upgrade and makes it easier to identify which files they've changed.

add your comments


LATEST COMMENTS ABOUT THIS ARTICLE
Listed below are the 10 latest comments of 3 posted about this article.
These comments are anonymously submitted by SF-IMC website visitors.
TITLE AUTHOR DATE
hi ev... Zoldan Wednesday, Nov. 22, 2006 at 6:34 PM
pick a theme:

Latest Newswire
Publish your news
View Latest Comments