# [PATCH] Call refresh_cache() when updating the user index for --only commits.

2 messages from 2007-11-12 to 2007-11-12. Participants: Kristian Høgsberg, Junio C Hamano.
Thread: https://gitlist.dev/t/10837

## Kristian Høgsberg, 2007-11-12 20:48

Subject: [PATCH] Call refresh_cache() when updating the user index for --only commits.
Message-ID: <1194900502-8987-1-git-send-email-krh@redhat.com>
URL: https://gitlist.dev/e/1194900502-8987-1-git-send-email-krh%40redhat.com

```
We're guaranteeing the user that the index will be stat-clean after
git commit. Thus, we need to call refresh_cache() for the user index too,
in the 'git commit <paths>' case.

Signed-off-by: Kristian Høgsberg <krh@redhat.com>
---
 builtin-commit.c |    1 +
 1 files changed, 1 insertions(+), 0 deletions(-)

diff --git a/builtin-commit.c b/builtin-commit.c
index 5011b8b..35205ef 100644
--- a/builtin-commit.c
+++ b/builtin-commit.c
@@ -109,6 +109,7 @@ static char *prepare_index(const char **files, const char *prefix)
 
 	/* update the user index file */
 	add_files_to_cache(verbose, prefix, files);
+	refresh_cache(REFRESH_QUIET);
 	if (write_cache(fd, active_cache, active_nr) || close(fd))
 		die("unable to write new_index file");
 
-- 
1.5.3.5.1762.g9a09d-dirty

```

## Junio C Hamano, 2007-11-12 23:01

Subject: Re: [PATCH] Call refresh_cache() when updating the user index for --only commits.
Message-ID: <7vmytj1319.fsf@gitster.siamese.dyndns.org>
URL: https://gitlist.dev/e/7vmytj1319.fsf%40gitster.siamese.dyndns.org
In-Reply-To: <1194900502-8987-1-git-send-email-krh@redhat.com>

```
Kristian Høgsberg <krh@redhat.com> writes:

> We're guaranteeing the user that the index will be stat-clean after
> git commit. Thus, we need to call refresh_cache() for the user index too,
> in the 'git commit <paths>' case.
>
> Signed-off-by: Kristian Høgsberg <krh@redhat.com>
> ---
>  builtin-commit.c |    1 +
>  1 files changed, 1 insertions(+), 0 deletions(-)
>
> diff --git a/builtin-commit.c b/builtin-commit.c
> index 5011b8b..35205ef 100644
> --- a/builtin-commit.c
> +++ b/builtin-commit.c
> @@ -109,6 +109,7 @@ static char *prepare_index(const char **files, const char *prefix)
>  
>  	/* update the user index file */
>  	add_files_to_cache(verbose, prefix, files);
> +	refresh_cache(REFRESH_QUIET);
>  	if (write_cache(fd, active_cache, active_nr) || close(fd))
>  		die("unable to write new_index file");
>  

Ah.  This is the real index file that is left for the user after
a partial commit "git-commit <path>" returns.

The other refresh_cache() after this one does not matter if we
did not have hook scripts, but it is not very easy to cheaply
detect if we are not going to run any hooks so let's leave it
there. 

Thanks.

```
