From: Johannes Sixt Date: Sun, 11 Oct 2009 13:07:06 GMT Subject: Re: combine git repo historically Message-ID: <200910111507.06926.j.sixt@viscovery.net> In-Reply-To: On Sonntag, 11. Oktober 2009, Jakub Narebski wrote: > Christian Couder writes: > > $ git checkout -b repo1-branch1 remote/repo1/branch1 > > $ git checkout N -- . > > $ export GIT_AUTHOR_NAME= > > $ export GIT_AUTHOR_EMAIL= > > $ export GIT_AUTHOR_DATE= > > $ git commit -a This would not preserver the committer, but in particular the committer date is rather important for history traversal. You really don't want to change it. I used a much more elaborate pipleine involving git-commit-tree because I did not think about this simple procedure: > $ git cat-file commit N > COMMIT_N >[ $ edit COMMIT_N ] > $ git hash-object -t commit -w COMMIT_N Thanks for this tip, Jakub. Christian, one thing that worries me is that 'git cat-file commit foo' returns the replacement (bar) instead of the original (foo). Is it intended? There is no way to retrieve the original commit using plumbing unless the replacement is removed. Am I right? -- Hannes