# measuring the % change between two commits

4 messages from 2012-02-23 to 2012-02-24. Participants: Sitaram Chamarty, Junio C Hamano.
Thread: https://gitlist.dev/t/29707

## Sitaram Chamarty, 2012-02-23 11:30

Subject: measuring the % change between two commits
Message-ID: <CAMK1S_gXQaE+RZxe4S7vqAyPka9N9PAoe+557FaLO+JJoJFshA@mail.gmail.com>
URL: https://gitlist.dev/e/CAMK1S_gXQaE%2BRZxe4S7vqAyPka9N9PAoe%2B557FaLO%2BJJoJFshA%40mail.gmail.com

```
I'm trying to come up with a % measure for the changes between two commits.

I don't mind how precisely it is calculated, since this is only for a
thresholding purpose where we can adjust the threshold if the way it
is calculated is not what we think it should be.

The logging options that put out a % figure only do so for
copied/renamed files.  Merely modified files do not get a % figure
attached.

I could do a --numstat and then do a 'wc -l' on each file I guess, but
I was hoping to avoid that.

--dirstat gives you a percentage but does not count the top level directory.

Any ideas?

-- 
Sitaram

```

## Junio C Hamano, 2012-02-23 20:09

Subject: Re: measuring the % change between two commits
Message-ID: <7vty2h2txt.fsf@alter.siamese.dyndns.org>
URL: https://gitlist.dev/e/7vty2h2txt.fsf%40alter.siamese.dyndns.org
In-Reply-To: <CAMK1S_gXQaE+RZxe4S7vqAyPka9N9PAoe+557FaLO+JJoJFshA@mail.gmail.com>

```
Sitaram Chamarty <sitaramc@gmail.com> writes:

> I could do a --numstat and then do a 'wc -l' on each file I guess, but
> I was hoping to avoid that.

Either you do it or the git core does it, but I am not sure if the use
case is common enough to warrant additional code on the core side.

```

## Junio C Hamano, 2012-02-23 20:13

Subject: Re: measuring the % change between two commits
Message-ID: <7vpqd52tqr.fsf@alter.siamese.dyndns.org>
URL: https://gitlist.dev/e/7vpqd52tqr.fsf%40alter.siamese.dyndns.org
In-Reply-To: <CAMK1S_gXQaE+RZxe4S7vqAyPka9N9PAoe+557FaLO+JJoJFshA@mail.gmail.com>

```
Sitaram Chamarty <sitaramc@gmail.com> writes:

> I could do a --numstat and then do a 'wc -l' on each file I guess, but
> I was hoping to avoid that.
>
> --dirstat gives you a percentage but does not count the top level directory.

Note that dirstat is not about "how much damage was caused to the entire
codebase".  It only measures "How is the damage this patch causes
distributed across directories it touches".  It was unclear from your "a %
measure for the changes between two commits" which one you meant, but I am
guessing from your "--numstat and wc -l" reference that you are asking for
the former, e.g. we have 300,000 lines of code and between these two
commits 10,000 lines changed, hence we updated 3% of the codebase during
that period".

```

## Sitaram Chamarty, 2012-02-24 17:05

Subject: Re: measuring the % change between two commits
Message-ID: <CAMK1S_hHCQ2SxhD=GiyHTzd=rgZF5aT7XdWn5-HEv1Xsr_+KvQ@mail.gmail.com>
URL: https://gitlist.dev/e/CAMK1S_hHCQ2SxhD%3DGiyHTzd%3DrgZF5aT7XdWn5-HEv1Xsr_%2BKvQ%40mail.gmail.com
In-Reply-To: <7vpqd52tqr.fsf@alter.siamese.dyndns.org>

```
On Fri, Feb 24, 2012 at 1:43 AM, Junio C Hamano <gitster@pobox.com> wrote:
> Sitaram Chamarty <sitaramc@gmail.com> writes:
>
>> I could do a --numstat and then do a 'wc -l' on each file I guess, but
>> I was hoping to avoid that.
>>
>> --dirstat gives you a percentage but does not count the top level directory.
>
> Note that dirstat is not about "how much damage was caused to the entire
> codebase".  It only measures "How is the damage this patch causes
> distributed across directories it touches".  It was unclear from your "a %
> measure for the changes between two commits" which one you meant, but I am
> guessing from your "--numstat and wc -l" reference that you are asking for
> the former, e.g. we have 300,000 lines of code and between these two
> commits 10,000 lines changed, hence we updated 3% of the codebase during
> that period".

yes; I wanted an overall figure.  Clearly I misunderstood dirstat
then.  (Should have guessed from the "...may not total to 100%..."
comment somewhere.

Thanks

-- 
Sitaram

```
