代码需要上传到云端,找GitHub来存储就对了
SSH key验证身份
原理:你的GitHub账号存着公钥,你的电脑存着私钥,上传的代码用私钥加密,GitHub用公钥解密,解开即配对成功;
如何生成ssh key
-
去GitHub帮助文档抄代码来运行,具体代码我也整理下来了,你可以直接复制:
ssh-keygen -t rsa -b 4096 -C 你的邮箱注:运行这句话之后,会按三次回车,看到下图所示的内容即成功生成公钥和私钥;

-
如何查看公钥和私钥的生成位置?
注:上图所示的地方是你公钥和私钥生成的地方,可以通过命令
cd c/Users/lenovo/.ssh进入该目录,通过ls查看目录里面生成的公钥id_rsa.pub和私钥id_rsa,需要注意的是,不要给别人看你的私钥; -
进入GitHub填入你的公钥:具体位置是:
- 点击
settings - 点击
SSH and GPG keys - 点击
New SSH key Title里面输入你想表示的哪台电脑key里面需要输入的是id_rsa.pub里面的内容(回到命令行运行cat c/Users/lenovo/.ssh/id_rsa.pub,将运行结果全部复制,粘贴到key里面即可)
- 点击
-
测试配对是否成功:运行
ssh -T git@github.com,中间需要输入yes,回车后看到Hi 某某名即为成功;
上传和下载代码
主要命令:git pull、git push、git clone
上传代码
-
进GitHub,新建GitHub Repo(仓库),复制其ssh地址
注:写完你的
Repository name后,尽量不要随意更改下面的内容,直接点Create repository;注:用的是ssh地址,不要点击http的地址;
-
复制页面里的代码(关掉翻译)
注:上面一部分代码是在你没有本地仓库的状态下执行的,来帮助你创建一个本地仓库;如果已经有本地仓库了,只需要执行下面两行的代码即可;
-
git remote add origin git@xxxxxx:在本地添加远程仓库地址git@xxxxx;origin是远程仓库的名字(可以换); -
git push -u origin master: 推送本地master分支到远程origin的master分支;注:
-u origin master:记住此次推送的地址下次就照着这个样子来推,推到origin仓库的master分支上;之后就可以直接git pull和git push;注:当你看到
master->master即代表成功上传;注:每次
git push仅仅是将本地的一个分支上传,上面代码就是演示的上传master分支;注:如果提示你应该
git pull...,你就git pull一下,git pull是先把远程分支合并到本地对应的分支; 如果远程分支没有更新过,也就是你确定别人没有改动你的代码,就可以省略git pull; -
如何上传其他分支?
-
方法一:先
git branch x创建x分支,进入这个分支git checkout x,将你想要放入这个分支的东西git add 路径进去,再git commit一下,由于这是一个新的分支所以我们需要git push -u origin x说一下是上传到哪里; -
方法二:直接用
git push origin x:x代替上面的两个命令git checkout x和git push -u origin x;
-
说了这么多,其实,GitHub就是用来备份.git/而已
下载代码
只扔给你一个网址,你该如何下载代码?
-
如果是别人的代码,只能选择
https://来下载; -
如果是自己的代码,用
ssh下载,步骤如下:- 复制你的
ssh地址; - 进入你想要下载到的目录:
cd 目录; - 运行
git clone git@xxxxx[目标路径ssh]即可将代码下载到指定的目录下; - 如果有两个分支,你需要先进入刚刚下载的目录里面,
cd 下载的目录路径,只有这样你才能看到分支; - 切换到
x分支:git checkout x;
注:每次
clone克隆,其实可以下载下来所有的分支,你只需要进入目录,切换分支即可; - 复制你的
-
想要基于下载的代码进行编辑,然后继续上传到GitHub,可以直接四连连操作“
git add 路径、git commit -v、git pull、git push”;注:如果你能确认别人没有更改你的代码,你可以省略
git pull过程;
一个机器一个key,所以如果你想在不同的机器下载你的代码,你需要上传新的ssh key,详细步骤,在上边哦!
备注问题:
- 如果你的
git clone下载的很慢,推荐一篇方方的博客你可以进去试试。 git clone拓展应用:-
git clone git@?/xxx.git:在当前目录下创建一个xxx目录,xxx/.git是本地仓库,一般后边都会接一句cd xxx; -
git clone git@?/xxx.git yyy:在本地新建yyy目录,记得cd yyy; -
git clone git@?/xxx.git .:不会新创建目录,使用当前目录容纳代码和.git;注:当前目录最好是个空目录;
-