From: Junio C Hamano Date: Wed, 27 Feb 2008 20:53:26 +0000 (-0800) Subject: Merge branch 'db/checkout' X-Git-Tag: v1.5.5-rc0~133 X-Git-Url: http://git.tremily.us/?a=commitdiff_plain;h=5a4d707a6d914fcea302e299fc18892d9e42c767;p=git.git Merge branch 'db/checkout' * db/checkout: (21 commits) checkout: error out when index is unmerged even with -m checkout: show progress when checkout takes long time while switching branches Add merge-subtree back checkout: updates to tracking report builtin-checkout.c: Remove unused prefix arguments in switch_branches path checkout: work from a subdirectory checkout: tone down the "forked status" diagnostic messages Clean up reporting differences on branch switch builtin-checkout.c: fix possible usage segfault checkout: notice when the switched branch is behind or forked Build in checkout Move code to clean up after a branch change to branch.c Library function to check for unmerged index entries Use diff -u instead of diff in t7201 Move create_branch into a library file Build-in merge-recursive Add "skip_unmerged" option to unpack_trees. Discard "deleted" cache entries after using them to update the working tree Send unpack-trees debugging output to stderr Add flag to make unpack_trees() not print errors. ... Conflicts: Makefile --- 5a4d707a6d914fcea302e299fc18892d9e42c767 diff --cc Makefile index 8d9f11e75,40fa41b5f..a5b6eebf1 --- a/Makefile +++ b/Makefile @@@ -327,8 -318,7 +327,8 @@@ LIB_OBJS = alloc.o merge-file.o path-list.o help.o unpack-trees.o $(DIFF_OBJS) \ color.o wt-status.o archive-zip.o archive-tar.o shallow.o utf8.o \ convert.o attr.o decorate.o progress.o mailmap.o symlinks.o remote.o \ - transport.o bundle.o walker.o parse-options.o ws.o archive.o \ - transport.o bundle.o walker.o parse-options.o ws.o archive.o branch.o ++ transport.o bundle.o walker.o parse-options.o ws.o archive.o branch.o \ + alias.o BUILTIN_OBJS = \ builtin-add.o \ diff --cc unpack-trees.c index 56c1ffbc1,470fa02e0..3e448d897 --- a/unpack-trees.c +++ b/unpack-trees.c @@@ -590,9 -624,10 +625,10 @@@ static int merged_entry(struct cache_en * a match. */ if (same(old, merge)) { - memcpy(merge, old, offsetof(struct cache_entry, name)); + copy_cache_entry(merge, old); } else { - verify_uptodate(old, o); + if (verify_uptodate(old, o)) + return -1; invalidate_ce_path(old); } }