summaryrefslogtreecommitdiff
path: root/merge-base.c
diff options
context:
space:
mode:
authorJunio C Hamano <junkio@cox.net>2006-05-21 08:34:54 (GMT)
committerJunio C Hamano <junkio@cox.net>2006-05-21 08:34:54 (GMT)
commit328b710d800dc3786fe2b8595e5553dc4a4af424 (patch)
tree451935aff364f1fd65340dbb79242780f04ea87a /merge-base.c
parente686eb9870d6b382f0760e3e859e93c8c2dfb31b (diff)
parent8824689884a5673f803d77cda499f83b84145a06 (diff)
downloadgit-328b710d800dc3786fe2b8595e5553dc4a4af424.zip
git-328b710d800dc3786fe2b8595e5553dc4a4af424.tar.gz
git-328b710d800dc3786fe2b8595e5553dc4a4af424.tar.bz2
Merge branch 'master' into js/fmt-patch
* master: (119 commits) diff family: add --check option Document that "git add" only adds non-ignored files. Add a conversion tool to migrate remote information into the config fetch, pull: ask config for remote information Fix build procedure for builtin-init-db read-tree -m -u: do not overwrite or remove untracked working tree files. apply --cached: do not check newly added file in the working tree Implement a --dry-run option to git-quiltimport Implement git-quiltimport Revert "builtin-grep: workaround for non GNU grep." builtin-grep: workaround for non GNU grep. builtin-grep: workaround for non GNU grep. git-am: use apply --cached apply --cached: apply a patch without using working tree. apply --numstat: show new name, not old name. Documentation/Makefile: create tarballs for the man pages and html files Allow pickaxe and diff-filter options to be used by git log. Libify the index refresh logic Builtin git-init-db Remove unnecessary local in get_ref_sha1. ...
Diffstat (limited to 'merge-base.c')
-rw-r--r--merge-base.c17
1 files changed, 11 insertions, 6 deletions
diff --git a/merge-base.c b/merge-base.c
index 07f5ab4..4856ca0 100644
--- a/merge-base.c
+++ b/merge-base.c
@@ -82,8 +82,9 @@ static struct commit *interesting(struct commit_list *list)
* commit B.
*
*
- * Another pathological example how this thing can fail to mark an ancestor
- * of a merge base as UNINTERESTING without the postprocessing phase.
+ * Another pathological example how this thing used to fail to mark an
+ * ancestor of a merge base as UNINTERESTING before we introduced the
+ * postprocessing phase (mark_reachable_commits).
*
* 2
* H
@@ -118,7 +119,9 @@ static struct commit *interesting(struct commit_list *list)
* D7 2 3 7 7 3 2 1 2
* E7 2 3 7 7 7 2 1 2
*
- * and we end up showing E as an interesting merge base.
+ * and we ended up showing E as an interesting merge base.
+ * The postprocessing phase re-injects C and continues traversal
+ * to contaminate D and E.
*/
static int show_all = 0;
@@ -247,10 +250,12 @@ int main(int argc, char **argv)
usage(merge_base_usage);
argc--; argv++;
}
- if (argc != 3 ||
- get_sha1(argv[1], rev1key) ||
- get_sha1(argv[2], rev2key))
+ if (argc != 3)
usage(merge_base_usage);
+ if (get_sha1(argv[1], rev1key))
+ die("Not a valid object name %s", argv[1]);
+ if (get_sha1(argv[2], rev2key))
+ die("Not a valid object name %s", argv[2]);
rev1 = lookup_commit_reference(rev1key);
rev2 = lookup_commit_reference(rev2key);
if (!rev1 || !rev2)