Merge branch 'dj/log-graph-with-no-walk'

"git log --graph --no-walk A B..." is a otcnflicting request that
asks nonsense; no-walk tells us show discrete points in the
history, while graph asks to draw connections between these
discrete points. Forbid the combination.

* dj/log-graph-with-no-walk:
  revision: forbid combining --graph and --no-walk
This commit is contained in:
Junio C Hamano 2015-03-25 12:54:22 -07:00
commit dbd04eba01
6 changed files with 23 additions and 7 deletions

View File

@ -680,6 +680,7 @@ endif::git-rev-list[]
given on the command line. Otherwise (if `sorted` or no argument
was given), the commits are shown in reverse chronological order
by commit time.
Cannot be combined with `--graph`.
--do-walk::
Overrides a previous `--no-walk`.
@ -782,6 +783,7 @@ you would get an output like this:
on the left hand side of the output. This may cause extra lines
to be printed in between commits, in order for the graph history
to be drawn properly.
Cannot be combined with `--no-walk`.
+
This enables parent rewriting, see 'History Simplification' below.
+

View File

@ -2339,6 +2339,8 @@ int setup_revisions(int argc, const char **argv, struct rev_info *revs, struct s
if (revs->reflog_info && revs->graph)
die("cannot combine --walk-reflogs with --graph");
if (revs->no_walk && revs->graph)
die("cannot combine --no-walk with --graph");
if (!revs->reflog_info && revs->grep_filter.use_reflog_filter)
die("cannot use --grep-reflog without --walk-reflogs");

View File

@ -99,7 +99,7 @@ do
test_cmp "$expect" actual
'
test "$cmd" != diff || continue
case "$cmd" in diff|show) continue;; esac
test_expect_success "$cmd --graph $verb COLUMNS (big change)" '
COLUMNS=200 git $cmd $args --graph >output
@ -127,7 +127,7 @@ do
test_cmp "$expect" actual
'
test "$cmd" != diff || continue
case "$cmd" in diff|show) continue;; esac
test_expect_success "$cmd --graph $verb not enough COLUMNS (big change)" '
COLUMNS=40 git $cmd $args --graph >output
@ -155,7 +155,7 @@ do
test_cmp "$expect" actual
'
test "$cmd" != diff || continue
case "$cmd" in diff|show) continue;; esac
test_expect_success "$cmd --graph $verb statGraphWidth config" '
git -c diff.statGraphWidth=26 $cmd $args --graph >output
@ -196,7 +196,7 @@ do
test_cmp expect actual
'
test "$cmd" != diff || continue
case "$cmd" in diff|show) continue;; esac
test_expect_success "$cmd --stat-width=width --graph with big change" '
git $cmd $args --stat-width=40 --graph >output
@ -236,7 +236,7 @@ do
test_cmp expect actual
'
test "$cmd" != diff || continue
case "$cmd" in diff|show) continue;; esac
test_expect_success "$cmd --stat=width --graph with big change is balanced" '
git $cmd $args --stat-width=60 --graph >output &&
@ -270,7 +270,7 @@ do
test_cmp "$expect" actual
'
test "$cmd" != diff || continue
case "$cmd" in diff|show) continue;; esac
test_expect_success "$cmd --graph $verb COLUMNS (long filename)" '
COLUMNS=200 git $cmd $args --graph >output
@ -299,7 +299,7 @@ do
test_cmp "$expect" actual
'
test "$cmd" != diff || continue
case "$cmd" in diff|show) continue;; esac
test_expect_success COLUMNS_CAN_BE_1 \
"$cmd --graph $verb prefix greater than COLUMNS (big change)" '

View File

@ -887,4 +887,8 @@ test_expect_success GPG 'log --graph --show-signature for merged tag' '
grep "^| | gpg: Good signature" actual
'
test_expect_success 'log --graph --no-walk is forbidden' '
test_must_fail git log --graph --no-walk
'
test_done

View File

@ -35,4 +35,8 @@ test_expect_success 'repack does not lose detached HEAD' '
'
test_expect_success 'rev-list --graph --no-walk is forbidden' '
test_must_fail git rev-list --graph --no-walk HEAD
'
test_done

View File

@ -124,4 +124,8 @@ test_expect_success '--quiet suppresses diff' '
test_cmp expect actual
'
test_expect_success 'show --graph is forbidden' '
test_must_fail git show --graph HEAD
'
test_done