Re: Obliterating a commit
- From
Wincent Colaiuta <win@wincent.com>
- Date
- Sep 30, 2007, 14:13 UTC
- Message-ID
- <57945943-2355-447D-9474-89834BADB312@wincent.com>
- In-Reply-To
- <1f6632e50709300515h57f4b4ffh9a18fef29b134f13@mail.gmail.com>
El 30/9/2007, a las 14:15, Matthias Kestenholz escribió:
Show 7 quoted lines
> If you use ssh to push your changes (that is, you are not copying > or rsyncing packfiles), only commits, trees and blobs, which are > reachable > through the DAG will be published. Commits and Blobs which are only > reachable through your reflog are not published, since the reflog > only applies > to your local repository.
Ah, this is good to know. Yes, I do principally publish by pushing to a central repo, but I wanted to really destroy the objects just in case in the future I or somebody else ever clones my local repo.
Show 6 quoted lines
> The simplest thing you could do is remove the reflog for HEAD and > refs/heads/master respectively your current branch and run 'git prune' > afterwards (if you have not repacked > already, otherwise you'd need to run 'git repack -a -d' or 'git gc' > to get > rid of blobs inside your packfile.
Thanks very much, Matthias. Blowing away those reflogs and running git-prune worked and it's doesn't require too much fiddling.
Cheers, Wincent