在Windows Server 2003上设置审查板下的Git存储库

在Windows Server 2003上设置审查板下的Git存储库,windows,git,windows-server-2003,msysgit,review-board,Windows,Git,Windows Server 2003,Msysgit,Review Board,我需要一些帮助 我有一台Windows Server 2003计算机,我正在用Git和审查委员会设置它 我的Git存储库由Gitolite管理。安装成功,一切正常(使用多个工作站进行测试) 审查委员会站点已成功安装,并托管在Apache 2.2下。这本身也很好(网站可以访问,工作站也可以响应),除了我试图将Git存储库链接到Review Board的部分 大多数教程(示例:)都提供了关于如何在Review Board下设置Git存储库的详细信息,只是它们涉及Linux/Unix系统,而且我正在运

我需要一些帮助

我有一台Windows Server 2003计算机,我正在用Git审查委员会设置它

我的Git存储库由Gitolite管理。安装成功,一切正常(使用多个工作站进行测试)

审查委员会站点已成功安装,并托管在Apache 2.2下。这本身也很好(网站可以访问,工作站也可以响应),除了我试图将Git存储库链接到Review Board的部分

大多数教程(示例:)都提供了关于如何在Review Board下设置Git存储库的详细信息,只是它们涉及Linux/Unix系统,而且我正在运行Windows Server 2003

我的Gitolite存储库存储在
D:\repositories\Git

示例:
D:\Repositories\Git\sdu test\.Git

我的理解是审查委员会需要一个本地的存储库克隆。因此,我创建了一个名为
LocalClones
的目录,并克隆了我的存储库。
示例:
D:\Repositories\LocalClones\
[我在这里克隆了sdu-test.git]
使用的命令(从LocalClones目录):
git clone../git/sdu test.git

(克隆成功)

现在,在ReviewBoard中,我试图声明我的sdu测试存储库

  • 名称为“
    sdu测试”
  • 托管类型为“
    自定义”
  • 存储库类型为“
    Git
  • 路径是“
    D:\Repository\LocalClones\sdu test
    ”(我还尝试了“
    sdu test.git
    ”和“
    sdu test/.git
    ”)
  • 镜像路径为“
    ssh://git@localhost/sdu测试
    ”(我也简单地尝试了“
    git@localhost:sdu测试(完全没有镜像路径)
当我单击保存时,我得到以下错误:(11001,“getaddrinfo失败”)。我不知道该怎么办

如果尝试将路径更改为Unix样式的路径(“
/D/Repository/LocalClones/sdu test
”),则会收到另一条错误消息:
访问本地Git存储库的权限被拒绝“/D/Repository/LocalClones/sdu test”
。使用Unix样式的路径,我甚至可以编写一个不存在的目录路径(“
/I/Dont/exist
”),并返回相同的权限拒绝错误(但错误消息中的路径确实反映了更改)

谁能帮我一下,告诉我如何在Windows下的Review Board中声明我的本地Git存储库

多谢各位


**更新**感谢Tamagochi和VonC的回答,但不幸的是,他们不适合我。即使在修复了git.py文件之后,我仍然会收到
访问本地git存储库的权限被拒绝“/D/repository/LocalClones/sdu test”
错误消息。

我没有任何ReviewBoard的经验,但我可以从以下方面获得:

  • 您确实需要将完整路径放到本地克隆的
    .git
    目录
  • 您应该通过基于url的地址进行本地克隆。如果要使用本地文件协议,则应尝试使用
    file///D/Repository/LocalClones/sdu test

    git@localhost:sdu test
    只有在git守护进程运行时才能工作。
    ssh://git@localhost/sdu测试
    只有在ssh守护进程运行时才起作用

ReviewBoard 1.5.5中似乎存在导致此错误的错误。您可以通过以下两种方式之一解决此问题:

  • 将存储库移动到drive C

  • 编辑
    \reviewboard\scmtools\git.py
    文件,并替换以下行:

    self.git_dir = url_parts[2]
    
    与:

    然后使用以下路径:
    file://D:/Repository/LocalClones/sdu test

  • self.git_dir = url_parts[1] + url_parts[2]