On Fri, 09 Oct 2009, Johannes Sixt wrote: > bill lam schrieb: > > I have two git repos, no branches. > > > > repo 1. > > emptyrootcommit -- A ... M > > > > repo 2. > > emptyrootcommit -- N ... Z > > > > N was evolved from M but the time gap is large, how can I combine them > > into one repo > > > > emptyrootcommit -- A ... M -- N ... Z > > > > so that snapshots N .. Z will not be changed. > > $ echo $(git rev-parse N) $(git rev-parse M) >> .git/info/grafts > $ git filter-branch --tag-name-filter cat -- --all --not M > > i.e. you graft the older history right before the younger history, then > you use git filter-branch to rewrite the parentship of the younger commits. Thanks, graft is new to me. I tested it works but it needs first issue git fetch /path/to/repo1 within repo2 to fetch tip M from repo1 into repo2, is it correct? If I also want to fetch also all objects from repo1, what will the command to do it. Christian Couder also mentioned the git-replace command, how to stitch with it? -- regards, ==================================================== GPG key 1024D/4434BAB3 2008-08-24 gpg --keyserver subkeys.pgp.net --recv-keys 4434BAB3 -- 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