git/list[1] front-page[2] threads[3] people[4] search[5] about
 

Re: [PATCH v2 3/3] archive: do not read .gitattributes in working directory

From
René Scharfe <rene.scharfe@lsrfire.ath.cx>
Date
Apr 13, 2009, 12:18 UTC
Message-ID
<49E32D9F.2050906@lsrfire.ath.cx>
In-Reply-To
<49E316CD.7030001@lsrfire.ath.cx>
René Scharfe schrieb:
> I
> think it makes sense to create a separate script for the new tests and
> eventually move the existing archive attribute tests there.
Something like this?
diff --git a/t/t5001-archive-attr.sh b/t/t5001-archive-attr.sh
new file mode 100755
index 0000000..b754f21
--- /dev/null
+++ b/t/t5001-archive-attr.sh
@@ -0,0 +1,62 @@
+#!/bin/sh
+
+test_description='git archive attribute tests'
+
+. ./test-lib.sh
+
+SUBSTFORMAT=%H%n
+
+test_expect_success 'setup' '
+	echo ignored >ignored &&
+	echo ignored export-ignore >>.git/info/attributes &&
+	git add ignored &&
+
+	echo ignored by tree >ignored-by-tree &&
+	echo ignored-by-tree export-ignore >.gitattributes &&
+	git add ignored-by-tree .gitattributes &&
+
+	echo ignored by worktree >ignored-by-worktree &&
+	echo ignored-by-worktree export-ignore >.gitattributes &&
+	git add ignored-by-worktree &&
+
+	printf "A\$Format:%s\$O" "$SUBSTFORMAT" >nosubstfile &&
+	printf "A\$Format:%s\$O" "$SUBSTFORMAT" >substfile1 &&
+	printf "A not substituted O" >substfile2 &&
+	echo "substfile?" export-subst >>.git/info/attributes &&
+	git add nosubstfile substfile1 substfile2 &&
+
+	git commit -m.
+'
+
+test_expect_success 'git archive' '
+	git archive HEAD >archive.tar &&
+	(mkdir archive && cd archive && "$TAR" xf -) <archive.tar
+'
+
+test_expect_success 'git archive with worktree attributes' '
+	git archive --fix-attributes HEAD >worktree.tar &&
+	(mkdir worktree && cd worktree && "$TAR" xf -) <worktree.tar
+'
+
+test_expect_success 'export-ignore' '
+	test ! -e archive/ignored &&
+	test ! -e archive/ignored-by-tree &&
+	test   -e archive/ignored-by-worktree &&
+	test ! -e worktree/ignored &&
+	test   -e worktree/ignored-by-tree &&
+	test ! -e worktree/ignored-by-worktree
+'
+
+test_expect_success 'export-subst' '
+	git log "--pretty=format:A${SUBSTFORMAT}O" HEAD >substfile1.expected &&
+	test_cmp nosubstfile archive/nosubstfile &&
+	test_cmp substfile1.expected archive/substfile1 &&
+	test_cmp substfile2 archive/substfile2
+'
+
+test_expect_success 'git tar-tree vs. git archive with worktree attributes' '
+	git tar-tree HEAD >tar-tree.tar &&
+	test_cmp worktree.tar tar-tree.tar
+'
+
+test_done
Previous: René ScharfeNext: René Scharfe
Message 9 of 15 in “support "in-tree attributes" for git-archive”
  1. 0/3 support "in-tree attributes" for git-archiveNguyễn Thái Ngọc Duy, Apr 9, 2009
  2. 1/3 archive: add shortcuts for --format and --prefixNguyễn Thái Ngọc Duy, Apr 9, 2009
  3. 2/3 attr: add GIT_ATTR_INDEX "direction"Nguyễn Thái Ngọc Duy, Apr 9, 2009
  4. 3/3 archive: do not read .gitattributes in working directoryNguyễn Thái Ngọc Duy, Apr 9, 2009
  5. Junio C HamanoApr 9, 2009
  6. Nguyen Thai Ngoc DuyApr 9, 2009
  7. Junio C HamanoApr 11, 2009
  8. René ScharfeApr 13, 2009
  9. René ScharfeApr 13, 2009
  10. René ScharfeApr 13, 2009
  11. Junio C HamanoApr 14, 2009
  12. René ScharfeApr 14, 2009
  13. Junio C HamanoApr 16, 2009
  14. Junio C HamanoApr 9, 2009
  15. Nguyen Thai Ngoc DuyApr 9, 2009

Read the whole thread, see it on lore, or plain text.

$ cat FOOTERMessages come from the public archive at lore.kernel.org/git, fetched every hour. The front page is chosen and written each morning by an AI editor and can be wrong; the threads themselves are the record. About and API. For agents: an MCP server at https://gitlist.dev/mcp, and any thread, story or person page as Markdown by adding .md to its URL (or sending Accept: text/markdown). Details in /llms.txt.