1

注册github,创建远程仓库

首先,你需要有一个自己的github账号,注册方法与其他网站无异。
其次,创建一个托管项目代码的仓库:

1. new repository

图片描述

2. 填写项目信息

图片描述
这里填写远程代码仓库的信息:
Repository name:代码仓库名,最终显示的标题,也是他人搜索的关键词
Description:对代码仓库的描述,并不是readme文件
Public:选择代码仓库公开

3. 创建完成

图片描述
图中的链接就是上传代码是的地址。

SSH公钥、私钥

为了和服务器通信,需要选择通信协议,而Git通信中普遍使用的就是SSH协议,采用公钥认证SSH登录,可以实现无口令登录远程服务器,这也是我们生成SSH公钥的主要原因。公钥需要放到你的github中,而私钥存放在本地电脑中,二者共存才可实现加密传输。

https 和 SSH 的区别:

1、前者可以随意克隆github上的项目,而不管是谁的;而后者则是你必须是你要克隆的项目的拥有者或管理员,且需要先添加 SSH key ,否则无法克隆。

2、https url 在push的时候是需要验证用户名和密码的;而 SSH 在push的时候,是不需要输入用户名的,如果配置SSH key的时候设置了密码,则需要输入密码的,否则直接是不需要输入密码的。

生成SSH

打开终端,输入指令如下:
图片描述
将邮箱改为自己的即可。
注:应该在你想要作为项目工作空间的目录或全局下执行生成SSH指令。

代码参数含义:
-t 指定密钥类型,默认是 rsa ,可以省略。
-C 设置注释文字,比如邮箱。
-f 指定密钥文件存储文件名。

接着又会提示你输入两次密码(该密码是你push文件的时候要输入的密码,而不是github管理者的密码),当然,你也可以不输入密码,直接按回车。那么push的时候就不需要输入密码,直接提交到github上了。

这样即可看到私钥id_rsa及公钥id_rsa.pub的存放路径,私钥存在本地即可,公钥需要复制到github中。

添加SSH

  1. 我们在终端中执行 atom /Users/jerry/.ssh/id_rsa.pub使用atom(或其他文本编辑器)打开id_rsa.pub文件,复制全部内容。或者终端中执行git复制指令:pbcopy < ~/.ssh/id_test_rsa.pub 这个的作用是将你的 ssh 公钥代码复制到剪贴板。
  2. 回到github中,依次Your profile —— SSH and GPG keys —— 添加公钥

图片描述
在这里添加ssh公钥到你的GitHub账户:
Title:上面的 Title 所对应的输入框你也可以输入一个该 SSH key 显示在 github 上的一个别名。默认的会使用你的邮件名称。
Key:填上刚才复制的id_rsa.pub文件中的SSH公钥

上传项目代码

1. 第一个要配置的是你个人的用户名称和电子邮件地址。

这两条配置很重要,每次 Git 提交时都会引用这两条信息,说明是谁提交了更新,所以会随更新内容一起被永久纳入历史记录:

图片描述

如果用了 --global 选项,那么更改的配置文件就是位于你用户主目录下的那个,以后你所有的项目都会默认使用这里配置的用户信息。如果要在某个特定的项目中使用其他名字或者电邮,只要去掉 --global 选项重新配置即可,新的设定保存在当前项目的 .git/config 文件里。

2. 依次执行:

git status
该命令可以列出当前目录所有还没有被git管理的文件和被git管理且被修改但还未提交(git commit)的文件
图片描述

git add . (有个点哦,这个点表示更改所有的改动)
git add命令主要用于把我们要提交的文件的信息添加到索引库(暂存区)中。当我们使用git commit时,git将依据索引库中的内容来进行文件的提交。然而,如果只是修改或删除了已被git管理的文件,提交时是不需要git add的,它的主要用途是判断用户所添加的新文档,并将其信息追加到索引库中。

git commit -m "说明信息"
图片描述
该命令,将索引库(暂存区)内容添加到本地仓库(本地代码库)中。

git remote add origin ssh地址(后面的ssh地址从下面标注的地方可以找到)
图片描述
git remote指令可查看当前项目有哪些远程库,当第一次上传项目时,应该先为当前项目
制定远程库,指令为:git remote add [别名] [远程库SSH地址],例如,此处将远程
库的别名为origin

git push --force origin master
当使用git commit已将代码提交至本地仓库,且已经为项目指定了远程仓库,那么最后一步就是将本地的代码推至远程仓库,执行代码:git push [远程库名] [本地库名]
注意:第一次提交时,由于远程库中没有代码,此时是可以使用--force强制提交的,但是当提交已被git管理的修改代码时,最好先执行git pull更新本地代码,在执行不带--force的提交。

回到github项目仓库,刷新页面,即可看到项目代码已上传。


Jerry
226 声望32 粉丝