Code

git-merge: leave sensible reflog message when used as the first level UI.
authorJunio C Hamano <junkio@cox.net>
Fri, 26 Jan 2007 23:09:02 +0000 (15:09 -0800)
committerJunio C Hamano <junkio@cox.net>
Fri, 26 Jan 2007 23:38:21 +0000 (15:38 -0800)
It used to throw potentially multi-line log message at reflog.
Just record the heads that were given to be merged at the command
line and the action.

Revert the removal of the check in "git-update-ref -m" I made earlier
which was only a work-around for this.

Signed-off-by: Junio C Hamano <junkio@cox.net>
builtin-update-ref.c
git-merge.sh

index f2506fa9762bd9d868076710f38dfc9137186828..b34e5987dd256e0b7d9fae46fe89f66dd18ad91f 100644 (file)
@@ -23,6 +23,8 @@ int cmd_update_ref(int argc, const char **argv, const char *prefix)
                        msg = argv[++i];
                        if (!*msg)
                                die("Refusing to perform update with empty message.");
+                       if (strchr(msg, '\n'))
+                               die("Refusing to perform update with \\n in message.");
                        continue;
                }
                if (!strcmp("-d", argv[i])) {
index 7b590268edb44cc5455fe9bdbcbfc0698a6fb800..656869101a86c7a593a489408818725ec85c15fa 100755 (executable)
@@ -7,7 +7,6 @@ USAGE='[-n] [--no-commit] [--squash] [-s <strategy>] [-m=<merge-message>] <commi
 
 SUBDIRECTORY_OK=Yes
 . git-sh-setup
-set_reflog_action "merge $*"
 require_work_tree
 cd_to_toplevel
 
@@ -217,6 +216,7 @@ head=$(git-rev-parse --verify "$head_arg"^0) || usage
 
 # All the rest are remote heads
 test "$#" = 0 && usage ;# we need at least one remote head.
+set_reflog_action "merge $*"
 
 remoteheads=
 for remote