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

Re: git-archive and tar options

From
René Scharfe <rene.scharfe@lsrfire.ath.cx>
Date
Jul 14, 2011, 17:16 UTC
Message-ID
<4E1F2468.6080409@lsrfire.ath.cx>
In-Reply-To
<20110714015656.GA20136@sigill.intra.peff.net>
Am 14.07.2011 03:56, schrieb Jeff King:
Show 19 quoted lines
> On Wed, Jul 13, 2011 at 06:34:32PM -0500, Neal Kreitzinger wrote:
>> Working syntax starting points for git-archive and tar:
>>
>> git archive --format=tar -o my.tar HEAD Web/Templates/
>> tar -cvf my.tar --transform 's,^Web/Templates/,myPath/myWeb/Templates/,' 
>> WebPortal/Templates/
>>
>> Failed syntax attempts for feeding tar option to git-archive:
>>
>> git archive --format=tar -o my.tar HEAD --transform 
>> 's,^Web/Templates/,myPath/myWeb/Templates/,' WebPortal/Templates/
>> error: unknown option `transform'
>>
>> git archive --format=tar -o my.tar --transform 
>> 's,^Web/Templates/,myPath/myWeb/Templates/,' HEAD WebPortal/Templates/
>> error: unknown option `transform'
> 
> Yeah, that won't work, because there is no such option. We do have
> "--prefix", but I suspect that's not flexible enough for what you want.

If you only need a single subdirectory with a custom prefix you could do something like this (variables only used to keep the lines short):

	$ subdir=WebPortal/Templates
	$ prefix=myPath/myWeb/Templates/
	$ (cd "$subdir" && git archive --prefix="$prefix" HEAD) >my.tar

The output file can be specified with -o as well, of course, but you'd either need to use an absolute path or add "../" for each directory level you descend into (-o ../../my.tar in this case).

René
Previous: Jeff KingNext: Jeff King
Message 3 of 22 in “git-archive and tar options”
  1. Neal KreitzingerJul 13, 2011
  2. Jeff KingJul 14, 2011
  3. René ScharfeJul 14, 2011
  4. Jeff KingJul 14, 2011
  5. René ScharfeJul 14, 2011
  6. Jeff KingJul 14, 2011
  7. Jakub NarebskiJul 14, 2011
  8. Junio C HamanoJul 14, 2011
  9. Jeff KingJul 14, 2011
  10. Junio C HamanoJul 14, 2011
  11. René ScharfeJul 15, 2011
  12. Neal KreitzingerJul 18, 2011
  13. René ScharfeJul 18, 2011
  14. Jakub NarebskiJul 14, 2011
  15. Neal KreitzingerJul 18, 2011
  16. René ScharfeJul 18, 2011
  17. Neal KreitzingerJul 19, 2011
  18. René ScharfeJul 19, 2011
  19. Neal KreitzingerJul 21, 2011
  20. Neal KreitzingerJul 21, 2011
  21. Andreas SchwabJul 14, 2011
  22. Sylvain RabotJul 19, 2011

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.