git协议实现管理(三个步骤)

GitHub官网访问:

https://github.com/dashboard

初次使用git的用户要使用git协议大概需要三个步骤:

一、生成密钥对

二、设置远程仓库(本文以github为例)上的公钥

三、把git的remote url远程仓库URL可访问路径修改为git协议(以上两个步骤初次设置过以后,以后使用都不需要再次设置,此步骤视以后项目的remote url而定,如果以后其他项目的协议为https则需要此步骤)

一、生成密钥对

大多数Git服务器都会选择使用SSH公钥来进行授权。系统中的每个用户都必须提供一个公钥用于授权,没有的话就要生成1个,生成公钥的过程在所有操作系统上都差不多。首先你要确认一下本机是否已经有个公钥

SSH公钥默认储存在账户的主目录下的~/.ssh目录(/Users/haijunyan/.ssh)

cd ~/.ssh //cd /Users/haijunyan/.ssh(若相对路径失效则采用绝对路径)

ls

查看有没有id_rsa和id_rsa.pub(或id_dsa和id_dsa.pub类成对的文件),有.pub后缀的文件是公钥,另一个文件则是密钥。

假如没有这些文件,甚至连ssh目录文件夹都没有用

ssh-keygen -t rsa -C "15261882407@163.com"

来创建(该程序在Linux/Mac系统上由SSH包提供,而在Windows上则包含在MSysGit包里:

直接按Enter就行。然后,会提示你输入密码,如下(建议输一个,安全一点,当然不输也行,应该不会有人闲的无聊冒充你去修改你的代码))。

完了之后,大概是这样

Your identification has been saved in /Users/haijunyan/.ssh/id_rsa

Your public key has been saved in /Users/haijunyan/.ssh/id_rsa.pub到此本地密钥对生成。

二、添加公钥到你的远程仓库(github)

1.查看你生成的公钥:

cat ~/.ssh/id_rsa.pub

ssh-rsa

AAAB3NzaC1yc2EAAAADAQABAAABAQCOX6L1zLL4VHuvGb8aJH3ippTozmReSUzgntvk434aJ/v7kodJ/MTyB1WXFCR+HAo3FXRitBqxiX1nKhXpHAZSMciLq8vR3c8E7CJZN733f5AL8uEYJA+YZevYSUCvEg+umT7PHghKYaʃ16waCxV7sjYP7Z6V790MCEAGDNXC26IBMdMgOluQjp606j2KAdtRBdCDS/QIU5THQDxJ91BXjk1fiq9tITo/aXBvjZeD+gH/Apkh/0GbO8VQLiYYmNfqqAHHeXdltORn8N7C910a/UW3KM7QdXo6J0GF1BVQeTE/IGqhMS5PMln3adninRadnin-PC

2、登陆github网站帐户,点击头像,然后Settings->左栏点击SSH and

GPG keys ->点击New SSH key

3、然后cmd+all复制上面公钥内容,粘贴进"Key"文本域内,title域自己随便起个名字。

4、点击Add key。

完成以后,验证下这个key是不是正常工作:

ssh -T git@github.com

Hi xxx! You've successfully authenticated, but GitHub does not provide shell access.

恭喜设置已经成功了。

三、文件config配置

添加私钥至本地Chain/SourceTree

执行

ssh-add ~/.ssh/id_rsa

将sshkey私钥添加到sourceTrees(若~/.ssh/id_rsa: No such file or directory相对路径失效则采用绝对路径)

ssh-add /Users/haijunyan/.ssh/id_rsa

执行

ssh-add -K ~/.ssh/id_rsa

将sshkey私钥添加到钥匙串

ssh-add -K /Users/haijunyan/.ssh/id_rsa

cd到ssh目录下

touch config

命令创建config文件

执行open config打开config文件输入以下内容并保存

Host *

UseKeychain yes

AddKeysToAgent yes

IdentityFile ~/.ssh/id_rsa

四、 known_ hosts文件:

中转指向ServerNodeNameUnknown服务器加入白名单列表内服务端初次链接优先通过终端触发激活

//备注:曾经通过HTTP协议已下载的本地映射库需要切换路径渠道http>ssh

五、

方案一(推荐:本地删除重新ssh导出映射库):

1.本地删除旧映射库

2.登录GitHub官网找到目标库对应的ssh渠道路径

eg:git@github.com:haijun-suyan/TeamGroupSimulation.git

3.sourcetree > 从URL克隆

方案二(不推荐):

修改git管理的remote url远程访问路径

git remote -v //查看当前项目的remote url访问路径(格式)

origin https://github.com/someaccount/someproject.git (fetch)

origin https://github.com/someaccount/someproject.git(push)

以上结果说明项目当前是使用https协议进行访问(git@开头则表示git协议)则登陆github网站在上面可以看到ssh协议相应的url路径后使用命令

git remote set-url来调整url访问路径

git remote set-url origin git@github.com:someaccount/somproject.git

再用命令

git remote -v

查看url访问路径是否已经变成了ssh地址路径

愉快使用git fetch,git pull,git push

备注:

cd /Users/haijunyan/.ssh/

pwd

ls

ssh-keygen -t rsa -C "15261882407@163.com"

ssh-add /Users/haijunyan/.ssh/id_rsa

ssh-add -K /Users/haijunyan/.ssh/id_rsa

ssh -T git@github.com

cd /Users/haijunyan/Desktop/CustomKit/TeamGroupSimulation

git remote -v

备份:

相关推荐
德彪稳坐倒骑驴4 小时前
Git常用命令
git
无限进步_5 小时前
【C语言&数据结构】对称二叉树:镜像世界的递归探索
c语言·开发语言·数据结构·c++·git·算法·visual studio
qq_5470261798 小时前
Git 使用指南
git
XiaoHu02079 小时前
Linux多线程(详细全解)
linux·运维·服务器·开发语言·c++·git
*才华有限公司*10 小时前
RTSP视频流播放系统
java·git·websocket·网络协议·信息与通信
juelianhuayao11 小时前
Git错误提交后如何快速删除本次commit
git
chen<>11 小时前
Git原理与应用
大数据·git·elasticsearch·svn
小兔崽子去哪了11 小时前
Git 专题
git
金米kk12 小时前
git pull时报错Your local changes to the following files would…的解决办法
git
超级罗伯特12 小时前
git一次性完成仓库下载及所有分支获取
git·git仓库拉取