On Fri, Jan 29, 2010 at 5:10 PM, Avery Pennarun <apenwarr@xxxxxxxxx> wrote: > On Fri, Jan 29, 2010 at 5:01 PM, Daed Lee <daed@xxxxxxxxxxxxxxxxxx> wrote: >> Hi, I'm wondering if git can handle the following use. I have a >> project that started as private experiment, but has morphed into >> something I'd like to release publicly. I want to give others access >> to the repository, but only to commits after a certain cutoff date. >> Commits prior to that date have things like hardcoded file paths, >> emails, etc. that I'd like to keep private. >> >> I suppose the easiest thing to do would be to create a new repository, >> add the project files to it, and make that public, however I'd like to >> keep my private commit history along with the public commit history >> going forward in a single repository if possible. Is there a way to do >> this with git? > > You should probably split your history into two pieces: the "before" > and "after" parts. To split out the "after" part, you could use > git-filter-branch > (http://www.kernel.org/pub/software/scm/git/docs/v1.6.0.6/git-filter-branch.html). > Then, in your private copy of the repo, you could reattach the > "before" part of the history using git grafts. Going forward, if I made changes to my private repository (containing the "before" and "after" parts) and pushed to the public repository (containing only the "after" part), would this only push the commits in the "after" part? Essentially, I want to develop in my private repository and see my "before" and "after" changes when I "git log/show", but only push the "after" changes to the public repository. I've also been looking into private branches. Could I do something like keep my "before" changes on a private branch, and then do all future development on a public branch? Thanks for the pointer to git grafts, I'll have to read up on it further. -- 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