git

一群只说一种语言的人决定修建一座“能够通天的”高塔,上帝见此情形就把他们的语言打乱,让他们再也不能明白对方的意思,并把他们分散到了世界各地。

接下来是个沉重一点的话题git。当年你可能遇到过这种场景, 写了个牛逼的程序, 称之为V0.1, 这个时候交给你的同学, 他开发了功能V0.2a, 这时你开发了功能V0.2b, 趁着记忆中还有修改的印象, 通过复制粘贴把同学的V0.2a修改合并到V0.2b中, 这时你发现连V0.2b的功能都不好了, 跑不动了. 经过调试了半天bug的努力, 连V0.1的功能都运行不了了. 然后V0.1也不知道保存在哪儿了, 然后马上就到了提交代码的时刻了…

这时你需要git

  • 多人并行开发程序, 每个人在各自的分支上修修补补, 开发新功能, 提交pr, 处理冲突, 合并新功能.

  • 知道何人在何时候做了什么修改, 每次修改提交都有记录, 这个bug是某某某写的, 无法抵赖.

  • 不要每个版本都用V1.x后缀来保存一遍了, 可以回到任意指定历史版本, 并且可以保存在本地的或者远程的仓库上.

既然这么好用, 那肯定各个平台下都有git软件啊. linux的多数发行版与macOS自带了git(我记得是). windows需要单独下载, 当然其内置的wsl里有git了, 之前提到的完整版cmder好像也包含了git.

那么哪里可以学习呢? git教程网上一搜一大堆, 这里提供了感觉还行的git相关教程

基本操作熟悉之后, 如果不喜欢这乌漆麻黑的终端的话, 考虑一下图形界面的sourcetree吧, 各平台都有支持.

咱们实验室还有gitlab开源平台, https://git.idrl.site 账号已经分配给各位. 可以配置好本地的git, 配置出现bug询问高年级师兄..

当然,全球最大的代码托管网站github.com中,我们也建了主页,用于对外发布

还有国内的红山开源平台,未来可期,现在看看就好。。。