blob: 7cac0862202edf6fc85d917ee63677222af6dc97 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
|
Bruce Momjian <maillist@candle.pha.pa.us>
Here are some of the scripts I use to make development easier.
First, I use 'cpdir' on every file I am about to change. This makes a
copy with the extension .orig. If an .orig already exists, I am warned.
:
# cporig
for FILE
do
if [ ! -f "$FILE.orig" ]
then cp $FILE $FILE.orig
else echo "$FILE.orig exists" 1>&2
fi
done
I can get really fancy with this. I can do 'cporig *' and make a .orig
for every file in the current directory. I can:
cporig `grep -l HeapTuple *`
If I use mkid (from ftp.postgreSQL.org), I can do:
cporig `lid -kn 'fsyncOff'`
and get a copy of every file containing that word. I can then do:
vi `find . -name '*.orig'`
or even better (using mkid):
eid fsyncOff
to edit all those files.
When I am ready to generate a patch, I run this command from the top of
the source tree:
:
#difforig
if [ "$#" -eq 0 ]
then APATH="."
else APATH="$1"
fi
find $APATH -name '*.orig' -print | sort | while read FILE
do
NEW="`dirname $FILE`/`basename $FILE .orig`"
echo "$NEW" 1>&2
diff -c $FILE $NEW
done
I pipe the output of this to a file to hold my patch, and the file names
it processes appear on my screen. It creates a nice patch for me of all
the files I used with cporig.
Finally, I remove my old copies with:
:
# rmorig
if [ "$#" -eq 0 ]
then APATH="."
else APATH="$1"
fi
find $APATH -name '*.orig' -exec rm {} \;
|