美文网首页程序员Git使用Pandas
为什么人人都需要学习Git?

为什么人人都需要学习Git?

作者: Wizey | 来源:发表于2018-08-21 11:24 被阅读176次

    先来说说 Git 的由来,Git 是一个版本控制软件,最初是由 Linux 之父——林纳斯·托瓦兹 为了更好的管理 Linux 内核代码而编写的。当时 林纳斯 要合并来自其他 Linux 开发者的代码,维护整个 Linux 内核,万一合并代码后出了问题,那么就需要上一个版本的代码,如果是单纯的每个版本都复制保存一份,就需要很多很多代码版本,并且对于频繁的修改,这样手动操作太繁琐了而且也容易出错,所以版本控制就显得非常的必要。

    版本控制可以记录每次修改的文件及文件内容改动,就像下面这个样子。当你想要查看某次改动,只需要看看每次修改的备注。

    版本 文件名 用户 修改的备注说明 日期时间
    1 论文.doc 学生 初步完成整篇论文 2018.6.6 10:10
    2 论文.doc 老师1 删除啰嗦的部分 2018.6.6 18:10
    3 论文.doc 学生 修改整篇文章用词不当的地方 2018.6.7 10:12
    4 论文.doc 老师2 增加文章出版的必要格式和信息 2018.6.8 10:12

    这样就不用再手动管理文件的版本了,这就是版本控制带来的好处。

    除了 Git,当然还有其他版本控制的软件,如 SVN,现在很多公司内部也在使用。这就要提到 Git 的另一个优点了,就是 分布式,这是一种 “去中心化” 理念。不同于 SVN 由自己集中式的版本库和服务器,一旦网络环境不佳和服务器宕机,那么版本控制功能就废了,GIt 允许每个开发人员从中心版本库克隆版本,这样每个人手上都有一份完整的版本,即使没有网络,或者中心服务器挂掉也可以使用本地的版本并备份恢复。对于开源项目来说,显然是采用 Git 方式,而对于一些商业机密的项目,也可以使用 SVN。

    Git 是一个软件,或者说是一种服务,可以把它集成到其他软件中,于是就有了享誉全世界的 GitHub 社区,还有中国的 码云社区。这里是程序员的天堂,每个人可以把自己的代码公开,让更多的人看到并参与项目中来,当然也可以不公开,将代码托管到上面来作为项目的中心仓库使用。

    GitHub 是一片代码世界的蓝海,里面有无穷无尽的宝藏,也有很多的大牛,如果你不会 Git,那么这些宝藏与你就没有任何关系了,如果你想探寻这些宝藏,那么请学习 Git 吧。即使你不写代码,也可以将自己的写的文档托管到平台上,每个人都可以学习 Git,对生活和工作都有帮助。这里强烈建议大家不要把 GitHub 和码云当做云盘来使用,视频和大文件就不要上传到这上了,这些平台让我们免费托管文件,我们也要注意个人道德。

    不知道怎么学习?没关系,我为你准备了学习视频,我自己录制的,早已上传到了哔哩哔哩上,视频地址:https://www.bilibili.com/video/av22313281/,现在已经有将近 1000 的播放量,观众反响还不错,另外学习 Git 中遇到了困难,也可以加我们的 B站学习交流群:558719561 讨论学习,这里面都是学习过我视频的观众,先学带动后学,大家一起进步!

    Git视频 视频数据

    由于 GitHub 访问速度的问题,视频前期是以 码云 作为托管平台的,中文也是为了初学者更好更快的入门学习,视频的后面也演示了在 GitHub 上的使用,学会任何一个托管平台再学另一个都是差不多的。本套视频不同于一般的 Git 学习视频,强调实用性和快速上手,没有过多的讲理论,在学会使用 Git 后,再深入学习会非常快。

    整个视频分为 6 讲,通过本套视频,你可学会使用 Git 来管理文件,开源世界的团队合作,以及搭建个人博客记录学习的点点滴滴,在 GitHub 和码云上探寻无尽的宝藏,视频配套的教学文档也已经托管到了 GitHub 上,文档地址:https://github.com/weizhiwen/Git-TeachingResources

    另外,推荐一本 Git 官方的学习书《Pro Git》,可以后台回复 “Git” 领取下载哦。看完视频实际操作一下,日常在 GitHub 和码云上使用 Git 没什么太大问题,想要更深入的学习和了解 Git,那么这本官方的资料也绝对不容错过哦。

    觉得文章还不错,可以关注 编程心路 微信公众号,在编程的路上,我们一起成长。

    编程心路

    相关文章

      网友评论

        本文标题:为什么人人都需要学习Git?

        本文链接:https://www.haomeiwen.com/subject/srmdiftx.html