1. 提交github前提 ssh
- 你拥有了一个 GitHub 账号之后,就可以自由的 clone 或者下载其他项目,也可以创建自己的项目,但是你没法提交代码。仔细想想也知道,肯定不可能随意就能提交代码的,如果随意可以提交代码,那么 GitHub 上的项目岂不乱了套了,所以提交代码之前一定是需要某种授权的,而 GitHub 上一般都是基于 SSH 授权的。
- 那么什么是 SSH 呢?
简单点说,SSH是一种网络协议,用于计算机之间的加密登录。目前是每一台 Linux 电脑的标准配置。而大多数 Git 服务器都会选择使用 SSH 公钥来进行授权,所以想要在 GitHub 提交代码的第一步就是要先添加 SSH key 配置。
1.1 生成SSH key
-
Linux 与 Mac 都是默认安装了SSH ,而 Windows 系统安装了 Git Bash 应该也是带了SSH 的。大家可以在终端(win下在Git Bash 里)输入 ssh如果出现以下提示证明你本机已经安装SSH。
- 紧接着输入 ssh-keygen -t rsa,什么意思呢?就是指定 rsa 算法生成密钥,接着连续三个回车键(不需要输入密码),然后就会生成两个文件 id_rsa 和 id_rsa.pub ,而id_rsa 是密钥,id_rsa.pub 就是公钥。这两文件默认分别在如下目录里生成:
Linux/Mac 系统 在~/.ssh下,win系统在 /c/Documents and Settings/username/.ssh 下都是隐藏文件。
ps: (id_rsa.pub 公钥可以用DW,sublime等打开)
1.2 GitHub (setting中)上添加 SSH key
- 在 GitHub 上的设置页面,点击最左侧 SSH and GPG keys
需要做的只是在 Key 那栏把 id_rsa.pub 公钥文件里的内容复制粘贴进去就可以了(上述示例为了安全粘贴的公钥是无效的),Title 那栏填写你自己喜欢的名,点击 **Add SSH key **按钮就ok了
1.3 测试
输入 **ssh -T git@github.com **进行测试,如果出现以下提示证明添加成功了。(第一次配置中间可能会出现要你填写yes/no)
Administrator@PC-20131019WPLR MINGW64 /github/mycv (gh-pages)
$ ssh -T git@github.com
Hi shenyubin! You've successfully authenticated, but GitHub does not provide shell access.
2. github常用代码
-
git config --globaluser.name "shenyubin"
git config --globaluser.email "shenyubin_html@163.com" #配置你的用户名和邮箱,这样在上传后会显示提交人的有户名 - git pull origin master #「拉」的意思,如果别人提交代码到远程仓库,这个时候你需要把远程仓库的最新代码拉下来,然后保证两端代码的同步。
- git clone git@github.com:shenyubin/test.git # 克隆github上创建的库
- git status # 在clone好的库中写好或添加好项目后通过status查看
- **git add . ** # 查看确实已经有添加后通过git add . 来添加全部库中的修改
- git commit -m "这里写上操作信息" # 用commit 来添加操作信息
- git push origin master # 最后提交。如果你本地代码有更新了,那么就需要把本地代码推到远程仓库,这样本地仓库跟远程仓库就可以保持同步了,会出现让你输入用户名和密码。