{"thread":{"id":"24088","subject":"[PATCH] commit: use value of GIT_REFLOG_ACTION env variable as reflog message","startedAt":"2010-06-12T16:42:35Z","lastAt":"2010-06-12T16:42:35Z","messageCount":1,"participants":["Christian Couder"],"isPatch":true,"patchVersion":1,"patchTotal":null},"messages":[{"id":"143582","messageId":"20100612164236.4195.23396.chriscool@tuxfamily.org","threadId":"24088","inReplyTo":null,"subject":"[PATCH] commit: use value of GIT_REFLOG_ACTION env variable as reflog message","fromName":"Christian Couder","fromEmail":"chriscool@tuxfamily.org","sentAt":"2010-06-12T16:42:35Z","receivedAt":"2010-06-12T16:42:35Z","isPatch":true,"sender":{"key":"christian.couder@gmail.com","avatar":"https://avatars.githubusercontent.com/u/208954?v=4"},"body":"The environment variable GIT_REFLOG_ACTION was used by git-commit.sh,\nbut when it was converted to a builtin\n(f5bbc3225c4b073a7ff3218164a0c820299bc9c6, Port git commit to C,\nNov 8 2007) this was lost.\n\nLet's use it again as it is more user friendly when reverting or\ncherry-picking to see \"revert\" or \"cherry-pick\" in the reflog rather\nthan to just see \"commit\".\n\nSigned-off-by: Christian Couder <chriscool@tuxfamily.org>\n---\n builtin/commit.c              |   13 +++++++++----\n t/t3501-revert-cherry-pick.sh |    6 ++++--\n 2 files changed, 13 insertions(+), 6 deletions(-)\n\ndiff --git a/builtin/commit.c b/builtin/commit.c\nindex 9d21904..1de1bc8 100644\n--- a/builtin/commit.c\n+++ b/builtin/commit.c\n@@ -1257,13 +1257,16 @@ int cmd_commit(int argc, const char **argv, const char *prefix)\n \t}\n \n \t/* Determine parents */\n+\treflog_msg = getenv(\"GIT_REFLOG_ACTION\");\n \tif (initial_commit) {\n-\t\treflog_msg = \"commit (initial)\";\n+\t\tif (!reflog_msg)\n+\t\t\treflog_msg = \"commit (initial)\";\n \t} else if (amend) {\n \t\tstruct commit_list *c;\n \t\tstruct commit *commit;\n \n-\t\treflog_msg = \"commit (amend)\";\n+\t\tif (!reflog_msg)\n+\t\t\treflog_msg = \"commit (amend)\";\n \t\tcommit = lookup_commit(head_sha1);\n \t\tif (!commit || parse_commit(commit))\n \t\t\tdie(\"could not parse HEAD commit\");\n@@ -1274,7 +1277,8 @@ int cmd_commit(int argc, const char **argv, const char *prefix)\n \t\tstruct strbuf m = STRBUF_INIT;\n \t\tFILE *fp;\n \n-\t\treflog_msg = \"commit (merge)\";\n+\t\tif (!reflog_msg)\n+\t\t\treflog_msg = \"commit (merge)\";\n \t\tpptr = &commit_list_insert(lookup_commit(head_sha1), pptr)->next;\n \t\tfp = fopen(git_path(\"MERGE_HEAD\"), \"r\");\n \t\tif (fp == NULL)\n@@ -1297,7 +1301,8 @@ int cmd_commit(int argc, const char **argv, const char *prefix)\n \t\tif (allow_fast_forward)\n \t\t\tparents = reduce_heads(parents);\n \t} else {\n-\t\treflog_msg = \"commit\";\n+\t\tif (!reflog_msg)\n+\t\t\treflog_msg = \"commit\";\n \t\tpptr = &commit_list_insert(lookup_commit(head_sha1), pptr)->next;\n \t}\n \ndiff --git a/t/t3501-revert-cherry-pick.sh b/t/t3501-revert-cherry-pick.sh\nindex 7f85815..e4fbf7a 100755\n--- a/t/t3501-revert-cherry-pick.sh\n+++ b/t/t3501-revert-cherry-pick.sh\n@@ -47,7 +47,8 @@ test_expect_success 'cherry-pick after renaming branch' '\n \tgit cherry-pick added &&\n \ttest $(git rev-parse HEAD^) = $(git rev-parse rename2) &&\n \ttest -f opos &&\n-\tgrep \"Add extra line at the end\" opos\n+\tgrep \"Add extra line at the end\" opos &&\n+\tgit reflog -1 | grep cherry-pick\n \n '\n \n@@ -57,7 +58,8 @@ test_expect_success 'revert after renaming branch' '\n \tgit revert added &&\n \ttest $(git rev-parse HEAD^) = $(git rev-parse rename1) &&\n \ttest -f spoo &&\n-\t! grep \"Add extra line at the end\" spoo\n+\t! grep \"Add extra line at the end\" spoo &&\n+\tgit reflog -1 | grep revert\n \n '\n \n-- \n1.7.1.468.g58a2d\n"}]}