Re: Deprecation/Removal schedule

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Tue, Feb 06, 2007 at 11:45:24AM +0100, Johannes Schindelin wrote:

> > git gc (repack -d of it) is too dangerous in a shared repo: it breaks
> > the repos which depend on the master repository, have sent (by some
> > means) some objects over to the master, and accidentally removed
> > the reference, and were pruned afterwards.
> 
> We no longer call git-prune automatically in git-gc. You have to say 
> "git-gc --prune" to trigger that behaviour.

repack -d can lose objects, too:

# fully packed test repo with 2 commits
mkdir repo && cd repo
git init
touch foo
git add foo
git commit -m foo
echo bar >foo
git commit -a -m bar
git repack -a -d

# remember the latest commit
commit=`git rev-parse HEAD`

# now make it dangling
git reset --hard HEAD^
sleep 1
git reflog expire --expire=0 HEAD refs/heads/master

# now repack
git repack -a -d

# and it's gone
git-show $commit

-Peff
-
To unsubscribe from this list: send the line "unsubscribe git" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html

[Index of Archives]     [Linux Kernel Development]     [Gcc Help]     [IETF Annouce]     [DCCP]     [Netdev]     [Networking]     [Security]     [V4L]     [Bugtraq]     [Yosemite]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Linux SCSI]     [Fedora Users]