Google 和 Facebook 为什么不用 Git 管理源码?
Google 和 Facebook 为什么不用 Git 管理源码?
Google 和 Facebook 为什么不用 Git 管理源码?
程序锅偶尔看到比较好的关于 Git 的文章也会整理一番发出来,争取在 Git 的坑上再长棵树。
Git 项目的源码禁止开发者使用 C 标准库中的某些函数,原因是这些函数太容易被误用,就算使用得当也很容易出问题。因此 Git 的源码增加了一个 banned.h 的头函数,一旦你使用了这些被禁用的函数,将在编译时报错。
在Git 发布的最新版本 Git 2.22中,最重要的新功能是,它支持”变基“(rebase)复杂的分支拓扑,例如,对于那些合并后不会扁平化分支拓扑的合并,也允许使用交互式的“变基”功能。
这很有用,这样git diff可以在其输出中展示新文件的完整内容。但是之前,diff中的文件路径没有被标记成新的。在一份相关说明提到,apply命令也改进了其对intent-to-add选项的处理。
Git 还支持章鱼式的合并,这意味着可以有超过两个父节点的合并。这对于我们那些从事小型项目开发的人来说,这似乎很奇怪:与三四个父节点合并会不会令人感到困惑?这得看情况而定。
这个2009年的一个高水平的技术讲座,远远没有得到应有高度的评价!尽管年代久远,但它绝不是过时的!
架构设计的代码或者文档,都是以有述无,写的是你看得见的代码,心思都在没有写的代码身上。如果你把心思都放在写的那些代码上,那架构设计就变成详细设计了。架构设计无法学样子,问题就在这个地方。
今天我们宣布推出Git协议版本2,这是Git的线路协议(wire protocol)的一次重大更新。该协议明确规定了在客户端与服务器之间如何传输克隆(clone)、拉取(fetch)和推送(push)。这个最新版摈弃了Git协议中最低效的部分之一,消除了可扩展性瓶颈,为将来线路协议方面的更多改进打通了道路。
SQLite不使用Git版本控制系统。SQLite使用Fossil作为替代,它是一个专门为支持SQLite而设计和编写的版本控制系统。