I was not really sure where to post this so I thought I'd put it here.

On one of my projects, I have been tasked with setting up a git server on a windows machine. I've googled around a bit and found things like bonobo and gitstack and this. However, before I run headlong down some difficult road, I thought I'd ask here first. Has anyone set up a git server on a windows machine? I am hoping this git server will run on some port other than 80 or 443 as we already have an application server running on this machine.

I have this fantasy it will simply require me to run some installer.

EDIT: Another requirement is that it allow connections from users distributed geographically. I.e., one must be able to commit to or pull from the repo from a remote machine.

    Wondering if it might be more cost-effective to just buy a GitHub account (so you can keep your repos private) than spending resources (even if just person-hours) to serve it yourself? Otherwise, I have no info, as that's what we do here and is my only experience with Git (that and using Beanstalk in the same way).

      It would certainly be more cost-effective, but I've been told that is not acceptable. Apparently some folks are concerned about hosting our precious source code on somebody else's system.

        Yeah, I figured it was something like that. Hopefully someone with actual knowledge will stop by soon, then. šŸ˜‰

          Well I have a book on git, just not in a windows context. It's all much easier on Ubuntu but our server in this case is running windows.

          From my 2nd Edition "Version Control with Git" I have these nuggets:

          Technically, Git doesn't need a server. In contrast to other VCSs, where a centralized server is often required, there is no need to hang onto the mindset that one is required to host Git repositories

          Having a server in the context of a Git repository is often little more than establishing a convenient, fixed, or known location from which repositories are obtained or updates are exchanged. The Git server might also provide some form of authentication or access control.

          Git is happy to exchange files directly with a peer repository on the same machine without the need for some server to broker the deal, or with different machines via a variety of protocols none of which enforces a superior server to exist.

          The phrase "commit rights" is really sort of a misnomer in Git. Git doesn't try to manage access rights, leaving that issue to other tools, such as SSH, which are more suited to the task. You can always commit in any repository to which you have (Unix) access, either via SSH and cding to hat repository, or to which you have direct rwx-mode access.

          The concept might be better paraphrased as "Can I update the published repository?" In that expression, you can see the issue is really the question, "Can I push changes to the published repository."

          In my googling, I've seen windows options like Bonobo and GitStack but these both rely on HTTP/HTTPS and I'd rather not have to fiddle with the configuration of the IIS server if I can avoid it. One remaining option appears to be this one, but it uses something called CopSSH:
          https://github.com/msysgit/msysgit/wiki/Setting-up-a-Git-server-on-Windows-using-Git-for-Windows-and-CopSSH

          I was wondering if there's some more windows-genuine way of going about it. I need to make sure each developer authenticates separately with their own password/key and is identified when committing to the repo.

            What about using a VM on the Winbox that runs a 'Nix ?

              dalecosp;11043655 wrote:

              What about using a VM on the Winbox that runs a 'Nix ?

              A linux VM running on a windows VM running on Xen hypervisor? Sounds reliable and efficient :rolleyes:

              That's more or less what the CygWin option is above. As it turns out, the storage space on the server is quite limited (we're down to about 9GšŸ˜Ž. I have managed to talk the client into using GitHub instead and paying $7/month for a private repository.

                Write a Reply...