Git clone/pull across local network [closed]
I'm trying to clone/pull a repository in another PC using Ubuntu Quantal. I have done this on Windows before but I don't know what is the problem on ubuntu. I tried these:
git clone file:////pc-name/repo/repository.git
git clone file:////192.168.100.18/repo/repository.git
git clone file:////user:pass@pc-name/repo/repository.git
git clone smb://c-pc/repo/repository.git
git clone //192.168.100.18/repo/repository.git
Always I got:
Cloning into 'intranet'...
fatal: '//c-pc/repo/repository.git' does not appear to be a git repository
fatal: The remote end hung up unexpectedly
or
fatal: repository '//192.168.100.18/repo/repository.git' does not exist
More:
- The other PC has username and password
- Is not networking issue, I can access and ping it.
- I just installed git doing
apt-get install git
(dependencies installed) - I'm running git from the terminal (I'm not using git-shell)
What is causing this and how to fix this? Any help would be great!
UPDATE
I have cloned the repo on Windows using git clone //192.168.100.18/repo/intranet.git
without problems. So, the repo is accessible and exist! Maybe the problem is due user credentials?
Solution 1:
It depends on how you have your server configured to serve content.
If over ssh:
git clone [email protected]:repo/repository.git
or if a webserver is providing the content (http or https)
https://[email protected]/repo/repository.git
or if available via a file path:
git clone file://path/to/repo
or if the server is running the git daemon:
git clone git://192.168.100.18/repo
Solution 2:
The manual for git-clone
says:
Git natively supports ssh, git, http, https, ftp, ftps, and rsync protocols
Note that SMB is not in the list.
When running git
on Windows, the //host/path
syntax works because the OS supports it natively - SMB remote paths can be used anywhere a local path can be used. That is not the case in unix, where SMB is an alien thing, and //
is equivalent to /
in the pathname resolution algorithm.
mount the remote filesystem, then you will have the ability to refer to it with a unix-style pathname that git
(and every other tool on the system) understands.
For information on mounting smbfs: https://askubuntu.com/questions/137011/how-to-mount-a-samba-shared-folder-ubuntu-x-ubuntu
Solution 3:
This issue seems similar to https://stackoverflow.com/questions/5200181/how-to-git-clone-a-repo-in-windows-from-other-pc-within-the-lan. Perhaps the administrative share helps alleviate the problem (e.g. //pc-name/c$/path/to/repo)