Windows系统搭建GitServer--Bonobo Git Server

2024-05-30 21:58

本文主要是介绍Windows系统搭建GitServer--Bonobo Git Server,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

一、关于Bonobo Git Server

Bonobo Git Server 是一套基于 asp.net 的 git 服务器。运行于 Windows IIS 上。

把它解压缩出来放到一个目录下,按照平时配置网站应用方式设置就可以了,指定https的话自己安装证书。

官网:https://bonobogitserver.com/

设置注意几点:

1. 该目录让 IIS_User 有访问权;
2. 官方文档特意提到该目录下的子目录 App_Data 要让 IIS_User 有写入权;
3. 将该目录转换为应用程序(在 IIS 管理器里面,鼠标右键去点这个目录),可能事先要将它设置为 IIS 网站底下的虚拟目录。
4. 重点:官方文档提到:IIS7 的网站设置里面的身份验证,要把匿名用户设置为 Enable。但是,官方文档没提到要把其它认证方式都设置为 Disable。
5. 重点:官方文档没提到,这个IIS应用程序的高级设置里面(IIS 管理器里面,右键点该虚拟目录,选择【管理应用程序/高级设置】),在弹出来的框里面,应用程序池的选择,要选择 Asp.Net v4.0,不要选择带 classic 的那个。因为 .net 的应用程序池有两种:集成,经典。选择经典,这个程序不能运行。


二、配置成功后

1.登录在设置中修改语言版本
2.创建版本库

3.获取克隆版本库  ,注意使用git  clone命令,而不是使用GUI界面工具,这点需要特别注意。

安装好以后,网页可以访问到。在网页里:

1. 首先登录:admin / admin

2. 创建仓库;假设仓库名称叫做:test

然后,可以远程,用 git 去访问它了。比如使用 Windows 底下的 git 的 BASH 窗口打命令:(以下使用的 git 是 mysysgit)

git clone http://localhost/mygit/test.git   这里的 test 是仓库名称。这样看起来,git 客户端是可以直接使用 http 协议的。

克隆服务器的仓库到本地以后,默认是在当前 Windows 用户目录下,创建了一个文件夹叫做 test。进入这个目录,自己创建一个文件,叫 test.txt。然后,在 git 的 Bash 窗口里面输入命令:

git add test.txt  执行成功。(这一步,需要在 Bash 窗口里面,cd 进入 test 目录,才能执行)。

然后,提交:git commit  结果会出来一堆提示,需要在本地 git 里面,注册自己的邮件和 git 帐号。根据提示输入后,再次提交,成功。

提交其实只是提交到本地的 git 仓库。要提交到服务器,必须进一步操作:

git push http://localhost/mygit/test.git  推送到远程仓库。

然后切换到另外一个 windows 用户,将上述仓库克隆下来,修改里面的文件,然后执行:

git add test.txt

git commit (执行这一步,同样要求输入你是谁,根据命令行当提示操作就可以了)

git push http://localhost/mygit/test.git 成功。

然后再切换回原来的 Windows 用户,用 git pull 拉下来。发现这里的 test.txt 真的被更新了。

上面操作的问题在于:

1. 使用 git GUI 界面的克隆菜单,在出来的界面里面,不输入目标文件夹,克隆的按钮是灰色的;输入目标文件夹,无论输入什么,都提示该文件夹已经存在。因此无法操作。

2. 使用 git 命令行(在 Bash 里面),如果做 git clone http://localhost/mygit/test.git d:\test\ 操作,则确实它在本地 D: 盘创建了 test 目录并把 test.txt 从服务器下载过来。但是如果在这里对文件进行了修改,然后在 Bash 里做 git add 操作,无论如何写文件路径,比如写 git add d:\test\test.txt 它都会提示错误,这不是一个 git 仓库。在 Bash 里面好似 CMD 里面一样做当前磁盘切换 D: 然后 cd test 是无法成功的。也就是无法把当前路径切换进去。

3. 如果 clone 命令不跟目标文件夹,则它自动在当前 Windows 用户文件夹底下(C 盘的 User 目录下),创建本地仓库 test 目录并把文件下载到这里。然后在这里修改文件后,可以 add, commit 然后 push 成功。

上述问题,可能是我不懂 git 的用法,命令没搞对导致。

下载一个 git 小乌龟,用 GUI 菜单操作,不用记忆命令。这次,可以成功地克隆仓库到 D 盘,然后在 D 盘改写文件后,add, commit, push 成功。

这个小乌龟只提供图形界面,实际的操作它还是依赖 mysysgit 这套 git for windows 的 git.exe 


更多:

Git移除版本控制操作
git回到指定版本命令
TortoiseGit 2.5.0 正式发布,Git 客户端

这篇关于Windows系统搭建GitServer--Bonobo Git Server的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/1016948

相关文章

在不同系统间迁移Python程序的方法与教程

《在不同系统间迁移Python程序的方法与教程》本文介绍了几种将Windows上编写的Python程序迁移到Linux服务器上的方法,包括使用虚拟环境和依赖冻结、容器化技术(如Docker)、使用An... 目录使用虚拟环境和依赖冻结1. 创建虚拟环境2. 冻结依赖使用容器化技术(如 docker)1. 创

Windows设置nginx启动端口的方法

《Windows设置nginx启动端口的方法》在服务器配置与开发过程中,nginx作为一款高效的HTTP和反向代理服务器,被广泛应用,而在Windows系统中,合理设置nginx的启动端口,是确保其正... 目录一、为什么要设置 nginx 启动端口二、设置步骤三、常见问题及解决一、为什么要设置 nginx

查询SQL Server数据库服务器IP地址的多种有效方法

《查询SQLServer数据库服务器IP地址的多种有效方法》作为数据库管理员或开发人员,了解如何查询SQLServer数据库服务器的IP地址是一项重要技能,本文将介绍几种简单而有效的方法,帮助你轻松... 目录使用T-SQL查询方法1:使用系统函数方法2:使用系统视图使用SQL Server Configu

CentOS系统Maven安装教程分享

《CentOS系统Maven安装教程分享》本文介绍了如何在CentOS系统中安装Maven,并提供了一个简单的实际应用案例,安装Maven需要先安装Java和设置环境变量,Maven可以自动管理项目的... 目录准备工作下载并安装Maven常见问题及解决方法实际应用案例总结Maven是一个流行的项目管理工具

本地搭建DeepSeek-R1、WebUI的完整过程及访问

《本地搭建DeepSeek-R1、WebUI的完整过程及访问》:本文主要介绍本地搭建DeepSeek-R1、WebUI的完整过程及访问的相关资料,DeepSeek-R1是一个开源的人工智能平台,主... 目录背景       搭建准备基础概念搭建过程访问对话测试总结背景       最近几年,人工智能技术

SQL Server数据库迁移到MySQL的完整指南

《SQLServer数据库迁移到MySQL的完整指南》在企业应用开发中,数据库迁移是一个常见的需求,随着业务的发展,企业可能会从SQLServer转向MySQL,原因可能是成本、性能、跨平台兼容性等... 目录一、迁移前的准备工作1.1 确定迁移范围1.2 评估兼容性1.3 备份数据二、迁移工具的选择2.1

在 Windows 上安装 DeepSeek 的完整指南(最新推荐)

《在Windows上安装DeepSeek的完整指南(最新推荐)》在Windows上安装DeepSeek的完整指南,包括下载和安装Ollama、下载DeepSeekRXNUMX模型、运行Deep... 目录在www.chinasem.cn Windows 上安装 DeepSeek 的完整指南步骤 1:下载并安装

Git提交代码详细流程及问题总结

《Git提交代码详细流程及问题总结》:本文主要介绍Git的三大分区,分别是工作区、暂存区和版本库,并详细描述了提交、推送、拉取代码和合并分支的流程,文中通过代码介绍的非常详解,需要的朋友可以参考下... 目录1.git 三大分区2.Git提交、推送、拉取代码、合并分支详细流程3.问题总结4.git push

5分钟获取deepseek api并搭建简易问答应用

《5分钟获取deepseekapi并搭建简易问答应用》本文主要介绍了5分钟获取deepseekapi并搭建简易问答应用,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需... 目录1、获取api2、获取base_url和chat_model3、配置模型参数方法一:终端中临时将加

SQL Server使用SELECT INTO实现表备份的代码示例

《SQLServer使用SELECTINTO实现表备份的代码示例》在数据库管理过程中,有时我们需要对表进行备份,以防数据丢失或修改错误,在SQLServer中,可以使用SELECTINT... 在数据库管理过程中,有时我们需要对表进行备份,以防数据丢失或修改错误。在 SQL Server 中,可以使用 SE