Re: Stopping to use Github / Don't push to Github(!!)
Thomas Adam <[email protected]>
| Newsgroups | gmane.comp.window-managers.fvwm.devel |
|---|---|
| Message-ID | <20171010184010.fpeh33wulcganr2u@laptop> |
On Mon, Oct 09, 2017 at 08:07:56PM +0100, Thomas Adam wrote:
> So we could go down this route---indeed, I see nothing wrong with the analysis
> at any rate.
So back of the envelope calculation, just limited to $git_repo/fvwm/*, I
calculate the following:
$ for i in *; do; c="$(git --no-pager blame "$i" | grep -c '^\^')"; \
[ $c -gt 0 ] && echo "$i:$c"; done | sort -t':' -k2 -nr > ./sorted
This scans all the files in the specified directory, and uses git-blame to
determine how many lines in each file are unchanged since Jason commited the
original revision. These are totted up and dumped to a file.
I get the following:
icons.c:127
fvwm.c:107
builtins.c:104
decorations.c:63
virtual.c:55
screen.h:55
colormaps.c:54
module_interface.c:50
events.c:47
menus.c:36
misc.c:31
placement.c:24
read.c:22
functions.c:20
focus.c:13
fvwm.h:12
borders.c:12
bindings.c:10
style.c:9
add_window.c:9
menus.h:5
misc.h:2
Adding up all those numbers (which indicates those lines not changed since the
original commit), that comes to:
876
So -- that's 876 lines of cose *untouched* since the original import of FVWM
into CVS. But, now we need to work out what that is as a percentage.
* Total lines of all files identified in the files above:
$ while read n; do f=$(cut -d: -f1 <<< "$n"); \
echo $(wc -l $f); done < ./sorted > ./file_count
Then:
$ awk -F' ' '{t += $1}; END {print t};' ./file_coun
This gives:
50507
Hence, a quick check says that:
(50507 - 876) = 49640 = (49640 / 50507) * 100 = ~98%
Or:
Only ~2% of Jason's initial commit remains untouched to date. From a quick
glance, a lot of that seems to be comments, but there's a few code changes
there.
Just in terms of the main fvwm src directory, we've rewritten pretty much all
of it, and could easily finish off the remaining 2%.
I haven't done any analysis of other areas of the repo though.
-- Thomas Adam