Windows上git环境配置相关

##简述
git作为代码版本管理工具相当流行,目前Windows系统的git支持也很好了。git做代码版本控制有非常多的优势,和svn等其他传统工具的比较的文章网上很多,可以搜索了解。git和svn我自己都使用过,也都用来管理过中型的项目的代码资源,觉得都不错的。但是随着时间的推移,目前基本全部都使用git了。

##Windows的git的下载安装
Windows下需要安装Windows版本git for Windows(https://gitforwindows.org/),(早前的Windows下的git是msysgit)。另外还可以安装TortoiseGIT图形化工具,对于不习惯使用命令行的可以用TortoiseGIT来完成git的各个操作:
这里写图片描述
软件的安装就不用多说了,直接一路安装即可,速度也很快的。

##使用场景说明
这里是指已经配置好了git server了,代码仓库都放在git server上,现在使用的Windows PC就是一个客户端,本地可以获取server的代码,在本地进行开发调试和测试,然后将代码commit到server端。

##Windows本地的一些基础配置
###环境变量配置
TortoiseGIT会自动设置好Windows的环境变量,而GIT的bin目录中的许多可执行工具的路径并没有添加到环境变量,如我的GIT的bin目录路径添加到系统环境变量为:
这里写图片描述
这样,之后通过在Windows的命令行终端下输入ssh-keygen等命令时就能起作用了,不然会提示“找不到命令”之类的提示。

###SSH配置
SSH RSA key生成,用ssh-keygen生成即可。

###Git全局配置

$ git config --global user.name "username"
$ git config --global user.email emailaddress

###public key添加
登陆git服务器,将ssh-keygen生成的public key添加即可。
注意:其实从上面的SSH配置Git环境配置,到这里的public key添加,都是对于命令行模式下使用而言的,在Windows下如果使用TortoiseGit图形化界面来执行git的操作,就不是用上面的这个ssh-keygen命令生成的key。因此从SSH配置开始的内容,对于使用TortoiseGit的话,对Windows下使用应当没有用。

###Windows下的Key生成与使用
使用TortoiseGit的PuttyKeyGen工具来生成的Public/Private的一对Key。
这里写图片描述
打开之后直接点击Generate来帮助生成一对Public/Private Key(在生成过程中,需要在该界面上不断晃动鼠标,生成速度就会很快,感觉其内部随机数是取的鼠标的位置值……):
这里写图片描述
生成之后:
这里写图片描述
分别点击其中的Save public Key和Save private key,保存这一对Public/Private Key,具体的存储位置自己选择就好。
这样,有了这对key,将其中的public key添加到git server的页面。然后使用TortoiseGit进行git clone操作:
这里写图片描述
在Load Putty Key的位置加载刚才保存的private key,这样点击OK,即可成功从git server进行check out了!

###commit-msg添加
commit-msg添加到C:\Program Files\Git\share\git-core\templates\hooks。

##过程中遇到的问题记录

###git did not exit cleanly (exit code 128)

使用TortoiseGIT的git clone:
这里写图片描述
开始上图中的Load Putty Key是需要勾选的,但是我用的SSH public key,并没有生成什么Putty Key(Putty是用来远程安全连接的,即SSH连接)。然后从网上找了下用TortoiseGIT工具生成putty key,不过觉得没什么用才对。然后点击OK,出现如下错误:
这里写图片描述
关闭之,console界面显示git did not exit cleanly (exit code 128),于是查找该问题,做如下处理:

  • 鼠标右键 -> TortoiseGit -> Settings -> Network
  • SSH client was pointing to C:\Program Files\TortoiseGit\bin\TortoisePlink.exe
  • Changed path to C:\Program Files (x86)\Git\bin\ssh.exe
    这样再试就变成上图的Load Putty Key变灰的形式了。
    不过这里的处理并没有帮我解决问题,所以又改回去了
    ###Permission denied (publickey)
    继上面问题之后,继续用TortoiseGIT进行git clone,然后……然后还是没有成功,提示如下信息:
Permission denied (publickey).
fatal: Could not read from remote repository.

很明显,似乎是我本地的SSH public key不对,嗯,明明配置并添加到server的project页面了啊,本地也保存了该SSH public key的xxx.pub了的。
问题原因:就是上面的public key添加部分提到的,实际上用TortoiseGit并不用这个Key,因为TortoiseGit操作时还需要一个private key,所以必须用PuttyKeyGen工具来生成public/private key pair了。

更多精彩内容请关注“技塑未来”微信公众号。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

技塑未来-苏导

你的鼓励是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值