发布于 2016-10-09 06:24:25 | 570 次阅读 | 评论: 0 | 来源: PHPERZ
SourceTree Git和Hg的客户端
SourceTree 是 Windows 和 OS X 下免费的 Git 和 Hg 客户端。支持创建、克隆、提交、push、pull 和合并等操作。
欲哭无泪啊,中午开始折腾这玩意的,结果弄到现在,晚饭都没心情吃了,终于被我弄出来了
先是安装 git,一定要安装最新版本,一定要安装最新版本,一定要安装最新版本,重要的话说三遍,否则你会像我下面一样,遭遇到超级多 bug。
安装好之后就是配置了,随便在哪里打开 git bash 开始输入以下内容
git config --global user.name "你在github官网上注册的名字"
git config --global user.email "你在github官网上填写的邮箱"
之后就是一个很奇怪的配置,因为我感觉他无关紧要,可是偏偏会作为 bug 经常在 SourceTree 上跳出来
git config --global color.ui auto
这个是设置命令行颜色的。
接着就是要创建密钥了,是为 SoourceTree 设置的
首先创建私钥,我是 windows 的系统,所以先打开这个文件夹,我的路径是这样的 C:\Users\Administrator\.ssh
再回到命令行来,我们刚才只是生成了证书,还没把证书导入到 git 中呢。首先启动 ssh-agent
exec ssh-agent bash
之后不会有显示的,再来输入
eval ssh-agent -s
会显示在当前路径下一些证书的信息,接着把刚才输入的证书导入进 git
ssh-add id_rsa
接着再来测试我们生成的证书是否正确
ssh -T git@github.com
如果出现
hi hirocastest! you've successfully authenticated,but GitHub does not provide shell access.
那就可以放声大笑了,连接成功了!
接着是安装 git 的图形化界面。
先来github for windows,我是使用绿豆加速器,连接的美国地区的,下载速度很快,基本两三分钟就能下过来,而且绿豆加速器有送免费翻墙时间的,所以不用担心。本来简简单单的一件事我也不会折腾这么久。原因是我下载、安装都成功了,点击 GitHub 之后,也显示了我的 github 帐号以及信息,但是创建本地仓库老是失败,显示内容大致上是这样的:
failed to create repositories
而且从 github 网站上也能下载自己的仓库文件到本地,可是操作什么的经常会出现一些莫名奇妙的错误,这里就不赘述了。究其原因就是因为我下载的 git 版本不对,当我把 git 的版本升级到最新版之后这些内容就都消失了。
再来是重头戏--SourceTree 的配置了
SourceTree 的安装是一路傻瓜式的点击 next 就行了,如果是第一次安装会让你输入一些信息,像他们公司的帐号啊,如果你没有就要去注册,可是注册时需要填写邮箱,别指望 QQ 邮箱,163 邮箱也不行,我那个时候没办法就去注册了一个谷歌账户,再来使用谷歌账户附送的谷歌邮箱 Gmail 来注册成功的,或者也可以直接使用谷歌账户,总之就是在这里提个醒。
安装完成后,就打开 SourceTree,开始配置我们的帐号信息了,点击上面的工具栏的的 工具->选项,在里面配置如下信息
接着就是把你电脑上的 git 连接到 SorceTree 上
配置好这些之后你可以尝试点击工具栏里的 克隆/新建 来将你的 GitHub 上的仓库下载到本地,或者在本地创建仓库,如果没有异常的话,那么就是安装成功了。
这里再来说几句题外话,首先,Git 是关键,无论是 github for windows 还是 SourceTree 都是在使用 GUI 界面来免去了直接使用命令行操作 Git 的这么一个过程,所以 Git 一定要安装正确。接着就是 SourceTree 自带有生成证书的功能,但是生成的证书导入 Git 的时候老是报错,所以我是直接使用 Git 生成证书再来导入到 SourceTree 中的。
最后是我遇到的一些异常以及解决的办法
git for windows
与本地仓库的相关操作总是失败,出现各种错误,尝试更换 git 的版本试试,我使用 2.7 版本的时候就出现了这样的问题,切换成 2.10 之后问题就消失了。
SourceTree
ssh-agent 启动失败,第一可能是你没安装 Git 就开始安装 SourceTree 了,所以在 SourceTree 中就提示 ssh 代理启动失败
还有一个错误代码128的,也是更新 Git 版本之后就可以解决的。到此为止,终于把本地的 GitHub 配置好了,接下来就是 GitHub 的学习了。