On Sat, 9 Jul 2005, Eric W. Biederman wrote: > > The current intelligent fetch currently has a problem that it cannot > be used to bootstrap a repository. If you don't have an ancestor > of what you are fetching you can't fetch it.
Sure you can. See the current "git clone". It's actually quite good, it's a pleasure to use now that it gives updates on how much it has done. Just do git clone src dest to try it out. It starts out silent (for big repositories) because it takes a while to get the whole rev list, but once it gets going it's quite nice and gives a nice progress report.. It uses the exact same server side code that "git-fetch-pack" does (ie it just starts "git-upload-pack" on the server). Now, one thing you cannot do is to start a totally new _project_ on the server side. In order to do a "git-send-pack", you need to first create a directory and do a "git-init-db" on the remote side. So to create a new project, what you need to do is src$ ssh target target$ mkdir new-project target$ cd new-project target$ git-init-db target$ exit src$ git-send-pack target:new-project master and you've now sent your "master" branch to the new project at "target:new-project". You can even populate multiple branches at a time: just list them all (you do have to list them, because by default "git-send-pack" will update the _common_ branches, and since the other end is empty, there obviously are no common branches to start with). Ahh, you should even be able to automate the sending of all branches by doing git-send-pack target:new-project $(cd .git ; find refs -type f) I think - that will end up being equivalent to a "reverse clone". The smart clients are doing pretty damn well, I think. Linus - To unsubscribe from this list: send the line "unsubscribe git" in the body of a message to [EMAIL PROTECTED] More majordomo info at http://vger.kernel.org/majordomo-info.html