GitHub和Git
Posted 思考积累再积累
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了GitHub和Git相关的知识,希望对你有一定的参考价值。
上一篇文章我们讲述了如何通过GitHub快速的搜索到自己想要的资源。我们都知道GitHub是一个开源的平台,我们搜到想要的资源之后,我们可能回进行两种操作:一种是如何将GitHub上的资料复制到本地;另一种就是如何将自己优化更新的东西又上传至GitHub。这篇文章,我们就一起来聊聊这两种操作。
GitHub和Git
要实现以上两种操作除了使用到GitHub之外,还需要使用到Git。那什么是Git呢?它是一个开源的分布式版本控制系统,用于敏捷高效地处理任何或小或大的项目。你可能困惑了,GitHub也是一个开源的分布式版本控制系统,那它两的区别是啥呢?
可以这么理解,Git是一个本地的分布式版本控制系统,也就是我们可以使用它在本地进行代码或者资源的管理,此时只能你自己在本地访问操作。比如你自己需要写一篇论文,这篇文论需要修改很多次才能发表,如果你使用word文档,那你写完初稿之后一般情况回复制一版,在复制版上进行修改然后将这个作为第二个版本,以此类推。这样的结果就是你不知道每次在什么时间修改了那些东西。
这个时候如果我们改用git进行管理的话,我们回记录下每次修改的时间以及内容,这些记录随时可以查到。这就是Git的作用。但如果你现在想找几个人跟你一起完成这篇论文的创作,这个时候你就需要将本地的文档上传至公共服务器上,供大家下载使用。大家修改或者增加完之后提交到服务器上供大家下载,这个时候就要使用到GitHub了。
所以,我们可以这样理解:Git是一个本地的分布式版本控制系统,而GitHub则是一个公共的服务器供大家上传下载使用。
Git和GitHub的链接
当我们知道了GitHub和Git的关系之后,我们首先要做的就是将GitHub和Git进行关联。也就是让GitHub认识你本地的Git。这个怎么做呢?就是将自己本地的公钥拷贝到GitHub上。
按照好Git之后,我们可以在Git上执行以下命令,通过SSH的方式生成密钥。
ssh-keygen
执行完该命令后,我们会在~./.ssh文件夹下发现两个文件,一个是id_rsa,一个是id_rsa.pub。第一个文件时私钥,第二个文件时公钥。我们需要做的是打开公钥文件复制生成的公钥,将该公钥粘贴到GitHub上SSH keys上。如图所示:
操作完以上步骤后,我们就可以很方便的完成GitHub和Git之间的操作了。
本地仓库和远程仓库进行连接
第一步:在远程GitHub上创建一个新的仓库;
第二步:打开本地的Git Bash(开始菜单中寻找)
第三步:cd learngit (其中lerngit是创建的一个新文件夹)
第四步:把一个已有的本地仓库与GitHub上的仓库进行关联
git remote add origin git@github.com:Energy1226/learngit.git其中origin后边是GitHub仓库的SSH key,可以通过下图的方式找到
第五步:把本地库的所有内容推送到远程库上
git push -u origin master
注意:以后本地提交之后,只需要执行以下命令即可将其同步到GitHub上!
git push origin master
在第一次使用GitHub的clone或者push命令时,会得到一个警告:
The authenticity of host ‘github.com (13.250.177.223)’ can’t be established.
RSA key fingerprint is SHA256:nThbg6kXUpJWGl7E1IGOCspRomTxdCARLviKw6E5SY8.
Are you sure you want to continue connecting (yes/no/[fingerprint])?
这是因为Git使用SSH连接,而SSH连接在第一次验证GitHub服务器的Key时,需要你确认GitHub的Key的指纹信息是否真的来自GitHub的服务器,输入yes回车即可。
从远程仓库克隆到本地仓库
第一步:先在GitHub上创建一个新的仓库(gitskills);
第二步:使用以下命令将该仓库(gitskills)克隆到本地:
git clone git@github.com:Energy1226/gitskills.git
克隆完毕之后(多人合作开发时,可以每个人都克隆一份在本地),修改完成之后进行提交远程仓库:
第一步:修改文件后,先将文件从工作区转移到存储区:git add 文件名;
第二步:将存储去的文件提交到分支master:git commint - m “介绍”;
第三步:将本地仓库中的文件上传到远程 仓库中:git push origin master;
OK,以上就是今天给大家分享的GitHub和Git。
以上是关于GitHub和Git的主要内容,如果未能解决你的问题,请参考以下文章