diff --git a/Documentation/rev-list-options.txt b/Documentation/rev-list-options.txt index 3aa38097e6350a02c50873d5c670e108003fab22..9e207136649421bd1ff211a137769b2eccf813ba 100644 --- a/Documentation/rev-list-options.txt +++ b/Documentation/rev-list-options.txt @@ -264,10 +264,10 @@ With '\--pretty' format other than oneline (for obvious reasons), this causes the output to have two extra lines of information taken from the reflog. By default, 'commit@\{Nth}' notation is used in the output. When the starting commit is specified as -'commit@{now}', output also uses 'commit@\{timestamp}' notation +'commit@\{now}', output also uses 'commit@\{timestamp}' notation instead. Under '\--pretty=oneline', the commit message is prefixed with this information on the same line. - ++ Cannot be combined with '\--reverse'. See also linkgit:git-reflog[1]. diff --git a/Documentation/user-manual.txt b/Documentation/user-manual.txt index f4216899427ab2a24f92dd20da9b43c01c9ef11b..e99921108e20f50e4c3f5d0e4beec37fbdf648f9 100644 --- a/Documentation/user-manual.txt +++ b/Documentation/user-manual.txt @@ -2825,8 +2825,8 @@ You can also add a "+" to force the update each time: $ git config remote.example.fetch +master:ref/remotes/example/master ------------------------------------------------- -Don't do this unless you're sure you won't mind "git-fetch" possibly -throwing away commits on mybranch. +Don't do this unless you're sure you won't mind "git fetch" possibly +throwing away commits on 'example/master'. Also note that all of the above configuration can be performed by directly editing the file .git/config instead of using diff --git a/builtin-reflog.c b/builtin-reflog.c index 0c34e378199064e87aa09caf0fa0a2346333ec69..196fa03b7fac795475a0e12f0fa3b443cb34bd1d 100644 --- a/builtin-reflog.c +++ b/builtin-reflog.c @@ -604,8 +604,8 @@ static int cmd_reflog_delete(int argc, const char **argv, const char *prefix) continue; } - if (!dwim_ref(argv[i], spec - argv[i], sha1, &ref)) { - status |= error("%s points nowhere!", argv[i]); + if (!dwim_log(argv[i], spec - argv[i], sha1, &ref)) { + status |= error("no reflog for '%s'", argv[i]); continue; } diff --git a/t/t1410-reflog.sh b/t/t1410-reflog.sh index 73f830db2374e751fb46e25b345e860979b9dd05..5b24f05573221afb3dc472e78a443ba718db3c60 100755 --- a/t/t1410-reflog.sh +++ b/t/t1410-reflog.sh @@ -188,16 +188,30 @@ test_expect_success 'delete' ' test_tick && git commit -m tiger C && - test 5 = $(git reflog | wc -l) && + HEAD_entry_count=$(git reflog | wc -l) + master_entry_count=$(git reflog show master | wc -l) + + test $HEAD_entry_count = 5 && + test $master_entry_count = 5 && + git reflog delete master@{1} && git reflog show master > output && - test 4 = $(wc -l < output) && + test $(($master_entry_count - 1)) = $(wc -l < output) && + test $HEAD_entry_count = $(git reflog | wc -l) && ! grep ox < output && + master_entry_count=$(wc -l < output) + + git reflog delete HEAD@{1} && + test $(($HEAD_entry_count -1)) = $(git reflog | wc -l) && + test $master_entry_count = $(git reflog show master | wc -l) && + + HEAD_entry_count=$(git reflog | wc -l) + git reflog delete master@{07.04.2005.15:15:00.-0700} && git reflog show master > output && - test 3 = $(wc -l < output) && + test $(($master_entry_count - 1)) = $(wc -l < output) && ! grep dragon < output '