赞
踩
目录
2、安装git TortoiseGit 生成SSH key 和 git的.ssh目录 创建并配置config文件
2.1、首先必须先安装 Git For Windows 以及 TortoiseGit安装、配置
2.6、如果你您需要使用TortoiseGit 进行代码提交
鉴于目前互联网公司都把代码版本控制都转向与git,并且git也确实有很多优势。我们现实工作之中会出现以下情况,我们自己在github、gitlab、gitee(oschina)上都有账号;可能有些公司也是购买的gitee(开源中国)私有代码托管服务、或者购买的github、gitlab上的私有代码托管服务。于是就会出现 我们自己学习的github上的账号、以及其他git在线网站上的账号;如果仅仅配置一个会出现提交的公司的代码上的用户名是您自己学习github账号名称。于是乎希望把不同在线git托管代码服务账号和提交内容进行隔离。从而实现各个账号各自管理自己的代码;互不干扰!于是就有了在一台电脑上实现针对不同账号、不同在线git代码托管网站进行隔离提交代码的需求。本人期待:在自己电脑上能够实现 自己账号提交代码到github上,公司自己账号也相互隔离提交到github上。本人还拥有gitee(开源中国码云账号),同时也实现能够正常提交代码到码云上。在提交代码的同时必须能够实现既然可以通过 git命令提交,同时又可以通过TortoiseGit 工具提交代码到各自的git代码托管服务器上。
具体安装可以参考此文章:Git安装教程(windows)Git 中文安装教 TortoiseGit安装、配置(重点参考)
生成SSH key,git使用的是SSH加密协议,github网站里用户setting中需要配置相应的SSH keys,这些keys是在C:\Users\Administrator.ssh下管理的。如果需要管理2个账户,一般要生成2套SSH key。
在.ssh文件夹下打开git Bash,输入下面指令生成第一个SSH key,之后连敲3次回车就可以生成默认的key了。
ssh-keygen -t rsa -C "yourname@email.com"
命名为github-rsa.pub,密码 为空或者输入,为空直接点击两次回车
本人还有另外一个 gitee(开源中国码云)账号
ssh-keygen -t rsa -C "oschina-email@email.com"
其实本人在github上和oschina(gitee)上账号的邮箱都是一样的,但是此时需要针对生成的rsa文件名命名为不一样进行区分
命名为oschina-rsa.pub,密码 为空或者输入,为空直接点击两次回车
在.ssh文件目录下创建 config文件,可以通过touch config方式创建,具体添加内容如下代码所示:
- # gitlab
- Host wdcloud.gitlab
- HostName gitlab.wdcloud.cc
- Port 10080
- User git
- PreferredAuthentications publickey
- PasswordAuthentication yes
- IdentityFile ~/.ssh/gitlab-wdcloud-rsa
- # github
- Host github.com
- HostName github.com
- User git-email@126.com
- PreferredAuthentications publickey
- PasswordAuthentication yes
- IdentityFile ~/.ssh/github-rsa
- # oschina
- Host gitee.com #必须必须是访问git域名
- HostName gitee.com
- User gitee-email@126.com
- PreferredAuthentications publickey
- PasswordAuthentication yes
- IdentityFile ~/.ssh/oschina-rsa
-
- # 配置文件参数
- # Host : Host可以看作是一个你要识别的模式,对识别的模式,进行配置对应的的主机名和ssh文件
- # HostName : 要登录主机的主机名
- # User : 登录名
- # IdentityFile : 指明上面User对应的identityFile路径
到此为止,已经生成的git上ssh key;如果您不需要使用 TortoiseGit 进行代码提交;按照网上部分文章 基本可以实现命令行方式提交代码了。如下面的文章:Windows下Git多账号配置,同一电脑多个ssh-key的管理
具体如何设置可以参考上面提交的文章 Windows下Git多账号配置
$ git config --global --unset user.name 3333
$ git config --global --unset user.email 3333@huake.com
TortoiseGit使用的是扩展名为ppk的密钥,而不是ssh-keygen生成的rsa密钥。因此需要用到TortoiseGit的putty key generator工具来生成适用于TortoiseGit的ppk密钥。
使用putty key generator可以生成成套的适用git的rsa密钥和适用于TortoiseGit的ppk密钥,这里只用上面已生成的rsa密钥来生成ppk密钥。
将刚才生成的oschina-rsa.pub 和 github-rsa.pub引入,生成ppk密钥,还存在.ssh中。最后入下图所示
在刚才从git上克隆到本地的项目中打开TortoiseGit的setting按下图配置。
基本到这步也应该可以了,但是我又遇到一个问题,就是在push代码的时候一直报错:
error: cannot spawn C:\Program Files\TortoiseGit\bin\TortoiseGitPlink.exe: No such file or directory fatal: unable to fork
发现是因为我的TortoiseGit是安装在D盘的,所以找不到。仍然要改setting中的配置,
但是只改路径时,怎么都应用保存不了,百度半天也无解。最最后勾选了上面代理的选项,才保存进去了。
运行TortoiseGit开始菜单中的Pageant程序,程序启动后将自动停靠在任务栏中,图标显示为,
双击该图标,弹出key管理列表,如下图示
点击Add Key,将保存的ppk文件添加进来即可。
至此终于可以通过TortoiseGit上传github了,项目也可以正常拉取,同时命令也可以拉取。
最后实现的 git 命令拉取效果如下图所示:
参考文章 :
同台电脑上使用2个git账号 并用TortoiseGit管理 在git与tortoisegit中使用openSSH与PuTTY(转载)
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。