Git:SSH、SSH与HTTP区别、git常用命令
SSH
1.首先需要检查你电脑是否已经有 SSH key
cd ~/.ssh
ls
1
2
.ssh表示ssh文件是个隐藏文件
查看是否存在 id_rsa.pub 或 id_dsa.pub 文件,如果文件已经存在,那么可以跳过步骤2,直接进入步骤3。
2.创建一个 SSH key
ssh-keygen -t rsa -C "your_email@example.com"
1
-t 指定密钥类型,默认是 rsa ,可以省略。
-C 设置注释文字,比如邮箱。
-f 指定密钥文件存储文件名。
以上代码省略了 -f 参数,因此,运行上面那条命令后会让你输入一个文件名,用于保存刚才生成的 SSH key :
Generating public/private rsa key pair.
Enter file in which to save the key (/c/Users/you/.ssh/id_rsa): [Press enter]
当然,你也可以不输入文件名,使用默认文件名(推荐),那么就会生成 id_rsa 和 id_rsa.pub 两个秘钥文件。
接着又会提示你输入两次密码(该密码是你push文件的时候要输入的密码,而不是github管理者的密码),
当然,你也可以不输入密码,直接按回车。那么push的时候就不需要输入密码,直接提交到github上了:
Enter passphrase (empty for no passphrase):
Enter same passphrase again:
接下来,就会显示如下提示信息:
Your identification has been saved in /c/Users/you/.ssh/id_rsa.
Your public key has been saved in /c/Users/you/.ssh/id_rsa.pub.
The key fingerprint is:
01:0f:f4:3b:ca:85:d6:17:a1:7d:f0:68:9d:f0:a2:db your_email@example.com
当你看到上面这段代码的时候,那就说明SSH key 已经创建成功,你只需要添加到github的SSH key上就可以了。
3.添加你的 SSH key 到 github上面去
a、首先你需要拷贝 id_rsa.pub 文件的内容,使用用编辑器打开文件,复制内容,(注意仅复制文本,不能多空格或者回车):
gedit ~/.ssh/id_rsa.pub
1
b、登录你的github账号,从右上角的设置Settings 进入,然后点击Personal setting 中的SSH and GPG keys,点击New SSH key,把复制的 SSH key 代码粘贴到对应的输入框中,记得 SSH key 代码的前后不要留有空格或者回车。输入别名,默认使用邮箱。
4.测试一下该SSH key
在git Bash 中输入以下代码
ssh -T git@github.com
1
当你输入以上代码时,会有一段警告代码,如:
The authenticity of host ‘github.com (207.97.227.239)’ can’t be established.
RSA key fingerprint is 16:27:ac:a5:76:28:2d:36:63:1b:56:4d:eb:df:a6:48.
Are you sure you want to continue connecting (yes/no)?
这是正常的,你输入 yes 回车既可。如果你创建 SSH key 的时候设置了密码,接下来就会提示你输入密码,如:
Enter passphrase for key ‘/c/Users/Administrator/.ssh/id_rsa’:
当然如果你密码输错了,会再要求你输入,知道对了为止。
注意:输入密码时如果输错一个字就会不正确,使用删除键是无法更正的。
密码正确后你会看到下面这段话:
Hi #######! You’ve successfully authenticated, but GitHub does notprovide shell access.
这时表示配置成功,这时就可以在本地通过SSH的方式去clone或fetch等了。
SSH链接为:git@github.com:username/project.git
SSH与HTTP区别
1.clone项目:使用ssh方式时,首先你必须是该项目的管理者或拥有者,并且需要配置个人的ssh key。而对于使用https方式来讲,就没有这些要求。
2.push:在使用ssh方式时,是不需要验证用户名和密码,如果你在配置ssh key时设置了密码,则仅需要验证配对密码。而对于使用https方式来讲,每次push都需要验证用户名和密码。
SSH方法上传(http方式类同)
上传代码前需要先搞清楚git管理代码的机制,如下图所示
其中:
名称 解释
Workspace 工作区
Index / Stage 暂存区
Repository 仓库区(或本地仓库)
Remote 远程仓库
步骤:
1.在workspace添加git配置文件
git init
1
2.添加要上传的代码及文件至Index
git add README.md
1
3.提交代码至Repository
git commit -m "first commit"
1
4.添加远程仓库(Remote)名及路径
git remote add origin git@github.com:username/test.git
1
5.push,即上传(Repository)代码至远程仓库保存(Remote)
git push -u origin master
1
这里origin为远程仓库名 master为分支
常用命令
1.使用命令 git remote -v 查看你当前的 remote url
git remote -v
1
2.使用命令 git remote set-url 来调整远程url,可以为http方式和SSH方式,下面为SSH方式:
git remote set-url origin git@github.com:username/project.git
1
3.添加当前目录的所有文件到暂存区
git add .
————————————————
原文链接:https://blog.csdn.net/liuxiaodong400/article/details/81221834
Git:SSH、SSH与HTTP区别、git常用命令的更多相关文章
- git中通过实际操作来了解常用命令
基本的6个命令 常用的就下面6个命令,但是详细的可能有上百个命令. 还需要特别了解git的几个名词,workspace:工作区,Index/Stage:暂存区,Respository:本地仓库,Rem ...
- Git使用:安装,使用及常用命令整理
对于程序猿而言,git是最常接触的工具之一,因此需要熟练快速掌握其技巧. git安装: windwos: [原创]Windows平台下Git的安装与配置 Ubuntu:git与github在ubun ...
- SSH免密码登录和Git免密操作
SSH免密码登录和Git免密操作 每次打完包后都需要把包传到对应的服务器上从而让测试人员下载安装,但是每次ssh或scp时都需要重新输入密码:使用git代码托管平台只要修改了密码就需要输入密码.本文主 ...
- git常用命令及问题
Git基本操作 git init 创建新的git仓库 git clone [url] 使用 git clone 拷贝一个 Git 仓库到本地 git status 查看工作区 git stash li ...
- GIT学习——天天都在用Git,那么你系统学习过吗?(学习过程)
你系统学习Git了吗? 学习圣思园张龙老师的Git课程. 使用Mac编程的好处,不是因为Mac长得好看 Git内容学习准备 如果你还没有用Git,就不要写代码了. GitHub仓库的使用. 新员工入职 ...
- 搭建Git远程仓库(也就是Git服务器,不用再连Github了)
github上一般托管的代码都是公开的,任何人都可以查看.复制下载等,而私有的项目则需要付费.所以可以自己搭建一个git服务,自己人用. 首先安装git: sudo apt-get install g ...
- Git常用命令及使用,GitLab/GitHub初探,Git/Svn区别
Git安装配置及常用命令 0 Git本地分支管理 1 Git远程分支管理 2 Git Tag标签管理 3 Git Log日志 4 其它高级命令 5 常规使用及介绍 6 角色权限 7 分支定义 8 一般 ...
- Mac下git通过SSH进行免密码安全连接github
Git——The stupid content tracker(傻瓜内容跟踪器) Git是Linux的缔造者Linus Torvalds为了帮助管理Linux内核源码而开发的一款免费.开源的分布式版本 ...
- Git配置SSH Key
最近看到很多人在配置Git时,遇到很问题,网上教程千篇一律.这儿自己单独记录一份. Git配置SSH Key 1.检查本机是否有ssh key设置,切换到.ssh目录 $ cd ~/.ssh 或cd ...
随机推荐
- OC代码规范小记
代码规范 一:基本代码命名 1.通用原则 尽量清晰又简洁,无法两全时清晰更重要,可读性优先级更高. insertObject:atIndex: 好的 insert:at 坏的 removeObject ...
- Data Management Technology(3) -- SQL
SQL is a very-high-level language, in which the programmer is able to avoid specifying a lot of data ...
- 如何使用压缩的方式将Windows下的zip压缩包上传到Linux系统
我们可以使用在Windows下压缩文件夹,然后到Linux系统下解压缩的方式,完成整个上传工作. 第一步:在Windows系统下,将整个文件夹压缩成zip后缀的压缩包 方法一:
- bay——vSphere Oracle12cR2的RAC搭建安装之配置共享存储 - 副本
vSphere Oracle12cR2的RAC搭建安装之配置共享存储 https://blog.csdn.net/yuzifen/article/details/82496503 一.第一台机器添加两 ...
- fork函数的一些小结
今天遇到一个这样的问题,假设父进程有一个变量S,fork后,子进程中的变量S地址是否和父进程中的变量S 是相同的? 再学操作系统的时候,知道fork是采用的写时复制,所以如果子进程或者父进程不对变量S ...
- CPU相关概念
整部主机的重点在于中央处理器 (Central Processing Unit, CPU),CPU 为一个具有特定功 能的芯片, 里头含有微指令集,如果你想要让主机进行什么特异的功能,就得要参考这颗 ...
- CSRF介绍
对于常规的Web攻击手段,如XSS.CRSF.SQL注入.(常规的不包括文件上传漏洞.DDoS攻击)等,防范措施相对来说比较容易,对症下药即可,比如XSS的防范需要转义掉输入的尖括号,防止CRSF攻击 ...
- 题解:A
A (a.pas/c/cpp) [题目描述] 对于给定的一个正整数n, 判断n是否能分成若干个正整数之和 (可以重复) , 其中每个正整数都能表示成两个质数乘积. [输入描述] 第一行一个正整数 q, ...
- Where does Oracle SQL Developer store connections? oracle SQL Developer 连接信息保存的位置,什么地方
oracle SQL Developer 连接信息保存的位置,在什么地方? 在切换登录用户后,oracle SQL Developer 连接信息不见了.只要以前的用户信息还存在,可以在路径 C:\Us ...
- 《最优化导论第4版》高清中文版PDF+高清英文版PDF+习题题解
<最优化导论第4版>高清中文版PDF+高清英文版PDF+习题题解 存放在语雀 凸优化 · 语雀