我和朋友们正在尝试使用教程 Git服务器:在Windows上使用Gitosis和Cygwin 在Windows上设置Git,但我们一直遇到问题。
如果使用msysgit,那么在Windows上设置“安装Git服务器”的指南会是什么样子呢?
上面的教程评论中有人表示无法使用msysgit,因为gitosis需要使用SSH服务器和Bash?是否有逐步指南(因为目前没有可用的指南)?
安装msysgit
?
我和朋友们正在尝试使用教程 Git服务器:在Windows上使用Gitosis和Cygwin 在Windows上设置Git,但我们一直遇到问题。
如果使用msysgit,那么在Windows上设置“安装Git服务器”的指南会是什么样子呢?
上面的教程评论中有人表示无法使用msysgit,因为gitosis需要使用SSH服务器和Bash?是否有逐步指南(因为目前没有可用的指南)?
安装msysgit
?
我发现了这篇帖子,并在我的博客上发布了一些可能有用的内容。
请查看在Windows上使用copSSH搭建Msysgit服务器。虽然篇幅较长,但我已经成功地在Windows 7 Ultimate x64上实现了此操作。
Bonobo Git Server for Windows
Bonobo Git Server for Windows是一个Web应用程序,您可以在其中安装IIS并轻松管理和连接到您的Git仓库。
Bonobo Git Server是一个开源项目,您可以在github上找到源代码。
特点:
Brad Kingsley有一个不错的教程,介绍如何安装和配置Bonobo Git Server。
GitStack
Git Stack是另一个选择。以下是他们网站上的描述:
GitStack是一款软件,让您可以为Windows设置自己的私有Git服务器。这意味着您可以创建一个领先的版本控制系统而无需任何Git知识。 GitStack还使保护和更新服务器变得非常容易。 GitStack基于真正的Git for Windows构建,并与任何其他Git客户端兼容。 GitStack对于小团队来说完全免费1。
1基础版免费供2个用户使用。
以下是我在 .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 profile 中添加的内容(位于 CopSsh 等/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"
这里有一些重复,但它对我有用,希望其他人能说明正确修改路径的位置。
Git clone using ssh - can't find repository
这是我最费力想明白的部分。
在 Windows 上设置 Git 服务器的另一种方法:
http://code.google.com/p/tortoisegit/wiki/HOWTO_CentralServerWindowsXP
客户端相关:
http://toolmantim.com/thoughts/setting_up_a_new_remote_git_repository
关于 Git 作为服务器的解释(与 Windows 无关,但比安装步骤更深入):
http://progit.org/book/ch4-0.html
此外还有 O'Reilly 的《使用 Git 进行版本控制》- 远程仓库一章。
回想起来,如果我当时知道这会占用这么多时间,可能会从Mercurial开始,因为我看到Windows上的安装更容易,但在使用Git一段时间后再尝试Mercurial后,我会有自己的看法。
我不确定为什么没有人建议 http://gitblit.com。这是一个纯基于Java的解决方案,允许使用HTTP协议,并且非常易于设置。
在跟随Tim Davis的指南和Steve的后续操作之后,我做了以下步骤:
服务器PC
将以下内容添加到用户的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}
打开Git Bash并在您的电脑上任何地方创建一个存储库:
$ git --bare init repo.git
Initialized empty Git repository in C:/repopath/repo.git/
客户端电脑
这使我成功克隆和提交,但我无法推送到服务器上的裸仓库。我一直得到以下错误:
git: '/repopath/repo.git' is not a git command. See 'git --help'.
fatal: The remote end hung up unexpectedly
这引导我到Rui的追踪和解决方案,即在您客户端电脑的%USERPROFILE%路径(C:\Users\UserName)中创建或添加以下行到.gitconfig中。
[remote "origin"]
receivepack = git receive-pack
我不确定为什么需要这样做...如果有人能提供见解,这将是有帮助的。
我的 Git 版本是 1.7.3.1.msysgit.0。
有一个名为 Git Blit 的不错的开源 Git 堆栈。它适用于不同的平台和不同的软件包。您还可以轻松地将其部署到现有的 Tomcat 或任何其他 Servlet 容器中。请查看在几个点击内在 Windows 上设置 git 服务器教程以获取更多详细信息,基本设置只需要大约10分钟。
在共享git时,您不需要使用SSH。如果您在局域网或VPN上,可以将git项目导出为共享文件夹,并在远程计算机上挂载它。然后使用“file://” URL而不是“ git@” URL来配置远程存储库。只需花费30秒钟即可完成!
我按照Bob Murphy建议的“困难”选项去做了。
我在工作中安装了VMWare Server(免费版)下的Ubuntu,然后按照这个指南设置了Gitosis。我发现这比在Windows下运行Gitosis要容易得多。一旦设置好了,你真的不需要再碰它,因为可以通过推送更新版本的gitosis.conf文件来进行Gitosis管理。我需要直接在服务器上进行的任何工作都是通过PuTTY完成的,所以我不必使用可怕的VMWare Server界面。
我最近在家里尝试了VirtualBox,发现它比VMWare Server更好/更容易使用,所以值得一看。