在Windows上用msysgit安装一个Git服务器
我的朋友和我正在尝试使用Git服务器:Windows上的Gitosis和Cygwin来设置Git for Windows ,但是我们仍然遇到问题。
使用msysgit的“安装Git服务器”指南是什么样的?
在上面的教程中有一个评论build议它不能用msysgit完成,因为gitosis需要使用SSH服务器和Bash? 什么是一步一步的指导(因为没有一个可用)?
-
安装mysisgit
-
?
我发现这个post,我刚刚在我的博客上发布了一些可能有用的信息。
请参阅在Windows上使用copSSH设置Msysgit服务器 。 这很长,但我已经成功地在Windows 7旗舰版x64上工作。
关于Tim Davis页面的参考 – 在Windows上使用copSSH设置Msysgit服务器 – 我使用它来获得在Windows 7 Home Premium 64上运行的Git服务器。
以下是除了他的指示之外,我还学习了什么。
就像蒂姆·戴维斯(Tim Davis)说的那样,这是一个艰难而令人沮丧的过程,至less对我来说 – 我并不太擅长这种整合,但是我在这个过程中学到了很多东西。 我希望将来我的痛苦会让别人受益,因为这是一个艰难的过程。
-
有一个步骤将所有Git可执行文件复制到您的CopSsh bin目录中。 而不是复制文件,并找出需要哪些文件,将git binpath添加到您的gitpath。 我通过修改我的.bashrc和CopSshconfiguration文件。
这是我添加到.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}
这是我添加到bashconfiguration文件(在CopSsh等/configuration文件):
gitpath ='/ c / Program Files(x86)/ Git / bin'
gitcorepath ='cygdrive / c / Program Files(x86)/ Git / libexec / git-core'
export PATH =“/ bin:$ syspath:$ gitpath:$ gitcorepath:$ winpath”
这里有一些重复 – 对我有用,所以有人在哪里修改path是正确的。
-
较新的msysgit版本可能不会给你屏幕selectssh可执行文件在Git ssh和PuTTY ssh之间select。 如果您使用PuTTY,则必须手动设置GIT_SSH。
-
我没有按照说明的一部分,那是安装乌龟 – 我用命令行,而不是我喜欢学习像我与rcs和Subversion一样的vcs,发现为我工作。 我有使用SSH的克隆命令的问题。 以下是我如何做到的:
Git克隆使用SSH – 无法find存储库
这是我最痛苦的地方。
-
CopSsh安装目录是/ Program Files(x86)/ ICW。 我逃避了这一点,但如果我再次这样做,我会使用一个没有空格的目录名称。
-
这些其他来源帮助我弄清楚了事情:
在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 。
用于Windows的Bonobo Git服务器
从Bonobo Git Server网页 :
用于Windows的Bonobo Git Server是一个Web应用程序,您可以在您的IIS上安装,并轻松pipe理并连接到您的git存储库。
Bonobo Git Server是一个开源项目,你可以在github上find源代码 。
特征:
- 安全和匿名访问您的git存储库
- 用户友好的网页界面进行pipe理
- 基于用户和团队的存储库访问pipe理
- 存储库文件浏览器
- 提交浏览器
- 本土化
Brad Kingsley有一个很好的安装和configurationBonobo Git Server的教程 。
GitStack
Git Stack是另一种select。 这是从他们的网站描述:
GitStack是一个软件,可以让你设置自己的私人Git服务器的Windows。 这意味着您创build了一个没有任何Git知识的前沿版本控制系统。 GitStack也使得它非常容易保护和保持你的服务器是最新的。 GitStackbuild立在真正Git for Windows的顶部,并与任何其他Git客户端兼容。 GitStack对于小团队来说是完全免费的1 。
1 基本版是免费的最多2个用户
我不知道为什么有人不build议http://gitblit.com 。 基于纯java的解决scheme,允许HTTP协议,并且非常容易设置。
遵循蒂姆·戴维斯的指导和史蒂夫的后续行动,我做了以下工作:
服务器电脑
- 安装CopSSH,msysgit。
- 创buildCopSSH用户时,请取消选中密码validation,然后选中公钥validation,以使公钥/私钥生效。
- 使用PuTTygen创build公钥/私钥。 把这两个键放在用户的CopSSH / home / user / .ssh目录下。
-
将以下内容添加到用户的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并在PC上的任何位置创build一个存储库:
$ git --bare init repo.git Initialized empty Git repository in C:/repopath/repo.git/
客户端PC
- 安装msysgit。
- 使用您在服务器上创build的私钥从ssh:// user @ server:port / repopath / repo.git克隆您的repo(出于某种原因,根目录是C:驱动器)
这使我成功克隆和提交,但我不能推到服务器上的裸回购。 我不断得到:
git: '/repopath/repo.git' is not a git command. See 'git --help'. fatal: The remote end hung up unexpectedly
这使我得到了Rui的跟踪和解决scheme ,它是在客户端PC的%USERPROFILE%path(C:\ Users \ UserName)中为.gitconfig创build或添加以下行。
[remote "origin"] receivepack = git receive-pack
我不知道为什么这是必要的…如果有人能提供见解,这将是有益的。
我的git版本是1.7.3.1.msysgit.0
GitStack应该达到你的目标。 我有一个向导设置。 它为2个用户免费,并有一个基于Web的用户界面。 它基于msysgit。
-
Git的Windows开发人员 。 3部分,这是第一个链接。 好的!
-
Windows上的Git插图指南
- Git扩展 (video)
有一个很好的开源Git堆栈叫做Git Blit。 它可用于不同的平台和不同的包装。 您也可以轻松地将其部署到现有的Tomcat或任何其他servlet容器。 看看安装git服务器上的窗口,在几个点击教程的更多细节,它会花你约10分钟,以获得基本的设置。
你不需要SSH来共享git。 如果你在一个局域网或者VPN上,你可以将一个git项目作为一个共享文件夹导出,然后挂载到远程机器上。 然后使用“file://”URL而不是“git @”URL来configuration远程回购。 花费30秒。 完成!
可能根本就没有这样的指导。 如果是这样,你可能没有太多的运气说服任何人写一个,因为这将是很多工作。
我会推荐两件事情之一。 更容易的是跟随你的奴隶指南,这意味着忘记msysgit。
更困难的是build立一个Linux服务器 – 也许作为一个客户在Windows下使用VirtualBox(免费)或VMWare或Parallels(付费),然后按照谷歌将带领您的许多指示集之一。 但是你可能会发现这些指令是不够的 – 例如,他们通常认为你已经设置了一个ssh服务器,所以你必须在其他地方获得这个信息。 我这样做了两次,可以说,除非你已经是Linux大师,否则这将是一场斗争。
我做了鲍勃·墨菲 ( Bob Murphy)build议的“硬”选项。
我在VMWare Server(免费)下安装了Ubuntu,然后按照本指南设置Gitosis。 我发现这比在Windows下运行要容易得多。 一旦build立起来,你就不必碰它,因为Gitosispipe理可以通过推送更新版本的gitosis.conf文件在Windows上完成。 我需要在服务器上直接做的任何工作都是通过PuTTY完成的,所以我不必使用可怕的VMWare服务器接口。
我最近一直在家中使用VirtualBox,我发现它比VMWare Server更好用,所以值得一看。
我只想添加Steve和Tim提到的PATH设置的经验:我使用shell工具(如mv和cp )获得权限问题,首先在path中使用Git的shell可执行文件。
在现有的PATH之后追加它们,这解决了我的问题。 例:
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可执行文件都不一致 。
在使用上述方法尝试(和失败)之后,我使用了http://www.windowsgit.com上的; “计算机语言学家”build议的工具。 这是可笑的简单,只是工作。 值得9美元,国际海事组织。
另一个解决scheme是Gitwin – 一个Openssh的启用Git仓库服务器的Windows。 免费版是可用的。
我现在在很多项目上使用GitWebAccess已经有半年了,这已经certificate是我尝试过的最好的。 但是,似乎最近的消息来源不被支持,所以 – 不要采取最新的二进制文件/来源。 目前他们破了:(
你可以从这个版本编译或下载我在这里使用的编译的二进制文件。
你可以试试GitDrive,它把你的iOS设备变成一个可移动的硬盘,但是它是由Git驱动的。 它还将您的所有存储库同步到iCloud。 只要安装,你会得到一个完美的Git服务器在你的口袋里。 应用链接: https : //itunes.apple.com/us/app/git-drive/id1215974700?ls=1&mt=8
- 在Windows cmd中,如何提示用户input并在另一个命令中使用结果?
- Python virtualenv问题
- 错误:ANDROID_HOME未设置,“android”命令不在PATH中。 您必须至less满足以下条件之一。
- ld.exe:无法打开输出文件…:权限被拒绝
- 用Java创buildWindows Metro风格的应用程序?
- 在命令行上将XLS转换为CSV
- 在Unix(或Windows)中,如何使用(最好是未命名的)pipe道将一个进程的stdout发送到多个进程?
- 为什么POST请求中的“Content-Length:0”?
- 如何从Java内部find并杀死正在运行的Win-Processes?