一、Windows环境下搭建Git服务
Git没有客户端服务器端的概念,但是要共享git仓库,就需要用到SSH协议(FTP , HTTPS , SFTP等协议也能实现Git共享,此文档不讨论),但是SSH有客户端服务器端,所以在windows下的开发要把自己的Git仓库共享出去的话,就必 须做SSH服务器
这里使用Gitblit进行Git服务的搭建
Gitblit是一个开源的、纯Java堆栈管理,查看,服务Git存储库。
它的设计主要是作为一种工具为小型工作组想主机集中存储库。
由于Gitblit是纯java开发,故利用Gitblit可以很好地在window,Linux,osx等系统上部署Git服务器
Gitblit网址 http://gitblit.com/
搭建过程
1,、安装Java环境
可以自己网上相关的教程进行搭建,此处略过。
2、下载Gitlib
进入官网选择Windows操作系统的版本进行下载
Gitblit网址 http://gitblit.com/
下载完成后解压缩包即可使用,无需安装
3、创建一个用于存储资料的文件夹
比如 D:\Git\GitRepository
4、配置gitblit.properties 文件
找到解压缩包目录下的data文件夹下的gitblit.properties文件
打开发现里面的内容是指向defaults.properties文件的
打开defaults.properties文件进行相关的配置
- 找到git.repositoriesFolder,配置第3步创建的目录路径
git.repositoriesFolder=D:\Git\GitRepository
- 设置端口号server.httpPort,
server.httpPort = 10101 #此端口可以自定义其他值
- 设置服务器的IP地址
server.httpBindInterface = 192.168.1.141
- 找到server.httpsBindInterface,设定为localhost
server.httpsBindInterface = localhost #这里是https
- 保存文件
5、运行gitblit.cmd 批处理文件
如果成功,那么如下图所示:
6、在浏览器中进行访问
在浏览器中输入之前设置的IP地址+端口号进行访问
http://192.168.1.141:10101
现在就可以使用GitBlit了,默认用户名密码都是:admin
7、设置以Windows Service方式启动Gitblit
在解压包的当前目录下,找到installService.cmd文件,用文本编辑器打开
- 修改 ARCH
32位系统:SET ARCH=x86
64位系统:SET ARCH=amd64
- 添加 CD 为程序目录
SET CD=D:\Program Files\gitblit-1.8.0 # 你的实际目录
- 修改StartParams里的启动参数,给空就可以了
设置完成
8、以Windows Service方式启动Gitblit
右键,以管理员身份运行installService.cmd文件
运行后在服务器的服务管理下,就能看到已经存在的gitblit服务了
平时使用时,保持这个服务是启动状态就可以了
至此,Windows环境下搭建Git服务完成。
二、AndroidStudio配置Git并提交代码
1、安装Git客户端
到Git官网下载最新版本,下载安装,按照向导一路安装下去就OK了。
2、在AndroidStudio配置Git的运行路径
Ctrl + Alt + S 打开,找到 Version Control -> Git进行配置,如下图
配置好后,点击Test按钮,成功的话,如下图:
3、在Gitblit创建仓库
略
4、在AndroidStudio创建本地仓库
选择工程,在当前工程下,选择VCS->Import into Version Control->Create Git Repository...
如下图:
5、把工程添加进本地仓库
6、提交到本地仓库
提交出现警告,直接commit
7、push到Gitblit服务
弹出的Push Commits对话框中,点击Define remote
在 Define Remote 对话框中的URL填写在Gitblit创建的仓库的路径,这里为http路径
点OK后,弹出如下对话框,点Push
push成功后,就可以在Gitblit上面看到提交的文件了。
8、第一次Push需要解决的问题
如果是第一次Push的话,会出现问题,弹出错误信息:
Push rejected,Push to origin/master was rejected
出现错误的原因是本地仓库没有远程仓库的相关文件,需要先pull
但是第一次pull也会有问题,弹出错误信息:
Git Pull Failed
fatal:refusing to merge unrelated histories
其原因是不能合并两个不相关的仓库
解决办法
进入项目的当前目录,右键->Git Bash Here,点击运行
输入命令
git pull origin master --allow-unrelated-histories
进入vim按i键后填写提交信息,
退出:按Esc键,输入 :wq! 回车
pull成功后,就可以push了
push命令
push -u origin master
整个如下:
如果 push -u origin master 失败的话,可以尝试如下命令
push -f origin master
不过要慎用!
参考:
http://blog.csdn.net/fuck487/article/details/51952429
http://blog.csdn.net/a10615/article/details/52135617