about summary refs log tree commit diff
path: root/third_party/git/t/t1414-reflog-walk.sh
diff options
context:
space:
mode:
authorVincent Ambo <mail@tazj.in>2021-09-21T10·03+0300
committerVincent Ambo <mail@tazj.in>2021-09-21T11·29+0300
commit43b1791ec601732ac31195df96781a848360a9ac (patch)
treedaae8d638343295d2f1f7da955e556ef4c958864 /third_party/git/t/t1414-reflog-walk.sh
parent2d8e7dc9d9c38127ec4ebd13aee8e8f586a43318 (diff)
chore(3p/git): Unvendor git and track patches instead r/2903
This was vendored a long time ago under the expectation that keeping
it in sync with cgit would be easier this way, but it has proven not
to be a big issue.

On the other hand, a vendored copy of git is an annoying maintenance
burden. It is much easier to rebase the single (dottime) patch that we
have.

This removes the vendored copy of git and instead passes the git
source code to cgit via `pkgs.srcOnly`, which includes the applied
patch so that cgit can continue rendering dottime.

Change-Id: If31f62dea7ce688fd1b9050204e9378019775f2b
Diffstat (limited to 'third_party/git/t/t1414-reflog-walk.sh')
-rwxr-xr-xthird_party/git/t/t1414-reflog-walk.sh134
1 files changed, 0 insertions, 134 deletions
diff --git a/third_party/git/t/t1414-reflog-walk.sh b/third_party/git/t/t1414-reflog-walk.sh
deleted file mode 100755
index 1181a9fb28e3..000000000000
--- a/third_party/git/t/t1414-reflog-walk.sh
+++ /dev/null
@@ -1,134 +0,0 @@
-#!/bin/sh
-
-test_description='various tests of reflog walk (log -g) behavior'
-. ./test-lib.sh
-
-test_expect_success 'set up some reflog entries' '
-	test_commit one &&
-	test_commit two &&
-	git checkout -b side HEAD^ &&
-	test_commit three &&
-	git merge --no-commit master &&
-	echo evil-merge-content >>one.t &&
-	test_tick &&
-	git commit --no-edit -a
-'
-
-do_walk () {
-	git log -g --format="%gd %gs" "$@"
-}
-
-test_expect_success 'set up expected reflog' '
-	cat >expect.all <<-EOF
-	HEAD@{0} commit (merge): Merge branch ${SQ}master${SQ} into side
-	HEAD@{1} commit: three
-	HEAD@{2} checkout: moving from master to side
-	HEAD@{3} commit: two
-	HEAD@{4} commit (initial): one
-	EOF
-'
-
-test_expect_success 'reflog walk shows expected logs' '
-	do_walk >actual &&
-	test_cmp expect.all actual
-'
-
-test_expect_success 'reflog can limit with --no-merges' '
-	grep -v merge expect.all >expect &&
-	do_walk --no-merges >actual &&
-	test_cmp expect actual
-'
-
-test_expect_success 'reflog can limit with pathspecs' '
-	grep two expect.all >expect &&
-	do_walk -- two.t >actual &&
-	test_cmp expect actual
-'
-
-test_expect_success 'pathspec limiting handles merges' '
-	# we pick up:
-	#   - the initial commit of one
-	#   - the checkout back to commit one
-	#   - the evil merge which touched one
-	sed -n "1p;3p;5p" expect.all >expect &&
-	do_walk -- one.t >actual &&
-	test_cmp expect actual
-'
-
-test_expect_success '--parents shows true parents' '
-	# convert newlines to spaces
-	echo $(git rev-parse HEAD HEAD^1 HEAD^2) >expect &&
-	git rev-list -g --parents -1 HEAD >actual &&
-	test_cmp expect actual
-'
-
-test_expect_success 'walking multiple reflogs shows all' '
-	# We expect to see all entries for all reflogs, but interleaved by
-	# date, with order on the command line breaking ties. We
-	# can use "sort" on the separate lists to generate this,
-	# but note two tricks:
-	#
-	#   1. We use "{" as the delimiter, which lets us skip to the reflog
-	#      date specifier as our second field, and then our "-n" numeric
-	#      sort ignores the bits after the timestamp.
-	#
-	#   2. POSIX leaves undefined whether this is a stable sort or not. So
-	#      we use "-k 1" to ensure that we see HEAD before master before
-	#      side when breaking ties.
-	{
-		do_walk --date=unix HEAD &&
-		do_walk --date=unix side &&
-		do_walk --date=unix master
-	} >expect.raw &&
-	sort -t "{" -k 2nr -k 1 <expect.raw >expect &&
-	do_walk --date=unix HEAD master side >actual &&
-	test_cmp expect actual
-'
-
-test_expect_success 'date-limiting does not interfere with other logs' '
-	do_walk HEAD@{1979-01-01} HEAD >actual &&
-	test_cmp expect.all actual
-'
-
-test_expect_success 'min/max age uses entry date to limit' '
-	# Flip between commits one and two so each ref update actually
-	# does something (and does not get optimized out). We know
-	# that the timestamps of those commits will be before our "min".
-
-	git update-ref -m before refs/heads/minmax one &&
-
-	test_tick &&
-	min=$test_tick &&
-	git update-ref -m min refs/heads/minmax two &&
-
-	test_tick &&
-	max=$test_tick &&
-	git update-ref -m max refs/heads/minmax one &&
-
-	test_tick &&
-	git update-ref -m after refs/heads/minmax two &&
-
-	cat >expect <<-\EOF &&
-	max
-	min
-	EOF
-	git log -g --since=$min --until=$max --format=%gs minmax >actual &&
-	test_cmp expect actual
-'
-
-test_expect_success 'walk prefers reflog to ref tip' '
-	head=$(git rev-parse HEAD) &&
-	one=$(git rev-parse one) &&
-	ident="$GIT_COMMITTER_NAME <$GIT_COMMITTER_EMAIL> $GIT_COMMITTER_DATE" &&
-	echo "$head $one $ident	broken reflog entry" >>.git/logs/HEAD &&
-
-	echo $one >expect &&
-	git log -g --format=%H -1 >actual &&
-	test_cmp expect actual
-'
-
-test_expect_success 'rev-list -g complains when there are no reflogs' '
-	test_must_fail git rev-list -g
-'
-
-test_done