这里是修真院前端小课堂,每篇分享文从
【背景介绍】【知识剖析】【常见问题】【解决方案】【编码实战】【扩展思考】【更多讨论】【参考文献】
八个方面深度解析前端知识/技能,本篇分享的是:
【SVN和GIT的区别?Webstorm如何配置SVN? 】
大家好,我是IT修真院北京分院第23期的学员郭婷婷,一枚正直纯洁善良的WEB前端程序员。
今天给大家分享一下,修真院官网CSS任务2中涉及的内容:SVN和GIT的区别以及Webstorm如何配置。
分享人:郭婷婷
1.背景介绍
在开发软件或者进行文案工作时,经常需要在原有的基础上进行修改,但又担心无法恢复原有内容,因此一份文件可能会保存成多份, 更可怕的是还得从堆积如山的文件中找出自己更改之前的内容。版本控制系统可以记录每次的文档更改,并确保由不同人所编辑的同 一文档都得到更新,甚至还可以将数据恢复到以前的版本,所以大家也称版本控制系统为神奇的“时间机器”。
2.知识剖析
什么是SVN
SVN是Subversion的简称,是一个自由开源的版本控制系统, 支持大多数常见的操作系统。作为一个开源的版本控制系统,Subversion 管理着随时间改变的数据。这些数据集中放置在一个中央资料档案库中。这个档案库很像一个普通的文件服务器,它会记住每一次文件的变动。 这样你就可以把档案恢复到旧的版本,或是浏览文件的变动历史。
版本库是集中存放在中央服务器的,而工作的时候,用的都是自己的电脑, 所以要先从中央服务器取得最新的版本,然后开始工作,工作结束后,再把自己的文件推送给中央服务器。
什么是GIT?
Git是开源的分布式版本控制系统,用于敏捷高效地处理任何或小或大的项目。 分布式相比于集中式的最大区别在于开发者可以提交到本地,每个开发者通过克隆 (git clone),在本地机器上拷贝一个完整的Git仓库。通俗的说,就是一个管理 代码历史记录的工具,当多人协作时可以相互推送各自的修改。
分布式版本控制系统根本没有“中央服务器” ,每个人的电脑上都是一个完整的版本库服务器。工作的时候,就不需要联网了, 因为版本库就在你自己的电脑上。既然每个人电脑上都有一个完整的版本库,那多 个人如何协作呢?比方说你在自己电脑上改了文件A,你的同事也在他的电脑上改 了文件A,这时,你们俩之间只需把各自的修改推送给对方,就可以互相看到对方 的修改了。
3.常见问题
3.1 SVN和GIT有什么区别?
3.2 WEBSTORM怎样配置SVN?
4 解决方案
4.1 SVN和GIT有什么区别?
1.SVN属于集中化的版本控制系统,而Git是一个分布式版本控制系统。
使用SVN,每个版本库有唯一一个“官方地址”,每个用户都从这个唯一地址获取代码、数据; 获取代码库的更新,也只能连接到这个唯一的代码库,同步以取得最新数据; 提交必须有网络连接(非本地版本库)。
2.GIT跟SVN一样有自己的集中式版本库或服务器。但GIT更倾向于被使用于分布式模式,也就是每个开发人员从中 心版本库/服务器上check out代码后会在自己的机器上克隆一个自己的版本库。可以这样说,如果你被困在一个不能连接网络的地方时,你仍 然能够提交文件,查看历史版本记录,创建项目分支,对一些人来说,这好像没多大用处,但当你突然遇到没有 网络的环境时,这个将解决你的大麻烦。
3.GIT把内容按元数据方式存储,而SVN是按文件:
GIT会在本地存储项目下的所有文件,因为本地存储的是一个远端的克隆版本,而svn则只需要checkout你需要的那部分代码文件到本地即可。 所以通常本地的git目录的大小要远远大于svn的目录。
4.SVN的全局版本号,每一个事物处理(即一次提交)都具有整个版本库全局唯一的版本号。SVN 的版本号是连续的,可以预判下一个版本号。 因为 SVN 是集中式版本控制,当然很容易实现版本号的连续性。
GIT是分布式版本控制,多人在同一个版本库里工作,如果大家都用1,2,3……作为版本号,那肯定就冲突了。 所以采用 40 位长的哈希值作为版本号,版本号是全球唯一的。
4.2 WEBSTORM怎样配置SVN?
下载SVN客户端,windows一般选择svn小乌龟户端
在Webstorm上配置SVN:
Checkout 代码
5.编码实战
6.扩展思考
如何使用svn上传代码至github
7.参考文献
参考1:Git教程
参考2:Git是什么
参考3:Git教程
参考4:手把手教你使用Git
参考5:版本控制系统对比:Git与Subversion
8 更多讨论
问:svn的更新和提交的顺序?
答:在多人协作时,提交svn前先选择更新,以免发生冲突。
问:如何获取SSH密钥?
答:在用户主目录下,看看有没有.ssh目录,如果有,再看看这个目录下有没有id_rsa和id_rsa.pub这两个文件, 如果有的话,直接跳过此如下命令,如果没有的话,打开命令行,输入如下命令(在github上注册的邮箱):
ssh-keygen -t rsa –C “[email protected]”
按3个回车,密码为空,最后得到了两个文件:id_rsa和id_rsa.pub。
问:如何使用webstorm上传代码至github?
答:在websorm上checkout from github,将github上的仓库克隆到本地,在webstorm上使用Git--commit File点击commit and push上传至github。
鸣谢
感谢大家观看
BY :李仁|冯强|郭婷婷
PPT链接:https://ptteng.github.io/PPT/PPT/css-02-difference%20between%20svn%20&%20git.html
视频链接:https://pan.baidu.com/s/1i5456ap
密码:a33k