6

If my friend has a git repository on his laptop, and we are both connect to the same LAN, what's the absolute simplest way for me to clone that repository?

As far as I can tell, the options are:

  • Getting SSH access to his machine
  • Installing a web server and using git instaweb

But neither of these are particularly simple (or, at least, as simple as hg serve)… Is there anything better?

David Wolever
  • 148,955
  • 89
  • 346
  • 502

5 Answers5

9
cd project
git daemon --reuseaddr --base-path=.git --export-all --verbose

To access: git pull git://HOST/

See answer https://stackoverflow.com/a/377293/794407

Community
  • 1
  • 1
bara
  • 2,964
  • 2
  • 26
  • 24
3

I don't remember what all the options mean, so it may take some playing, but I think git daemon does what you want. I have had it work in the past.

psycotica0
  • 3,130
  • 2
  • 19
  • 16
3

For cloning only, you want to use git daemon --export-all $PWD You can configure it to be read/write, but that is very insecure.

git-instaweb does not allow you to clone a repository.

Of course using github is a convenient way to share repositories without lots of configuration (though setting up an ssh server is usually not very difficult).

Seth Robertson
  • 30,608
  • 7
  • 64
  • 57
1

Not exactly point-and-click, but this might help:

http://scie.nti.st/2007/11/14/hosting-git-repositories-the-easy-and-secure-way

Also, if you have access to his drive via any type of share (NFS, Samba, etc) then you can clone via the share name.

Oh, and there's also git-daemon.

Alex Howansky
  • 50,515
  • 8
  • 78
  • 98
0

I was wondering if laptops (behind NAT) could remotely address each other (with logical rather than hostnames) via XMPP, if a tunneling of SSH over XMPP existed. I found http://code.google.com/p/xmpp-ssh/ but it seems old and unloved, and not clear whether intermediate servers need to support the XMPP extensions it uses.

Dan Brickley
  • 531
  • 7
  • 9