path: root/diffcore.h
diff options
authorJunio C Hamano <>2007-01-05 09:25:18 (GMT)
committerJunio C Hamano <>2007-01-07 06:57:42 (GMT)
commite9c8409900fc84cd7721117c98dfe01acd535aa2 (patch)
tree9904b7d43e86e423dbfc8454a5e7306c24d7cb73 /diffcore.h
parent13e86efbeae5994a85cc482b3964db7298c5c6ea (diff)
diff-index --cached --raw: show tree entry on the LHS for unmerged entries.
This updates the way diffcore represents an unmerged pair somewhat. It used to be that entries with mode=0 on both sides were used to represent an unmerged pair, but now it has an explicit flag. This is to allow diff-index --cached to report the entry from the tree when the path is unmerged in the index. This is used in updating "git reset <tree> -- <path>" to restore absense of the path in the index from the tree. Signed-off-by: Junio C Hamano <>
Diffstat (limited to 'diffcore.h')
1 files changed, 2 insertions, 2 deletions
diff --git a/diffcore.h b/diffcore.h
index 2249bc2..1ea8067 100644
--- a/diffcore.h
+++ b/diffcore.h
@@ -54,9 +54,9 @@ struct diff_filepair {
unsigned source_stays : 1; /* all of R/C are copies */
unsigned broken_pair : 1;
unsigned renamed_pair : 1;
+ unsigned is_unmerged : 1;
-#define DIFF_PAIR_UNMERGED(p) \
- (!DIFF_FILE_VALID((p)->one) && !DIFF_FILE_VALID((p)->two))
+#define DIFF_PAIR_UNMERGED(p) ((p)->is_unmerged)
#define DIFF_PAIR_RENAME(p) ((p)->renamed_pair)