# Forcing re-reading files with unchanged stats

5 messages from 2011-01-12 to 2011-01-14. Participants: Maaartin, Tomas Carnecky, Jeff King, Junio C Hamano, Maaartin-1.
Thread: https://gitlist.dev/t/26266

## Maaartin, 2011-01-12 14:07

Subject: Forcing re-reading files with unchanged stats
Message-ID: <loom.20110112T150313-103@post.gmane.org>
URL: https://gitlist.dev/e/loom.20110112T150313-103%40post.gmane.org

```
There are files in my working tree which changes, but their size and mtime 
remains the same (I know it's strange, but it's useful). Can I make git to re-
read them all, so it recognizes the change? Ideally, using a configuration 
variable. The repo is fairly small, so speed is no issue here.

```

## Tomas Carnecky, 2011-01-13 03:12

Subject: Re: Forcing re-reading files with unchanged stats
Message-ID: <4D2E6D99.9060907@dbservice.com>
URL: https://gitlist.dev/e/4D2E6D99.9060907%40dbservice.com
In-Reply-To: <loom.20110112T150313-103@post.gmane.org>

```
  On 1/12/11 3:07 PM, Maaartin wrote:
> There are files in my working tree which changes, but their size and mtime
> remains the same (I know it's strange, but it's useful). Can I make git to re-

When can this be useful?

> read them all, so it recognizes the change? Ideally, using a configuration
> variable. The repo is fairly small, so speed is no issue here.

Try git update-index --refresh. I'm not aware of any config option, but 
you might want to look through man git-config.

tom

```

## Jeff King, 2011-01-13 03:32

Subject: Re: Forcing re-reading files with unchanged stats
Message-ID: <20110113033217.GA32661@sigill.intra.peff.net>
URL: https://gitlist.dev/e/20110113033217.GA32661%40sigill.intra.peff.net
In-Reply-To: <4D2E6D99.9060907@dbservice.com>

```
On Thu, Jan 13, 2011 at 04:12:25AM +0100, Tomas Carnecky wrote:

>  On 1/12/11 3:07 PM, Maaartin wrote:
> >There are files in my working tree which changes, but their size and mtime
> >remains the same (I know it's strange, but it's useful). Can I make git to re-
> 
> When can this be useful?
> 
> >read them all, so it recognizes the change? Ideally, using a configuration
> >variable. The repo is fairly small, so speed is no issue here.
> 
> Try git update-index --refresh. I'm not aware of any config option,
> but you might want to look through man git-config.

That won't work, as it respects the stat information. So does
--really-refresh. AFAIK, there isn't a way to tell update-index to
ignore start information, short of blowing away the index entirely, and
doing a read-tree to repopulate it.

I'm curious what this use case is, and whether it would be acceptable to
update something like ctime on the files to make them stat-dirty to git.

-Peff

```

## Junio C Hamano, 2011-01-13 07:26

Subject: Re: Forcing re-reading files with unchanged stats
Message-ID: <7vmxn51cy5.fsf@alter.siamese.dyndns.org>
URL: https://gitlist.dev/e/7vmxn51cy5.fsf%40alter.siamese.dyndns.org
In-Reply-To: <20110113033217.GA32661@sigill.intra.peff.net>

```
Jeff King <peff@peff.net> writes:

> I'm curious what this use case is, and whether it would be acceptable to
> update something like ctime on the files to make them stat-dirty to git.

Changing crlf-related attributes (or filter/smudge) after the fact,
perhaps?

```

## Maaartin-1, 2011-01-14 21:03

Subject: Re: Forcing re-reading files with unchanged stats
Message-ID: <4D30BA06.3090100@seznam.cz>
URL: https://gitlist.dev/e/4D30BA06.3090100%40seznam.cz
In-Reply-To: <20110113033217.GA32661@sigill.intra.peff.net>

```
On 11-01-13 04:32, Jeff King wrote:
> On Thu, Jan 13, 2011 at 04:12:25AM +0100, Tomas Carnecky wrote:
> 
>>  On 1/12/11 3:07 PM, Maaartin wrote:
>>> There are files in my working tree which changes, but their size and mtime
>>> remains the same (I know it's strange, but it's useful). Can I make git to re-
>>
>> When can this be useful?

Well, not really. I was asked to place a line containing a version
number and a fingerprint in each file (of course the fingerprint must
ignore this line), so I did. This gets done using a script, and I didn't
like always saying "yes" to Emacs complaining about editing a file
changed on the disk, so I reset the mtime. I really don't think it was
the brightest idea ever.

>>> read them all, so it recognizes the change? Ideally, using a configuration
>>> variable. The repo is fairly small, so speed is no issue here.
>>
>> Try git update-index --refresh. I'm not aware of any config option,
>> but you might want to look through man git-config.
> 
> That won't work, as it respects the stat information. So does
> --really-refresh. AFAIK, there isn't a way to tell update-index to
> ignore start information, short of blowing away the index entirely, and
> doing a read-tree to repopulate it.

Blowing away the index could work for me. I had to check if it's clean
(equal to the HEAD or working tree) first, so I loose no work. But this
is a bit too much work for making my mtime hack work.

> I'm curious what this use case is, and whether it would be acceptable to
> update something like ctime on the files to make them stat-dirty to git.

I'd suppose, Emacs does the same checks.

```
