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

Re: [PATCH 11/11] "git prune" is safe

From
Junio C Hamano <gitster@pobox.com>
Date
Aug 27, 2013, 19:17 UTC
Message-ID
<xmqqy57naqp1.fsf@gitster.dls.corp.google.com>
In-Reply-To
<860155028.34610.1377626750550.JavaMail.ngmail@webmail19.arcor-online.net>
Thomas Ackermann <th.acker@arcor.de> writes:
Show 30 quoted lines
> "git prune" is safe in case of concurrent accesses to a repository
> but using it in such a case is not recommended.
>
> Signed-off-by: Thomas Ackermann <th.acker@arcor.de>
> ---
>  Documentation/user-manual.txt | 12 +++---------
>  1 file changed, 3 insertions(+), 9 deletions(-)
>
> diff --git a/Documentation/user-manual.txt b/Documentation/user-manual.txt
> index 9149846..ea843e6 100644
> --- a/Documentation/user-manual.txt
> +++ b/Documentation/user-manual.txt
> @@ -3299,17 +3299,11 @@ state, you can just prune all unreachable objects:
>  $ git prune
>  ------------------------------------------------
>  
> -and they'll be gone. But you should only run `git prune` on a quiescent
> +and they'll be gone. (You should only run `git prune` on a quiescent
>  repository--it's kind of like doing a filesystem fsck recovery: you
>  don't want to do that while the filesystem is mounted.
> -
> -(The same is true of `git fsck` itself, btw, but since
> -`git fsck` never actually *changes* the repository, it just reports
> -on what it found, `git fsck` itself is never 'dangerous' to run.
> -Running it while somebody is actually changing the repository can cause
> -confusing and scary messages, but it won't actually do anything bad. In
> -contrast, running `git prune` while somebody is actively changing the
> -repository is a *BAD* idea).
> +`git prune` is designed not to cause any harm in such cases of concurrent
> +accesses to a repository but you might receive confusing or scary messages.)

These new two lines are good, but did we lose the mention of "fsck" that will report what is not dangling as dangling and such when run concurrently with other operations? Is that intended?

>  
>  [[recovering-from-repository-corruption]]
>  Recovering from repository corruption
Previous: Thomas Ackermann
Message 28 of 28 in “Modernize user-manual”
  1. 0/11 Modernize user-manualThomas Ackermann, Aug 27, 2013
  2. 01/11 Call it "Git User Manual" and remove reference to very old Git versionThomas Ackermann, Aug 27, 2013
  3. Junio C HamanoAug 27, 2013
  4. Lars Gullik BjønnesAug 27, 2013
  5. Junio C HamanoAug 29, 2013
  6. 02/11 Use current "detached HEAD" messageThomas Ackermann, Aug 27, 2013
  7. Junio C HamanoAug 29, 2013
  8. 03/11 Use current output for "git repack"Thomas Ackermann, Aug 27, 2013
  9. Junio C HamanoAug 29, 2013
  10. 04/11 Use "git merge" instead of "git pull ."Thomas Ackermann, Aug 27, 2013
  11. Junio C HamanoAug 27, 2013
  12. Jonathan NiederAug 27, 2013
  13. Junio C HamanoAug 27, 2013
  14. 05/11 Fix some typos and improve wordingThomas Ackermann, Aug 27, 2013
  15. Junio C HamanoAug 27, 2013
  16. Junio C HamanoAug 29, 2013
  17. 06/11 Simplify "How to make a commit"Thomas Ackermann, Aug 27, 2013
  18. Junio C HamanoAug 27, 2013
  19. Junio C HamanoAug 29, 2013
  20. 07/11 Improve section "Manipulating branches"Thomas Ackermann, Aug 27, 2013
  21. Junio C HamanoAug 27, 2013
  22. 08/11 Improve section "Merging multiple trees"Thomas Ackermann, Aug 27, 2013
  23. Junio C HamanoAug 27, 2013
  24. 09/11 Remove unnecessary historical note from "Object storage format"Thomas Ackermann, Aug 27, 2013
  25. Junio C HamanoAug 27, 2013
  26. 10/11 Remove irrelevant reference from "Tying it all together"Thomas Ackermann, Aug 27, 2013
  27. 11/11 "git prune" is safeThomas Ackermann, Aug 27, 2013
  28. Junio C HamanoAug 27, 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.