最近有个项目需要实现跨平台,于是在虚拟机中安装了麒麟V10系统,具体安装方法请参考上一篇文章,在虚拟机中安装好了麒麟V10系统和Qt5.12.3,如何实现代码共享,避免在windows系统中维护一份代码,在麒麟系统中维护一份代码,以及后续有可能在其他电脑上实现同步,因此决定采用Git来管理代码,做到统一管理,动手搭建一个Git服务器吧,一劳永逸!
一、部署Git服务器
本次选择的是GitBlit,GitBlit是由Java开发,所以需要Java环境的支持。
下载完Java jdk后,双击运行,按照安装向导一步一步执行即可。
安装完成后需要配置Java环境变量:
配置完环境变量后,在CMD命令行中输入”java -version“,按回车键,出现以下内容说明Java已安装成功。
- 下载Gitblit,下载地址:Gitblit
Gitblit是一个压缩包,直接解压到指定位置即可,如E:\gitblit-1.9.3。
创建一个文件目录用于存放本地仓库,这里创建在F:\GitRepository。
- 配置Gitblit
打开E:\gitblit-1.9.3\data\defaults.properties文件,配置仓库地址为前面创建的GitRepository文件夹,需要注意的是"\"需要改成"/"。
git.repositoriesFolder = F:/GitRepository
配置http协议端口号,找到server.httpPort,自定义一个端口号,这里设置为9527,需确保该端口号没有被占用。
server.httpPort = 9527
配置https协议端口号,找到 server.httpsPort,此处默认已配置了8443端口号,也可以自定义更改该端口号
server.httpsPort = 8443
配置http的IP地址,找到server.httpBindInterface,配置成当前电脑的IP地址
server.httpBindInterface = 192.168.43.238
配置https的IP地址,找到server.httpsBindInterface,配置成当前电脑的IP地址
server.httpsBindInterface = 192.168.43.238
配置完以上配置项,保存文件。
- 运行Gitblit
在根目录中找到gitblit.cmd,右键以管理员形式运行gitblit.cmd,看到以下内容说明gitblit运行成功。
可能会遇到的问题:当IP地址配置不正确时,会出现闪退情况,报unresolved addresss错误,此时检查当前配置的IP地址是否是本机地址即可。
- 访问Gitblit
通过浏览器访问上面配置的ip和端口即可访问
管理员的默认账号和密码都是admin,登录后可以创建用户和创建版本库.。
- 设置成服务方式启动Gitblit
前面通过gitblit.cmd启动的方式,在关闭对话框后服务就无法访问了,所以建议以服务的形式启动。
a) 以管理员形式运行installService.cmd,该批处理运行后一闪而过。
b) 以管理员形式运行gitblitw.exe,在弹出的对话框中点击Start启动服务,此时需要先关闭之前启动的服务。
服务启动成功后,在计算机的服务列表中就可以看到gitblit服务,之后服务会随系统启动。
如果操作系统是32位,则需要对installService.cmd进行修改,把默认值amd64改为x86
SET ARCH=x86
至此Gitblit就安装完成了,下面来安装Git客户端,这里选择的是Git。
二、部署Git客户端
- 首先需要去官网下载Git
下载完成后,双击运行,一直下一步即可完成安装,安装完成后在电脑桌面右键点击出现的右键菜单中如果出现“Git Bash Here”说明安装成功。
三、使用Git
- 从gitblit上克隆项目
这里选择用http协议克隆项目,从版本库中选择http克隆的连接,选中后复制。
在项目存放目录下,右键选择“Git Bash Here”,在弹出的对话框中粘贴上面复制的克隆链接,按回车键后,会弹出用户验证对话框,输入git分配的用户名和密码后执行克隆操作,在目录下就会看到克隆下来的项目内容了。
- 设置Git用户签名
- 查看版本库状态
使用git status命令查看状态,未添加到暂存区的为红色显示,已添加到暂存区的为绿色显示
- 新建文件添加到暂存区
在工作区新建了文件,如果要提交都git仓库,此时需要先添加到git的暂存区,有以下几种方式添加:
//单文件添加
git add 文件名称
//多文件添加
git add 文件名称1 文件名称2 ...
或
git add 文件夹/*
或
git add 文件夹/*.cpp
//添加所有文件,使用”git add .“ 或者使用”git add --all“;
git add .
或
git add --all
//添加文件夹
git add 文件夹名称
- 撤销添加到暂存区的文件或文件夹
//撤销暂存区单文件或文件夹
git reset 文件名或文件夹名称
//撤销暂存区所有内容
git reset
- 排除不需要添加到版本库的文件
排除指定文件或目录,需要在.gitignore文件中添加指定的文件或目录。
- 排除单个文件temp.h,需在.gitignore文件中增加一行,写入"temp.h";
- 排除一类文件,需在.gitignore文件中增加一行,写入"*.h";
- 排除文件夹内所有文件,需在.gitignore文件中增加一行,写入"文件夹名称/";
- 提交暂存区到本地仓库
git commit -m "备注信息"
- 查看历史记录
git reflog
或
git log
- 版本回退
//回退到上一次commit版本
git reset --hard HEAD^
//回退到指定版本号
git reset --hard db74fa8
- 分支管理
//创建分支
git branch 分支名称
//查看所有分支
git branch -v
//切换分支
git checkout 分支名称
//把指定的分支合并到当前分支
git merge 需要合并的分支名
//合并时有可能存在冲突,此时需要手动解决冲突,使用vim对冲突的文件进行修改,修改后在添加到暂存区并提交版本,最后进行合并
- 提交到远程仓库
//commit提交到本地仓库后,还需要提交到远程仓库中,
git push origin 分支名称
//如果是推送到默认分支(通常是master 或 main),则分支名称可以不写
git push origin
- 拉取远程分支到本地
//拉取远程分支
git fetch origin 远程分支名
//切换到本地对应分支
git checkout 本地分支名
//拉取远程分支内容到本地分支
git pull origin 远程分支名
四、在麒麟系统中使用
- 安装Git
在麒麟系统中打开终端命令行窗口,输入sudo apt install git-all,确保系统是联网成功的,根据提示进行安装即可。
安装成功后,输入git --version,查看安装情况,如果显示以下内容说明安装成功。
- 克隆项目
麒麟中操作git的方法和在windows中的操作一致。
以上就是git使用的整个流程了,不过git还有很多功能,此处就不详细展开了,有需要的朋友可以搜索,如有疑问或问题麻烦留言指正,非常感谢!