From: Junio C Hamano <gitster@pobox.com>
To: git@vger.kernel.org
Subject: [PATCH 2/5] diff-index: keep the original index intact
Date: Wed, 5 Aug 2009 02:15:43 -0700 [thread overview]
Message-ID: <1249463746-21538-3-git-send-email-gitster@pobox.com> (raw)
In-Reply-To: <1249463746-21538-2-git-send-email-gitster@pobox.com>
When comparing the index and a tree, we used to read the contents of the
tree into stage #1 of the index and compared them with stage #0. In order
not to lose sight of entries originally unmerged in the index, we hoisted
them to stage #3 before reading the tree.
Commit d1f2d7e (Make run_diff_index() use unpack_trees(), not read_tree(),
2008-01-19) changed all this. These days, we instead use unpack_trees()
API to traverse the tree and compare the contents with the index, without
modifying the index at all. There is no reason to hoist the unmerged
entries to stage #3 anymore.
Signed-off-by: Junio C Hamano <gitster@pobox.com>
---
diff-lib.c | 18 ------------------
1 files changed, 0 insertions(+), 18 deletions(-)
diff --git a/diff-lib.c b/diff-lib.c
index ad5b6ca..2a82dac 100644
--- a/diff-lib.c
+++ b/diff-lib.c
@@ -309,22 +309,6 @@ static int show_modified(struct rev_info *revs,
}
/*
- * This turns all merge entries into "stage 3". That guarantees that
- * when we read in the new tree (into "stage 1"), we won't lose sight
- * of the fact that we had unmerged entries.
- */
-static void mark_merge_entries(void)
-{
- int i;
- for (i = 0; i < active_nr; i++) {
- struct cache_entry *ce = active_cache[i];
- if (!ce_stage(ce))
- continue;
- ce->ce_flags |= CE_STAGEMASK;
- }
-}
-
-/*
* This gets a mix of an existing index and a tree, one pathname entry
* at a time. The index entry may be a single stage-0 one, but it could
* also be multiple unmerged entries (in which case idx_pos/idx_nr will
@@ -435,8 +419,6 @@ int run_diff_index(struct rev_info *revs, int cached)
struct unpack_trees_options opts;
struct tree_desc t;
- mark_merge_entries();
-
ent = revs->pending.objects[0].item;
tree_name = revs->pending.objects[0].name;
tree = parse_tree_indirect(ent->sha1);
--
1.6.4.18.g07a4a
next prev parent reply other threads:[~2009-08-05 9:16 UTC|newest]
Thread overview: 22+ messages / expand[flat|nested] mbox.gz Atom feed top
2009-08-05 9:15 [PATCH 0/5] Revamping "git status" Junio C Hamano
2009-08-05 9:15 ` [PATCH 1/5] diff-index: report unmerged new entries Junio C Hamano
2009-08-05 9:15 ` Junio C Hamano [this message]
2009-08-05 9:15 ` [PATCH 3/5] wt-status.c: rework the way changes to the index and work tree are summarized Junio C Hamano
2009-08-05 9:15 ` [PATCH 4/5] status: show worktree status of conflicted paths separately Junio C Hamano
2009-08-05 9:15 ` [PATCH 5/5] shortstatus: a new command Junio C Hamano
2009-08-06 15:33 ` Jeff King
2009-08-06 16:23 ` Breaking "git status" (was Re: [PATCH 5/5] shortstatus: a new command) Junio C Hamano
2009-08-06 16:42 ` Jeff King
2009-08-06 19:06 ` Breaking "git status" Junio C Hamano
2009-08-06 19:57 ` Breaking "git status" (was Re: [PATCH 5/5] shortstatus: a new command) Sverre Rabbelier
2009-08-06 14:53 ` [PATCH 4/5] status: show worktree status of conflicted paths separately Jeff King
2009-08-06 14:46 ` [PATCH 3/5] wt-status.c: rework the way changes to the index and work tree are summarized Jeff King
2009-08-06 15:50 ` Junio C Hamano
2009-08-05 9:49 ` [PATCH 0/5] Revamping "git status" Thomas Rast
2009-08-05 16:57 ` Junio C Hamano
2009-08-05 17:37 ` Thomas Rast
2009-08-05 17:40 ` Thomas Rast
2009-08-05 18:05 ` Junio C Hamano
2009-08-05 18:52 ` Thomas Rast
2009-08-05 20:02 ` Junio C Hamano
2009-08-05 20:14 ` Thomas Rast
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=1249463746-21538-3-git-send-email-gitster@pobox.com \
--to=gitster@pobox.com \
--cc=git@vger.kernel.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).