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

Re: Feature request: Allow extracting revisions into directories

From
Robert Clausecker <fuzxxl@gmail.com>
Date
Feb 4, 2013, 12:14 UTC
Message-ID
<1359980045.24730.32.camel@t520>
In-Reply-To
<510F9907.7010107@drmicha.warpmail.net>
Am Montag, den 04.02.2013, 12:18 +0100 schrieb Michael J Gruber:
Show 11 quoted lines
> Sitaram has said much about the Unix philosophy already, and Konstantin
> gave a variant of checkout. Just two more cents:
> 
> How would you copy a directory tree? I presume you wouldn't use "tar c .
> | tar -xC gothere", but what would be your worklflow?
> 
> Depending on what you actually want to achieve, "git clone -b branch"
> and removing the superfluous .git-dir might be a viable option. (Beware
> the hardlinks, though.)
>
> Michael
The specific workflow I am planning is this:

I have a server that hosts a bare git repository. This git repository contains a branch production. Whenever somebody pushes to production a hook automatically puts a copy of the current production branch into /var/www/foo. I could of course use pull for that but it just does not feels right. Why should I have a repository twice on the server?

Adding an option to put the tree of an arbitrary revision into a directory is something that improves usability as it is an operation semantically different from tar. Saying that you can already get this with git archive and ad-hoc unpacking is as saying: You don't need cp. Just tar the file and untar it somewhere else.

Of course that is a possibility but it does not not feel right and is not intuitive. Adding this feature won't cause feature creep but would rather add an operation that makes sense in some scenarios and reduces the dependencies on other commands that might not be available on other platforms (If you care about that).

Also, this functionality is in full accordance with the Unix principle as it is a basic operation ("put tree into files") and not something super special. Also, it always feels like a hack if you do this ad-hoc unpacking. Like "git can't do it the simple way".

Yours, Robert Clausecker
Previous: Michael J GruberNext: Tomas Carnecky
Message 15 of 22 in “Feature request: Allow extracting revisions into directories”
  1. Robert ClauseckerFeb 3, 2013
  2. Sitaram ChamartyFeb 3, 2013
  3. Robert ClauseckerFeb 3, 2013
  4. Sitaram ChamartyFeb 4, 2013
  5. Phil HordFeb 5, 2013
  6. Robert ClauseckerFeb 9, 2013
  7. Junio C HamanoFeb 9, 2013
  8. Junio C HamanoFeb 10, 2013
  9. Robert ClauseckerFeb 10, 2013
  10. Jonathan NiederFeb 10, 2013
  11. Robert ClauseckerFeb 10, 2013
  12. Jonathan NiederFeb 10, 2013
  13. Konstantin KhomoutovFeb 3, 2013
  14. Michael J GruberFeb 4, 2013
  15. Robert ClauseckerFeb 4, 2013
  16. Tomas CarneckyFeb 4, 2013
  17. Junio C HamanoFeb 4, 2013
  18. Sitaram ChamartyFeb 5, 2013
  19. Andrew ArdillFeb 4, 2013
  20. Junio C HamanoFeb 4, 2013
  21. Andreas SchwabFeb 4, 2013
  22. Thomas KochFeb 10, 2013

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.