Re: [ANNOUNCE] GIT 1.5.5.1
- From
Brandon Casey <casey@nrlssc.navy.mil>
- Date
- Apr 22, 2008, 00:23 UTC
- Message-ID
- <480D2FEE.3010904@nrlssc.navy.mil>
- In-Reply-To
- <20080421235610.GB2631@dpotapov.dyndns.org>
Dmitry Potapov wrote:
> Johannes' patch removed this option, which IMHO was a significant user > interface improvement.
Unless I missed something, this option has not been removed. The original purpose for its existence (which was to cause git-gc to call git-prune) has been removed. The call to git-prune within git-gc will remove _loose_ unreferenced objects, but _packed_ unreferenced objects are removed by repack. The --prune option to git-gc is still used to adjust the call to git-repack so that packed unreferenced objects are discarded.
Show 18 quoted lines
> diff --git a/Documentation/git-clone.txt b/Documentation/git-clone.txt > index 9758243..c1bf814 100644 > --- a/Documentation/git-clone.txt > +++ b/Documentation/git-clone.txt > @@ -65,10 +65,12 @@ OPTIONS > + > *NOTE*: this is a possibly dangerous operation; do *not* use > it unless you understand what it does. If you clone your > -repository using this option, then delete branches in the > -source repository and then run linkgit:git-gc[1] using the > -'--prune' option in the source repository, it may remove > -objects which are referenced by the cloned repository. > +repository using this option and then delete a branch or use > +any other git command that makes any previous existing commit > +unreachable, then after some time linkgit:git-gc[1] may remove > +unreachable objects, and this will break the cloned repository. > +Because some git commands may run git-gc, it may happen at any > +time after gc.pruneExpire time since commits became unreachable.
I agree that something should be said here about shared repositories, but I think this wording is a little complicated (disclosure: I also submitted some text for this a few weeks ago :). Of course something is better than nothing.
Here's the blurb I submitted if you're interested: +repository using this option and then delete branches in the +source repository, some objects may become unreferenced (or dangling). +These objects may be removed by normal git operations (such as git-commit[1]) +which automatically call git-gc[1]. If these objects are removed and +were referenced by the cloned repository, then the cloned repository +will become corrupt.
-brandon