先来说说 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, 那么这本官方的资料也绝对不容错过哦.
来源: http://www.jianshu.com/p/2a40cee88654