在 Windows 上用 msysgit 安装 Git 服务器

我的朋友和我正在尝试使用教程 Git Server: Gitosis and Cygwin on Windows为 Windows 设置 Git,但是我们总是遇到问题。

使用 Msysgit的 Windows“安装 Git 服务器”指南是什么样的?

上面的教程中有一个评论表明它不能用 msysgit 完成,因为 gitosis 需要使用 SSH 服务器和 Bash?什么是一步一步的指南(因为没有一个可用的) ?

  1. 安装 mysisgit

137829 次浏览

也许根本就没有这样的向导。如果是这样,你可能不会有很多运气说服任何人写一个,因为这将是一个很大的工作量。

我有两个建议。比较简单的方法是盲目地遵循你的指南,这意味着忘记 msygit。

更难的是建立一个 Linux 服务器——也许是作为 Windows 下的客户使用 VirtualBox (免费)或 VMWare 或 Parallels (付费) ,然后按照谷歌将引导你到的众多指示之一。但是您可能会发现这些指令是不够的——例如,它们通常假定您已经设置了 ssh 服务器,因此您必须从其他地方获取这些信息。我已经这样做了两次,可以说,除非你已经是 Linux 大师,否则这将是一场斗争。

我发现了这篇文章,我刚刚在我的博客上发布了一些可能有帮助的东西。

看看 在 Windows 上用 copSSH 设置 Msysgit 服务器。它很长,但是我已经成功地让它在 Windows7终极版 x64上运行。

我做了 鲍勃 · 墨菲建议的“艰难”选择。

我安装 Ubuntu 下的 VMWare 服务器(免费)在工作,然后按照 这本指南设置 Gitosis。我发现这比试图让它在 Windows 下运行要容易得多。一旦设置好,你真的不需要触摸它,因为 Gitosis 管理可以在 Windows 上通过推送 Gitosis.conf 文件的更新版本来完成。我需要直接在服务器上做的任何工作都是通过 PuTTY 完成的,所以我不必使用糟糕的 VMWare Server 界面。

我最近一直在家里使用 VirtualBox,我发现它比 VMWare Server 更好用/更容易使用,所以它可能值得一看。

关于提姆戴维斯页面的参考-在 Windows 上使用 copSSH 设置 Msysgit 服务器-我使用这个来获得一个 Git 服务器运行在 Windows 7 Home Premium 64上。

下面是除了他的说明之外我所了解到的一些事情的解剖/更新。

正如蒂姆 · 戴维斯所说,这是一个艰难而令人沮丧的过程,至少对我来说是这样——我不太擅长这种融合,但我在这个过程中学到了很多。我希望我的痛苦将来能够帮助到其他人,因为这是一个艰难的过程。

  1. 有一个复制所有 Git 的步骤 可执行文件放入您的 CopSsh 容器 而不是复制文件 找出哪些文件是 需要时,将 git bin 路径添加到 我通过修改我的 . bashrc 和 CopSsh 配置文件。

    下面是我添加到.bashrc (在您的 CopSsh 和 Windows 主目录中)的内容:

    Gitpath =’/cygdrive/c/Program Files (x86)/Git/bin’

    Gitcorepath = ‘ cygdrive/c/Program Files (x86)/Git/libexec/Git-core’

    PATH = ${ gitpath } : ${ gitcorepath } : ${ PATH }

    下面是我添加到 bash 配置文件(在 CopSsh etc/profile 中)的内容:

    Gitpath =’/c/Program Files (x86)/Git/bin’

    Gitcorepath = ‘ cygdrive/c/Program Files (x86)/Git/libexec/Git-core’

    Export PATH =”/bin: $syspath: $gitpath: $gitcorepath: $winpath”

    这里有一些复制-它为我工作,所以有人输入哪里是修改路径的正确位置。

  2. 最新的 msysgit 版本可能不会给您 选择 ssh 的屏幕 可执行文件,在 Git 中进行选择 你必须这么做 如果使用 PuTTY,则手动设置 GIT _ SSH

  3. 我没有遵循 指令,那就是安装 Tortoise-我使用了命令行 而我更喜欢这样 学习风险投资,就像我学习 RCS 和 Subversion 一样 发现这对我很有用,我曾经有过 克隆人指挥部的问题 我是这样做的:

    使用 ssh-can & # 39; t find 仓库克隆 Git

    这是我撞到头最多的地方。

  4. CopSsh 的安装目录是 程序文件(x86)/ICW 但是如果我在做 同样,我会使用目录名 没有空格

  5. 这些其他的来源帮助我弄明白了一些事情:

    设置 Git 服务器的另一种方法 视窗:

    Http://code.google.com/p/tortoisegit/wiki/howto_centralserverwindowsxp

    客户端:

    Http://toolmantim.com/thoughts/setting_up_a_new_remote_git_repository

    Git 作为服务器的解释 (与视窗无关,但更多 深入观察胜于安装 步骤) :

    Http://progit.org/book/ch4-0.html

    加上 O’Reilly 的 使用 Git 的版本控制-远程存储库章节。

现在回想起来,如果我知道这会花费多少时间,我可能会从 Mercurial 开始,因为我读到在 Windows 上安装更容易,但是在我使用 Git 一段时间后,然后尝试 Mercurial 之后,我会对此有自己的看法。

在遵循蒂姆 · 戴维斯的指南和史蒂夫的后续行动之后,我做了以下几件事:

服务器电脑

  1. 安装 CopSSH,msysgit。
  2. 在创建 CopSSH 用户时,取消选中 密码认证并选中 公共密钥认证,这样您的公钥/私钥就可以工作了。
  3. 使用 PuTTygen 创建公共/私有密钥。将两个密钥放在用户的 CopSSH/home/user/. ssh 目录中。
  4. 将以下内容添加到用户的 CopSSH/home/user/. bashrc 文件:

    GITPATH='/cygdrive/c/Program Files (x86)/Git/bin'
    GITCOREPATH='/cygdrive/c/Program Files (x86)/Git/libexec/git-core'
    PATH=${GITPATH}:${GITCOREPATH}:${PATH}
    
  5. Open Git Bash and create a repository anywhere on your PC:

    $ git --bare init repo.git
    Initialized empty Git repository in C:/repopath/repo.git/
    

Client PC

  1. Install msysgit.
  2. Use the private key you created on the server to clone your repo from ssh://user@server:port/repopath/repo.git (for some reason, the root is the C: drive)

This allowed me to successfully clone and commit, but I could not push to the bare repo on the server. I kept getting:

git: '/repopath/repo.git' is not a git command. See 'git --help'.
fatal: The remote end hung up unexpectedly

这导致我到 芮的痕迹和溶液,这是创建或添加以下行到。在 客户端 PC 的% 用户配置文件% 路径中使用 gitconfig (C: UserName)。

[remote "origin"]
receivepack = git receive-pack

我不知道为什么需要这个... 如果有人能提供一些见解,这会很有帮助。

我的 git 版本是1.7.3.1. msysgit. 0

我只是想增加我在 史蒂夫Timc上面提到的 路径设置方面的经验: 我在使用 shell 工具(比如 MVCP)在路径中首先使用 Git 的 shell 可执行文件时遇到了权限问题。

将它们附加在现有的 路径之后,这样就解决了我的问题。例如:

GITPATH =’/cygdrive/c/Program Files (x86)/Git/bin’ GITCOREPATH =’/cygdrive/c/Program Files (x86)/Git/libexec/Git-core’ PATH = ${ PATH } : ${ GITPATH } : ${ GITCOREPATH }

我猜 CopSSH 并不适合所有 Msysgit的 shell 可执行文件..。

用于 Windows 的 Bonobo Git 服务器

来自 Bonobo Git 服务器网页:

Bonobo Git Server for Windows 是一个可以安装的 web 应用程序 您的 IIS,并轻松地管理和连接到您的 git 存储库。

Bonobo Git Server 是一个开源项目,您可以找到 来源: github。

特点:

  • 对您的 git 存储库的安全和匿名访问
  • 用户友好的网络管理界面
  • 基于用户和团队的存储库访问管理
  • 存储库文件浏览器
  • 提交浏览器
  • 定位

Brad Kingsley 有一个很好的 教程来安装和配置 Bonobo Git 服务器。

GitStack

Git Stack 是另一种选择,以下是他们网站的描述:

GitStack 是一个允许您设置自己的私有 Git 服务器的软件 这意味着您要创建一个前沿版本控制 系统没有任何先前的 Git 知识 易于保护和更新您的服务器 真正的 Windows Git 的顶部,并兼容任何 GitStack 对于小团队来说是完全免费的。

1 基本版对于最多2个用户是免费的

GitStack 应该可以满足您的目标。 它是免费的2个用户,并有一个基于网络的用户界面。它是基于 msysgit。

我不知道为什么没有人建议 http://gitblit.com。纯 Java 的解决方案,支持 HTTP 协议,并且非常容易设置。

共享 git 不需要 SSH。如果您使用的是 LAN 或 VPN,则可以将 git 项目导出为共享文件夹,并将其挂载到远程计算机上。然后使用“ file://”URL 而不是“ git@”URL 配置远程回购。只要30秒。成交!

我使用 GitWebAccess为许多项目半年了,它被证明是我所尝试的最好的。不过,最近的源代码似乎不受支持,所以——不要使用最新的二进制文件/源代码。目前它们已经坏了: (

您可以从 这个版本构建或下载我从 给你使用的已编译二进制文件。

有一个很好的开源 Git 栈,名为 Git Blit。它适用于不同的平台和不同的软件包。您还可以轻松地将其部署到现有的 Tomcat 或任何其他 servlet 容器中。看看 单击几下就可以在窗口上安装 git 服务器教程的更多细节,它将花费你大约10分钟,以获得基本的安装。