Search code examples
gitintranet

Set up a git repo on LAN, which is to be updated manually


I need to set up a git repo at our manufacturing facility. Due to limitations out of my control, i have a single machine with limited remote access and no direct internet access (that is, the machine itself is constrained to only allow my remote connection, it cannot reach the internet otherwise. So I can log on remotely, but once on that machine I only have LAN access from it).

This machine is our windows "file server". I would like to install a git repo on there that serveral other machines will use to pull code.

I will periodically update this repo by file transfers... Literally copying over my master repo and replacing it (it cannot pull from anywhere due to the limitations).

Can this be done?

For example, if I file copy my master repo over to the file server and share it on the network, can I set the origin of another machine's repo to "G:\fileserver\gitrepo" and pull on those remote machines?

If I then copy over the master repo with an updated version, will this break it?


Solution

  • I worked at a shop that out sourced their IT needs. Each workstation was imaged with a drive letter mapped to their off-site windows server.

    If a share on your windows server is mapped locally to the G: drive for instance, create a bare repo on it as if it were on the local file system. I found that the windows version of git worked well with Windows networking.

    git init --bare G:/path/to/bare-repo.git
    git remote add origin G:/path/to/bare-repo.git
    git push --set-upstream origin --all
    git push --set-upstream origin --tags