git介绍,国内代码库 gitee,coding.net,gitcode.net

git简介

Git 是一个开源的分布式版本控制系统,用于敏捷高效地处理任何或小或大的项目,它具有极为丰富的命令集,对内部系统提供了高级操作和完全访问。

Git 是 Linus Torvalds 为了帮助管理 Linux 内核开发而开发的一个开放源码的版本控制软件。

Git 与常用的版本控制工具 CVS, Subversion 等不同,它采用了分布式版本库的方式,不必服务器端软件支持。

Git 像是把变化的文件作快照后,记录在一个微型的文件系统中。每次提交更新时,它会纵览一遍所有文件的指纹信息并对文件作一快照,然后保存一个指向这次快照 的索引。为提高性能,若文件没有变化,Git 不会再次保存,而只对上次保存的快照作一链接。Git 的工作方式就像下图所示:

git工作方式

对于任何一个文件,在 Git 内都只有三种状态:已修改(modified),已暂存(staged)和已提交(committed)。

  • 已修改表示修改了某个文件,但还没有提交保存;
  • 已暂存表示把已修改的文件放在下次提交时要保存的清单中; add
  • 已提交表示该文件已经被安全地保存在本地数据库中了。commit

由此我们看到 Git 管理项目时,文件流转的三个工作区域:Git 的工作目录,暂存区域,以及本地仓库。

git工作区变化

git与svn的区别

  • 1、Git 是分布式的,SVN 不是:这是 Git 和其它非分布式的版本控制系统,例如 SVN,CVS 等,最核心的区别。

  • 2、Git 把内容按元数据方式存储,而 SVN 是按文件:所有的资源控制系统都是把文件的元信息隐藏在一个类似 .svn、.cvs 等的文件夹里。

  • 3、Git 分支和 SVN 的分支不同:分支在 SVN 中一点都不特别,其实它就是版本库中的另外一个目录。

  • 4、Git 没有一个全局的版本号,而 SVN 有:目前为止这是跟 SVN 相比 Git 缺少的最大的一个特征。

  • 5、Git 的内容完整性要优于 SVN:Git 的内容存储使用的是 SHA-1 哈希算法。这能确保代码内容的完整性,确保在遇到磁盘故障和网络问题时降低对版本库的破坏。

国内的代码托管库

1、gitee

国内算是老牌的git仓库了,用户比较多、代码资源也比较多,功能上和Github的差不多。 开发者超过 800 万,托管项目超过 2000 万,汇聚几乎所有本土原创开源项目,并于 2016 年推出企业版,提供企业级代码托管服务,成为开发领域领先的 SaaS 服务提供商。

2、腾讯代码库

CODING 一站式软件研发管理平台提供代码管理、项目协同、测试管理、持续集成、制品库、持续部署、团队知识库等系列工具产品。从需求提交到产品迭代,从代码开发到软件测试、部署,整套流程均在 CODING 完成。

3、CSDN代码库
GitCode 是 CSDN 为开发者提供的开源项目创新服务平台,秉承“创新、开放、协作、共享”的开源价值观,致力于为大规模开源开放协同创新助力赋能,打造创新成果孵化和新时代开发者培养的开源创新生态!支持公有云使用、私有化部署以及软硬一体化私有部署。