diff options
author | Junio C Hamano <gitster@pobox.com> | 2017-12-22 20:48:38 (GMT) |
---|---|---|
committer | Junio C Hamano <gitster@pobox.com> | 2017-12-22 20:48:38 (GMT) |
commit | b6825b5c8e8b58943511f2576475accf1593486e (patch) | |
tree | de8bc8a4fdf954c8870cb1a1d60f3d38b781d12f /merge-recursive.c | |
parent | 936d1b989416a95f593bf81ccae8ac62cd83f279 (diff) | |
parent | 65170c07d466b18364e0d2b6a360900c073b600f (diff) | |
download | git-b6825b5c8e8b58943511f2576475accf1593486e.zip git-b6825b5c8e8b58943511f2576475accf1593486e.tar.gz git-b6825b5c8e8b58943511f2576475accf1593486e.tar.bz2 |
Merge branch 'ew/empty-merge-with-dirty-index-maint' into ew/empty-merge-with-dirty-index
* ew/empty-merge-with-dirty-index-maint:
merge-recursive: avoid incorporating uncommitted changes in a merge
move index_has_changes() from builtin/am.c to merge.c for reuse
t6044: recursive can silently incorporate dirty changes in a merge
Diffstat (limited to 'merge-recursive.c')
-rw-r--r-- | merge-recursive.c | 7 |
1 files changed, 7 insertions, 0 deletions
diff --git a/merge-recursive.c b/merge-recursive.c index 2ecf495..780f81a 100644 --- a/merge-recursive.c +++ b/merge-recursive.c @@ -1952,6 +1952,13 @@ int merge_trees(struct merge_options *o, } if (oid_eq(&common->object.oid, &merge->object.oid)) { + struct strbuf sb = STRBUF_INIT; + + if (index_has_changes(&sb)) { + err(o, _("Dirty index: cannot merge (dirty: %s)"), + sb.buf); + return 0; + } output(o, 0, _("Already up to date!")); *result = head; return 1; |