大家好,我是IT修真院北京分院第23期的学员郭婷婷,一枚正直纯洁善良的WEB前端程序员。
今天给大家分享一下,修真院官网CSS任务2如何使用GIT将代码上传至GITHUP。
小课堂【北京第170期】
分享人:郭婷婷
1.背景介绍
Git是一个开源的分布式版本控制系统。
通俗的说,就是一个管理代码历史记录的工具,当多人协作时可以相互推送各自的修改。
GitHub 是一个面向开源及私有软件项目的托管平台,因为只支持 Git 作为唯一的版本库格式进行托管,故名 GitHub。 付费用户可以建私人仓库,我们一般的免费用户只能使用公共仓库,也就是代码要公开。
2.知识剖析
版本库又名仓库,英文名repository,你可以简单理解成一个目录, 这个目录里面的所有文件都可以被Git管理起来,每个文件的修改、删除,Git都能跟踪, 以便任何时刻都可以追踪历史,或者在将来某个时刻可以“还原”。
工作区:就是在电脑里能看到的目录。
暂存区:英文叫stage, 或index。一般存放在 ".git目录下" 下的index文件(.git/index)中,所以我们把暂存区有时也叫作索引(index)。
版本库:工作区有一个隐藏目录.git,这个不算工作区,而是Git的版本库。
3.常见问题
如何添加远程库?
如何从远程库克隆?
4. 解决方案
4.1添加远程库
(1)创建SSH Key。在用户主目录下,看看有没有.ssh目录,如果有,再看看这个目录下有没有id_rsa和id_rsa.pub这两个文件, 如果有的话,直接跳过此如下命令,如果没有的话,打开命令行,输入如下命令(在github上注册的邮箱):
按3个回车,密码为空,最后得到了两个文件:id_rsa和id_rsa.pub。
进入github官网,登陆个人账户后,settings--SSH and GPG keys--New SSH key,填上任意title, 在Key文本框里黏贴id_rsa.pub文件的内容。最后点击 Add SSH Key。
现在在github上创建新的仓库,获取仓库地址,然后:
添加后,远程库的名字就是origin。
下一步,就可以把本地库的所有内容推送到远程库上:
由于远程库是空的,我们第一次推送master分支时,加上了 –u参数,Git不但会把本地的master分支内容推送的远程新的master分支, 还会把本地的master分支和远程的master分支关联起来, 在以后的推送或者拉取时就可以简化命令。
4.2 从远程库克隆
5.扩展思考
如何使用WebStorm管理github上的仓库
6.参考文献
参考1:Git教程
参考2:Git是什么
参考3:Git教程
参考4:手把手教你使用Git
7. 更多讨论
问:git和svn的区别?
答:1.SVN属于集中化的版本控制系统,SVN使用起来有点像是档案仓库的感觉,支持并行读写文件,支持代码的版本化管理,功能包括取出、导入、更新、分支、改名、还原、合并等。Git是一个分布式版本控制系统,操作命令包括:clone,pull,push,branch ,merge ,rebase,Git擅长的是程序代码的版本化管理。
2.GIT跟SVN一样有自己的集中式版本库或服务器。但,GIT更倾向于被使用于分布式模式,也就是每个开发人员从中心版本库/服务器上check out代码后会在自己的机器上克隆一个自己的版本库。可以这样说,如果你被困在一个不能连接网络的地方时,你仍然能够提交文件,查看历史版本记录,创建项目分支,对一些人来说,这好像没多大用处,但当你突然遇到没有网络的环境时,这个将解决你的大麻烦。
3.GIT把内容按元数据方式存储,而SVN是按文件所有的资源控制系统都是把文件的元信息隐藏在一个类似.svn,.cvs等的文件夹里。
4.分支在SVN中一点不特别,就是版本库中的另外的一个目录。如果你想知道是否合并了一个分支,你需要手工运行像这样的命令svn propget svn:mergeinfo,来确认代码是否被合并。然而,处理GIT的分支却是相当的简单和有趣。你可以从同一个工作目录下快速的在几个分支间切换。你很容易发现未被合并的分支,你能简单而快捷的合并这些文件。
5.GIT没有一个全局的版本号,而SVN有目前为止这是跟SVN相比GIT缺少的最大的一个特征。你也知道,SVN的版本号实际是任何一个相应时间的源代码快照。我认为它是从CVS进化到SVN的最大的一个突破。
6.GIT的内容完整性要优于SVN:GIT的内容存储使用的是SHA-1哈希算法。这能确保代码内容的完整性,确保在遇到磁盘故障和网络问题时降低对版本库的破坏。
问:如何版本回退
答:HEAD指向的版本就是当前版本,因此,Git允许我们在版本的历史之间穿梭,使用命令git reset --hard commit_id。穿梭前,用git log可以查看提交历史,以便确定要回退到哪个版本。要重返未来,用git reflog查看命令历史,以便确定要回到未来的哪个版本。
问:如何用git命令查看当前文件夹文件
答:输入“ls”
鸣谢
感谢大家观看
BY : 郭婷婷
ppt链接:https://ptteng.github.io/PPT/PPT/css-02-How%20to%20upload%20your%20code%20to%20github%20by%20git.html#/
-----------------------------------------------------------------------------------------------------------------------
技能树.IT修真院
“我们相信人人都可以成为一个工程师,现在开始,找个师兄,带你入门,掌控自己学习的节奏,学习的路上不再迷茫”。
这里是技能树.IT修真院,成千上万的师兄在这里找到了自己的学习路线,学习透明化,成长可见化,师兄1对1免费指导。快来与我一起学习吧 !