直接用 git gui 生成 ssh
方法一:
参考文章:
《git ssh key配置》
https://blog.csdn/lqlqlq007/article/details/78983879
from: https://blog.csdn/moxiaoya1314/article/details/80978281
通过命令行实现,这样只可以通过命令行clone;
由于本地Git仓库和GitHub仓库之间的传输是通过SSH加密的,所以必须要让github仓库认证你SSH key,在此之前,必须要生成SSH key。
1、cd ~/.ssh/ 【如果没有对应的文件夹,则执行 mkdir ./.ssh】
2、输入git 用户名及邮件
git config –global user.name “xxx”
git config –global user.email “1234@qq”
3、打开 Git Bash, 输入 ssh-keygen -t rsa -C "yourEmail@email",”email@email”是你的github账号.
我之前生成过一次,如果是第一次生成 回车3次就可以了,根据自身配置。
4、打开 C:\Users\Administrator.ssh 目录,此目录下会生成 id_rsa和id_rsa.pub 文件
id_rsa中的内容便是私钥,id_rsa.pub中的内容便是公钥。
5、用记事本打开id_rsa.pub文件,复制内容,在github的网站上到ssh密钥管理页面,添加新公钥,随便取个名字,内容粘贴刚才复制的内容。
6、完成设置。
方法二:
TortoiseGit 添加ssh key
https://wwwblogs/beeasy/p/6066466.html
注:
1:启动Pageant, 如果没有随机启动,那就手动启动;
2:用tortoise git , clone的时候后,Load Putty Key, 添加 .ppk文件;
TortoiseGit 使用扩展名为ppk的密钥,而不是ssh-keygen生成的rsa密钥。使用命令ssh-keygen -C "邮箱地址" -t rsa产生的密钥在TortoiseGit中不能用。
而基于git的开发必须要用到rsa密钥,因此需要用到TortoiseGit的putty key generator工具来生成既适用于git的rsa密钥也适用于TortoiseGit的ppk密钥,具体配置步骤如下:
1)运行TortoiseGit开始菜单中的puttygen程序,如下图示
1)运行TortoiseGit开始菜单中的puttygen程序,如下图示
2)点击“Generate”按钮,鼠标在上图的空白地方来回移动直到进度条完毕,就会自动生一个随机的key,如下图示
如有需要,可以为密钥设置对应的访问密码,就是修改上图中“Key passphrase”和“Confirm passphrase”的值。3)将上图中多行文本框的内容全选、复制,并粘贴到git账户的 SSH public key中,这就是适用于git的公钥。
4)点击上图中的“Save private key”按钮,将生成的key保存为适用于TortoiseGit的私钥(扩展名为.ppk)。
5)运行TortoiseGit开始菜单中的Pageant程序,程序启动后将自动停靠在任务栏中,图标显示为,双击该图标,弹出key管理列表,如下图示
6)点击上图中的“Add Key”按钮,将第4步保存的ppk私钥添加进来,关闭对话框即可。
转自:http://blog.csdn/bendanbaichi1989/article/details/17916795
比较详细的git教程 : https://github/JiapengLi/GitTutorial
方法三:
在git与tortoisegit中使用openSSH与PuTTY
from:https://wwwblogs/podolski/p/4543023.html
问题
在使用Git与tortoisegit的时候,指定远程版本库的地址有2种方式:
- 使用https方式的git地址非常直接(https://xxx.oschina/xxx.git),基本上什么都不需要配置,不管是git bash还是tortoisegit都能完美使用,但是每次需要连接远程服务器时,都要提示我输入用户名与密码,非常不爽;
- 使用ssh方式的git地址非常爽快(git@git.oschina:xxxx/xxx.git),不需要输入密码,但是需要配置。
第一种方式没啥说的,第二种方式的应用,我配置的时候出现了一个问题:
配置了tortoisegit的putty后,直接用tortoisegit可以不输入密码直接完成操作;但是当我使用git bash的时候,使用git pull之类的命令还需要我输入密码...
P.S. 别说我闲的,有tortoisegit为啥还用git bash。实际上,使用git bash在有的操作上还是挺方便的(比如删除分支 git push origin :branchx)。
那怎么弄才能让这2个小家伙都不输入密码呢?
这里又有两种办法...
- 调整tortoisegit的settings中的network选项,将tortoisegitplink.exe改成git安装目录的下bin\ssh.exe。如果先前用ssh-keygen.exe配置好了git下的ssh话,改完就能直接用,没配置好的话...等下说。
- 默认安装tortoisegit,会使用PuTTY(plink)作为默认的ssh方式,声称对windows集成更好,如果不想改这种方式的话,就只能让git的ssh.exe使用PuTTY的密钥了,tortoisegit继续使用PuTTY。
注意:tortoisegit可以自动载入putty key,使用puttygen程序可以生成对应的公钥与私钥。
解决方法
我先前已经配置好了PuTTY,只是bash中的openssh不能用,于是我采用第二种方式。公钥是相同的,需要转换一下私钥。
定位putty的ppk文件,用puttygen(在tortoisegit目录里面)打开(conversions>import key)
然后点击conversions>export openSSH key,保存文件为id_rsa文件,不要拓展名。
然后再点击下面的save public key按钮,保存为id_rsa.pub文件,效果如下:
找到自己%home%下(~)的.ssh文件夹,一般windows 7以后的在c:\用户\“自己的用户名”下面。没有的话,可以新建。
把刚才的两个文件扔进去。打开git bash,执行命令,如下图。
跳转到自己的版本路径,执行git pull,命令行再也不提示密码了...再试试tortoisegit,依然也不提示要密码。
这样实际相当于配置了一回git的ssh,让openSSH与putty使用相同的密钥,git bash使用openssh连接,而tortoisegit使用PuTTY连接,谁也不碍着谁。
实践指南
依据自己的喜好,为了不重复输入用户名与密码,可以选择兼用PuTTY与OpenSSH或者只用openSSH
*兼用openSSH与PuTTY*
1.配置tortoisegit的PuTTY:http://my.oschina/longxuu/blog/141699
2.确认tortoisegit可以正常使用PuTTY,可以按照上面解决方法的步骤配置openSSH以供git bash使用。
*只用openSSH*
1.使用git bash,输入ssh-keygen.exe –t rsa –C “自己的email”
2.如果不想输密码的话,一路回车,程序会自动生成.ssh/下面的id_rsa和对应的pub文件
3.打开id_rsa.pub文件,将内容全部复制
4.在版本控制的网站(例如oschina),在个人资料里面,SSH公钥,新添一个公钥,将刚刚的东西贴进去。
5.可以参照http://git.oschina/oschina/git-osc/wikis/%E5%B8%AE%E5%8A%A9#ssh-keys进行验证
6.调整tortoisegit的settings中的network选项,将tortoisegitplink.exe改成git安装目录的下bin\ssh.exe。
7.在对应项目的文件夹上右键,点击tortoisegit下的settings,定位到remote
8.修改对应的url为SSH地址,putty key定位到id_rsa文件,如下图
9.测试tortoisegit,没有错误,则大功告成~
SourceTree Git GUI 也非常指的推荐;都可以安装;