Teach parse_commit_buffer about grafting.
commit5da5c8f4cf4fb4e1cbccca4e7cebe70b77cf0b00
authorJunio C Hamano <junkio@cox.net>
Sat, 30 Jul 2005 07:58:28 +0000 (30 00:58 -0700)
committerJunio C Hamano <junkio@cox.net>
Sun, 31 Jul 2005 18:58:49 +0000 (31 11:58 -0700)
tree329b5863cdb047fec0633d13bebfdfeb19c21a69
parent60036a41e1f25ee3e89142fa92e203dbbc6145cc
Teach parse_commit_buffer about grafting.

Introduce a new file $GIT_DIR/info/grafts (or $GIT_GRAFT_FILE)
which is a list of "fake commit parent records".  Each line of
this file is a commit ID, followed by parent commit IDs, all
40-byte hex SHA1 separated by a single SP in between.  The
records override the parent information we would normally read
from the commit objects, allowing both adding "fake" parents
(i.e. grafting), and pretending as if a commit is not a child of
some of its real parents (i.e. cauterizing).

Signed-off-by: Junio C Hamano <junkio@cox.net>
cache.h
commit.c
sha1_file.c