Tortoisegit和GitHub使用入门
2018-04-15 14:49 糯米粥 阅读(6373) 评论(1) 编辑 收藏 举报
作为一个Code人对于github并不陌生吧,记录下使用说明:
gitHub是一个面向开源及私有软件项目的托管平台,因为只支持git 作为唯一的版本库格式进行托管,故名gitHub。
工具:
git:是一个开源的分布式版本控制系统,可以有效、高速的处理从很小到非常大的项目版本管理 https://git-scm.com/downloads
TortoiseGit:是一个开放的git版本控制系统的源客户端 https://tortoisegit.org/download/
先安装git安装后
在安装TortoiseGit
对于tortoisegit可以支持使用密钥有两种,一种是支持openssh的密钥,一种是支持putty的密钥。但是这两种不同,
后面会介绍这两种分别怎么从github中clone项目,这里选哪个不重要,后面是可以在设置里面切换的
这些我想大家都会安装,安装完成后。首先是生成秘钥
在设置里面可以看到TortoiseGit是用那种秘钥,我这里是是SSH
安装完成后TortoiseGit,配置用户名和邮箱,我这里是测试。随便写的
这里用户名和邮箱,会在提交记录log里面显示。这样就知道代码是谁更改的
SSH生成秘钥
1:打开Git.Bash,git的很多命令我也不会。自己百度咯
先看看之前是否有生成SSH秘钥,输入 cd ~/ .ssh 进入.ssh文件夹
显示文件 ls
有文件,则rm * 删除所有
生成秘钥命令:邮箱建议是有效的。我这里是测试,随便写的
$ ssh-keygen -t rsa -C "xx@163.com"
回车:
Generating public/private rsa key pair.
Enter file in which to save the key (/c/Users/xxxx_000/.ssh/id_rsa): #不填直接回车
Enter passphrase (empty for no passphrase): #输入密码(可以为空)
Enter same passphrase again: #再次确认密码(可以为空)
Your identification has been saved in /c/Users/xxxx_000/.ssh/id_rsa. #生成的密钥
Your public key has been saved in /c/Users/xxxx_000/.ssh/id_rsa.pub. #生成的公钥
.ssh中已经存在文件
把id_rsa.pub中的秘钥配置到github中 .pub扩展名说明是public,公共的
打开github(前提你要有账号),新建项目
创建完成后,添加SSH到github。单击:
测试ssh keys是否设置成功。
$ ssh -T git@github.com 回车
问你是否继续。连接到github,输入yes回车
Hi xxx! You've successfully authenticated, but GitHub does not provide shell access. #出现词句话,说明设置成功。
在.ssh中多了一个文件
然后看Clone地址:进入项目里面,
可以看到SSH地址,这里可以切换HTTPS,单击使用Use HTTPS
SSH和HTTPS是有区别的。稍后一起讲。这里先用SSH方式
以上配置没问题。那么就可以Clone项目了。右键克隆
可以添加一个文件,提交测试下
提交并推送成功后,
回到自己的github上看看提交记录是否成功,name是在git中设置的用户名
那用HTTPS 试下 Clone并且push操作,同样成功
至此SSH已经成功了,看看putty秘钥方式获取github代码
先在git中切换putty方式,指定ssh的客户端为TortoisePlink
生成putty密钥
在安装tortoisegit的时候,默认还会安装有Puttygen.exe这个程序,这个程序是可以生成putty密钥的。
点击Generate按钮后会按一个进度条,然后鼠标不断在该程序内动,目的是生成一些随机数。
点击save private key保存putty的私钥,
问你是否保存这个没有密码的key,单击是
putty的密钥的后缀名是ppk。在clone时候需要用
可以设置密码也可以不设置
复制上面的key添加到github上,跟上面添加SSH一样
此时有两个了
把这个key加载到git中
这样就可以直接clone了,
或者可以选择在Clone的时候选择putty秘钥
1.clone项目:使用ssh方式时,首先你必须是该项目的管理者或拥有者,并且需要配置个人的ssh key。下面会谈到如何生成并设置你的ssh key。而对于使用https方式来讲,就没有这些要求。
2.push:在使用ssh方式时,是不需要验证用户名和密码,如果你在配置ssh key时设置了密码,则需要验证密码。而对于使用https方式来讲,每次push都需要验证用户名和密码。
最后github上的测试项目用完了要删除,方法如下:
参考资料:https://www.cnblogs.com/hujunzheng/p/4707306.html