threads / patch / 10837

patchCall refresh_cache() when updating the user index for --only commits.

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

## tl;dr

2 messages between Nov 12, 2007 and Nov 12, 2007. Diffs are folded; open one to read it.

replies: 1people: 2as markdown or json

Kristian Høgsberg· Nov 12, 2007, 20:48 UTC · lore

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(-)
Show changes to builtin-commit.c +1 −0
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· Nov 12, 2007, 23:01 UTC · re: Kristian Høgsberg · lore

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

Kristian Høgsberg <krh@redhat.com> writes:
Show 21 quoted lines
> 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.

← back to recent threads