codechanges(1) General Commands Manual codechanges(1)

codechanges - computes the amount of code changes between two code trees or single files

codechanges [-n] old-directory new-directory

codechanges [-n] old-file new-file

codechanges recursively compares the two named directories (or files) calculating new/deleted/changed lines, not including comments or blank lines, in files which appear to be source files (C, C++, shell, and Makefiles). To include comments and blank lines, use the -n option.

codechanges is purpose designed to measure the amount of code change between milestones in a project's life. The following output is from two stages, plus some artificial test cases, in the pmccabe code stream:

NEW	DELETED	CHANGED	Old File, New File
11	19	4	old.pmccabe/./Makefile pmccabe/./Makefile
214	10	39	old.pmccabe/./cparse.c pmccabe/./cparse.c
463	0	0	NEWFILE pmccabe/./decomment.c
147	4	39	old.pmccabe/./dmain.c pmccabe/./dmain.c
10	0	0	NEWFILE pmccabe/./dmain.h
407	0	0	NEWFILE pmccabe/./getopt.c
48	0	0	NEWFILE pmccabe/./getopt.h
9	18	12	old.pmccabe/./gettoken.c pmccabe/./gettoken.c
18	18	15	old.pmccabe/./io.c pmccabe/./io.c
175	43	20	old.pmccabe/./nmain.c pmccabe/./nmain.c
194	11	22	old.pmccabe/./pmccabe.c pmccabe/./pmccabe.c
42	0	20	old.pmccabe/./pmccabe.h pmccabe/./pmccabe.h
0	1318	0	old.pmccabe/./test/langMode.c DELETED
24	0	0	NEWFILE pmccabe/./test006/Grapher.H
620	0	0	NEWFILE pmccabe/./test006/Handler.H
442	0	0	NEWFILE pmccabe/./test006/NodeArc.H
764	0	0	NEWFILE pmccabe/./w/parser.C
95	0	0	NEWFILE pmccabe/./w/tokens.h
4	0	0	NEWFILE pmccabe/./x.sh
3687	1441	171	TOTAL

There aren't many at this time.

codechanges thinks it knows what source files are interesting and the user may not agree with its choices. It's a script and should be easy to modify. Ultimately this should probably be configurable.

codechanges uses a program called decomment which guesses how to de-comment a file based on its file name and it's not always perfect.

Paul Bame

pmccabe(1), decomment(1)

17Jan2021
QR Code