path: root/tree.c
diff options
authorJunio C Hamano <>2005-05-08 04:55:21 (GMT)
committerJunio C Hamano <>2005-05-08 04:55:21 (GMT)
commit192268c197c0f143989662f648b1d900014e7d89 (patch)
tree54db11a2f64efe7aba6cdedba4398f7228f6c646 /tree.c
parent0f1e4f04013fec0ba8a51a93fc5d3ec6df706168 (diff)
Add git-update-cache --replace option.
When "path" exists as a file or a symlink in the index, an attempt to add "path/file" is refused because it results in file vs directory conflict. Similarly when "path/file1", "path/file2", etc. exist, an attempt to add "path" as a file or a symlink is refused. With git-update-cache --replace, these existing entries that conflict with the entry being added are automatically removed from the cache, with warning messages. Signed-off-by: Junio C Hamano <>
Diffstat (limited to 'tree.c')
1 files changed, 1 insertions, 1 deletions
diff --git a/tree.c b/tree.c
index d9777bf..a978c53 100644
--- a/tree.c
+++ b/tree.c
@@ -18,7 +18,7 @@ static int read_one_entry(unsigned char *sha1, const char *base, int baselen, co
memcpy(ce->name, base, baselen);
memcpy(ce->name + baselen, pathname, len+1);
memcpy(ce->sha1, sha1, 20);
- return add_cache_entry(ce, 1);
+ return add_cache_entry(ce, ADD_CACHE_OK_TO_ADD);
static int read_tree_recursive(void *buffer, unsigned long size,