GitHub是分布式版本控制系统,对代码的每一个历史版本都有记录,很适合代码的版本控制,是程序员的不可或缺的工具,此外有助于多人协同工作。
1.首先登陆其官网: 官网链接
点击右上角的Sign Up,已有账号请点击Sign in并跳过第二步
2.填写注册所需的个人信息
用户名(不可重复)、邮箱、密码等等。。。
遇到浏览器不支持可以安装谷歌浏览器
然后坐等Github给你邮箱里面发激活链接,点击激活链接之后你就拥有一个自己的Github账号啦
3.创建远程仓库(repository)
何为仓库?仓库是Github保存代码的单位,你可以把一个仓库看作一个项目,里面仅存放与你这个项目有关的代码,或者是一类项目
点击“New”,进入创建仓库界面,repository name是仓库名,Description是关于仓库的描述(相当于副标题),然后一般创建Public仓库,Private的要收钱一般是公司用的,也别想着你那丢代码有谁来看反正我是没啥关系。最后勾不勾readme都行,但是我还是建议你勾选一下,readme一般是说一下这个项目用了啥框架,多厉害多厉害,最重要的是运行方法啥的。
现在你在远程的github系统上面已经有一个仓库啦,下面来说说如何让你本地的代码能够上传到github系统上面去,这就需要git了。
git相当于github的客户端,当你在本地打好代码以后,通过git把代码上传到远程仓库,也是通过git来下载代码。
我的操作系统是Windows的,这里转载了 廖老师 写的 Windows如何安装git 工具,想知道Mac,Linux系统如何安装还请看 廖雪峰 老师的博客,写得很详细哦
在Windows上使用Git,可以从Git官网直接下载安装程序,(网速慢的同学请移步国内镜像),然后按默认选项安装即可。
安装完成后,在开始菜单里找到“Git”->“Git Bash”,或者鼠标右击找到“Git Bash Here”,点击,会蹦出一个类似(如下图)命令行窗口,就说明Git安装成功!
安装完成后,还需要最后一步设置,在命令行输入:
$ git config --global user.name "Your Name"
$ git config --global user.email "[email protected]"
例如
$ git config --global user.name "Wang2019"
$ git config --global user.email 173829237@qq.com
因为Git是分布式版本控制系统,所以,每个机器都必须自报家门:你的名字和Email地址。
注意git config
命令的--global
参数,用了这个参数,表示你这台机器上所有的Git仓库都会使用这个配置,当然也可以对某个仓库指定不同的用户名和Email地址。
然后我们需要配置SSH。
第1步:创建SSH Key。
在用户主目录下,看看有没有.ssh目录,命令如下:
$ cd ~/.ssh
$ ls
结果如下图所示:
如果有,再看看这个目录下有没有id_rsa
和id_rsa.pub
这两个文件,如果已经有了,可直接跳到下一步。如果没有(上图是没有的),打开Shell(Windows下打开Git Bash),创建SSH Key:
$ ssh-keygen -t rsa -C "[email protected]"
你需要把邮件地址换成你自己的邮件地址,然后一路回车,使用默认值即可,由于这个Key也不是用于军事目的,所以也无需设置密码。
如果出现上图,说明一切顺利,则可以在用户主目录里找到.ssh
目录,里面有id_rsa
和id_rsa.pub
两个文件,这两个就是SSH Key的秘钥对,id_rsa
是私钥,不能泄露出去,id_rsa.pub
是公钥,可以放心地告诉任何人。
第2步:登陆GitHub,打开“Account settings”,“SSH Keys”页面:
然后,点“Add SSH Key”,填上任意Title,在Key文本框里粘贴id_rsa.pub
文件的内容:
点“Add Key”,你就应该看到已经添加的Key:
为什么GitHub需要SSH Key呢?因为GitHub需要识别出你推送的提交确实是你推送的,而不是别人冒充的,而Git支持SSH协议,所以,GitHub只要知道了你的公钥,就可以确认只有你自己才能推送。(可以理解为数字签名)
当然,GitHub允许你添加多个Key。假定你有若干电脑,你一会儿在公司提交,一会儿在家里提交,只要把每台电脑的Key都添加到GitHub,就可以在每台电脑上往GitHub推送了。
接下来有两种方法实现本地仓库与远程仓库的同步
方法1 : 将远程仓库克隆到本地
$ git clone git@github.com:GitHubAccount/repositoryname.git
请千万注意,把上面的 GitHubAccount
替换成你自己的GitHub账户名, repositoryname
替换成自己的远程仓库名,否则,你在本地关联的就是我的远程库,关联没有问题,但是你以后推送是推不上去的,因为你的SSH Key公钥不在我的账户列表中。
通过上述命令就可以将远程仓库clone到本地了
方法2 : 创建本地版本库(仓库),将本地仓库上传到远程仓库
创建一个版本库非常简单
首先,选择一个合适的地方,创建一个空目录:
$ mkdir learngit
$ cd learngit
$ pwd
/Users/michael/learngit
pwd命令用于显示当前目录。
如果你使用Windows系统,为了避免遇到各种莫名其妙的问题,请确保目录名(包括父目录)不包含中文。
第二步,通过git init命令把这个目录变成Git可以管理的仓库:
$ git init
Initialized empty Git repository in /path/repositoryname/.git/
瞬间Git就把仓库建好了,而且告诉你是一个空的仓库(empty Git repository),细心的读者可以发现当前目录下多了一个.git
的目录,这个目录是Git来跟踪管理版本库的,没事千万不要手动修改这个目录里面的文件,不然改乱了,就把Git仓库给破坏了。
如果你没有看到.git目录,那是因为这个目录默认是隐藏的,用ls -ah命令就可以看见
最好本地创建的仓库名
repositoryname
和远程仓库名一致,这样避免上传时两者不统一,造成代码版本混乱
现在,我们根据GitHub的提示,在本地的repositoryname
仓库下运行命令:
$ git remote add origin git@github.com: GitHubAccount/repositoryname.git
请千万注意,把上面的GitHubAccount
替换成你自己的GitHub账户名, repositoryname
替换成自己的远程仓库名,否则,你在本地关联的就是我的远程库,关联没有问题,但是你以后推送是推不上去的,因为你的SSH Key公钥不在我的账户列表中。
添加后,远程库的名字就是origin
,这是Git默认的叫法,也可以改成别的,但是origin
这个名字一看就知道是远程库。
下一步,就可以把本地库的所有内容推送到远程库上:
$ git push -u origin master
好啦,静静等待git把你的代码Push上去吧~是不是很简单?
添加文件到Git仓库,分两步:
使用命令git add
,注意,可反复多次使用,添加多个文件;
使用命令git commit -m
,完成。
本文对以下博客进行转载与整合,感谢各位大佬的分享
- https://cuiqingcai.com/423.html
- http://www.cnblogs.com/luffa/p/6759368.html
- https://www.liaoxuefeng.com/wiki/0013739516305929606dd18361248578c67b8067c8c017b000/0013743256916071d599b3aed534aaab22a0db6c4e07fd0000