From: J. Bruce Fields Date: Thu, 08 Mar 2007 16:32:39 GMT Subject: Re: Advice on strategy for "temporary" commits Message-ID: <20070308163239.GH22713@fieldses.org> In-Reply-To: On Thu, Mar 08, 2007 at 02:39:46PM +0000, David Tweed wrote: > Hi, > > I've been working with my system taking automatic > hourly git snapshots of (filtered portions of) my home > directory for a couple of months. Being able to look > back to what files looked like mid-afternoon yesterday, > or on 18 Nov, is proving modestly useful. However, > I'm thinking about adding "temporary" commits every > ten minutes which then get discarded after 5 hours-ish > (in addition to the long-term archival hourly commits). > This is motivated by the desire to have finer granularity > for testing/bisecting short-term regressions but not having > ridiculously fine-grained changes clogging up the > archive long-term. (I'm aware that with the commits > being primarily taken on a timed basis I'll have more > non-compiling changes than is usual in a repository, so > that this may not turn out to be useful in practice.) > > Looking through the git docs, it looks like the most > natural way of doing this is to make the 10-min commits > (via cron & tagging them under a special tag "temporary > commits only" directory) and then use > > git-rebase --onto start-tag end-tag branch > > every so often (via cron again) to chop the older > temporary commits between start-tag and end-tag > out of the database. You don't want to run git-rebase out of a cron job, because it may require human interaction. The simplest thing might be to make the temporary commits onto a separate branch, and throw that branch away periodically. --b.