From: Enrico Weigelt <weigelt@metux.de>
To: git@vger.kernel.org
Subject: Re: Sparse clones (Was: Re: [PATCH 1/2] upload-pack: support subtree packing)
Date: Fri, 13 Aug 2010 19:31:48 +0200 [thread overview]
Message-ID: <20100813173147.GB27540@nibiru.local> (raw)
In-Reply-To: <AANLkTikJhSVJw2hXkp0j6XA+k-J-AtSYzKWumjnqqsgz@mail.gmail.com>
* Elijah Newren <newren@gmail.com> wrote:
Hi folks,
as I'm doing many backups via git (eg. hourly sql dumps), I'd
like to cut off the history (eg. at the n'th past commit)
and reclaim the space - both on local and remote side (even
differently).
So let me propose another approach: fake-root's
Fake-roots are special refs that declare certain commit objects
as root-commits). Each time git walks down the history, it checks
whether the current commit is an fake-root and so treats it as
having no ancestor. That should be generic enough let everything
else (commit, push, gc, etc) work as usual.
The only tricky point is when to update remote fake-roots: the
remote should not cut off my local repo (unless explicitly asked).
So remote fake-roots should only be imported if the local/receiving
side has not the dropped commits anymore.
hmm, maybe it's even more wise to get one step back in history
and introduce fake-empty's (which also have no parents) instead
of fake-root's ? A fake-empty is imported as soon as the original
object is missing.
Of course, it's important that this feature has to be explicitly
enabled (maybe even on per-remote basis) to prevent security flaws.
cu
--
----------------------------------------------------------------------
Enrico Weigelt, metux IT service -- http://www.metux.de/
phone: +49 36207 519931 email: weigelt@metux.de
mobile: +49 151 27565287 icq: 210169427 skype: nekrad666
----------------------------------------------------------------------
Embedded-Linux / Portierung / Opensource-QM / Verteilte Systeme
----------------------------------------------------------------------
next prev parent reply other threads:[~2010-08-13 17:41 UTC|newest]
Thread overview: 16+ messages / expand[flat|nested] mbox.gz Atom feed top
2010-07-28 0:13 Sparse clones (Was: Re: [PATCH 1/2] upload-pack: support subtree packing) Elijah Newren
2010-07-28 1:05 ` Avery Pennarun
2010-07-28 3:06 ` Nguyen Thai Ngoc Duy
2010-07-28 3:38 ` Nguyen Thai Ngoc Duy
2010-07-28 3:58 ` Avery Pennarun
2010-07-28 6:12 ` Sverre Rabbelier
2010-07-28 7:59 ` Nguyen Thai Ngoc Duy
2010-07-28 14:48 ` Sverre Rabbelier
2010-07-28 7:11 ` Nguyen Thai Ngoc Duy
2010-07-28 3:31 ` Elijah Newren
2010-07-31 22:36 ` Elijah Newren
2010-07-28 3:36 ` Nguyen Thai Ngoc Duy
2010-07-28 3:59 ` Elijah Newren
2010-07-29 10:29 ` Nguyen Thai Ngoc Duy
2010-08-13 17:31 ` Enrico Weigelt [this message]
2010-08-13 19:19 ` Truncating history (Re: Sparse clones) Jonathan Nieder
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
List information: http://vger.kernel.org/majordomo-info.html
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20100813173147.GB27540@nibiru.local \
--to=weigelt@metux.de \
--cc=git@vger.kernel.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
Code repositories for project(s) associated with this public inbox
https://80x24.org/mirrors/git.git
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).