0、起因
以前一直自己压缩成myapp版本号.rar放到某个文件夹中的形式存放自己的一些项目。就在前几天,想要找到某个项目的一个功能,却发现已经忘记存放在哪,好不容易想起存放目录,又不知道存放在哪个版本中……只能一个个解压出来看。
假如,我要找的不知道在哪个文件……岂不是更麻烦……
所以有了下文……
1、下载需要的软件
Copssh_4.1.0(这是我使用的版本)
msysgit1.8.0(也可以使用TortoiseGit-1.8.5.0-64bit.msi)
如果不是局域网,你还需要puttygen.exe
2、安装并配置这两个软件
Copssh_4.1.0的安装可能比较复杂:
启动这个
打开Users添加用户
选择一个用户,以后登录到git服务器需要用到(像我选择了Administrator)
记得去掉允许密码验证、选择linux shell
3、关于不是同一个局域网的设置
==================================================
下面的部分是设置别的域访问的,如果在同一个局域网,直接跳过
==================================================
设置完毕之后,设置key
设置为linux shell,要不然用git连接上去之后,会出现乱码
打开第一个开关,否则会出现权限不足的情况(参考特殊情况b,可以手动修改,不过每次启动都会变回来)
这样之后C盘下面就会出现一个.ppk的私钥
putty的私钥文件格式和Copssh的不同,需要转换才能使用 ,打开puttygen.exe
选择一个路径和文件名,保存下来
4、对git服务器的访问
以后可以通过这个私钥进行ssh 的访问
==================================================
到git的安装目录,把
拷贝到ssh的安装目录\bin下(比如默认的为C:\ICW\bin)
下面通过只需要通过git使用
ssh Administrator@192.168.1.107
连接git服务器
===================================================
遇到一些特殊的情况:
===================================================
a、打开了防火墙(windows的防火墙、其他软件的防火墙一般都会拦截22端口的ssh服务器,可以先暂时关闭在更新之后再开启,或者设置不拦截)
b、权限不足(后面跟publickey----前面没勾上第一个选项的原因导致)
到路径C:\ICW\etc找到sshd_config
把里面的用户名(我这里为Administrator)下的PasswordAuthentication修改为yes(默认为no):
重新启动一下ssh服务器
c、按照网上的说法,还会遇到打不开22端口的情况(和a是一样的提示,不过我没遇到),也给出一个解决方法
在路径C:\ICW\home\Administrator\.ssh 下创建一个config文件(无后缀名),粘贴上如下内容:
Host github.com
User git
Hostname ssh.github.com
PreferredAuthentications publickey
IdentityFile ~/.ssh/id_rsa
Port 443
===================================================
那么现在我用另外的一台局域网的电脑连接这个服务器
填上192.168.1.107 pc上面Administrator的密码(不会出现*)
这样的提示,表示已经登录成功(路径自动切换到了ssh的目录下)
5、git的一些简单使用
下面找到我项目的路径(myapp)
用git init初始化
为了做测试,随便把一个项目放进来
git add lua
查看一下git status
简单的提交一下
提示,我没有设置email和Name(按照提示设置一下)
再次提交
到服务器中修改一下文件,比如对lapi.h加入一段注释:
回到客户端中,用git diff检测一下差异
如果客户端同意这个提交,可以直接commit
查看一下log:
提交恢复可以使用git reset --soft (退回的版本号的前7位)命令
提交恢复、并且恢复代码使用git reset --hard (退回的版本号的前7位)
其中“退回的版本号的前7位”可以通过log查看
6、最后
如果在客户端维护代码,可以git clone
然后使用git push等命令,就如操作github那样的形式
7、参考文章:
a、连接到github page时连接超时
http://www.byywee.com/page/M0/S770/770203.html
b、在Windows平台搭建基于SSH的Git服务器
http://www.cnitblog.com/luckydmz/archive/2013/02/03/86960.html
c、Windows下Git服务器搭建及问题处理技巧
http://os.51cto.com/art/201304/387485.htm
d、Windows下搭建基于ssh的git服务器
http://blog.csdn.net/ccf0703/article/details/7578276
e、git服务器搭建