保持联系

两名Jabrons射中狗屎: 源代码管理,变更管理,版本控制-是否有更好,更现代的方式来跟踪软件变更?本星期, 保罗·福特Rich Ziade 散列出来。几十年来,变更管理一直是计算的重要组成部分,但是随着时间的推移,它是如何发展的呢?什么有效,什么无效,我们要去哪里?

成绩单

Rich Ziade 就像听爵士吉他一样。

保罗·福特 是的

RZ 听到您谈论版本控制。

PF 您知道,这就是我的意思。

RZ 是。

PF 但我想更像是低音用嘴发出低音]。

RZ [轻笑]一点巴掌的低音。

PF 是的

RZ 好。

PF 爵士巴掌! [音乐独自播放16秒]。

RZ [音乐下降嗨,保罗,十九点九十分 . . . three.

PF 好。

RZ 而且我们都在努力

PF [轻笑]我们刚出生。

RZ 我们刚出生。我们俩都在开发一款软件[是的]。这是Microsoft Windows 93 [] [音乐淡出]。

PF 哇。

RZ 3.1.

PF 您知道吗?-有一个名为Windows 93的艺术项目,其中有人喜欢制作假Windows 93。

RZ 那是一个很酷的艺术项目。

PF 它太酷了。是的

RZ 保罗,关闭文件!

PF 好。

[0:56]

RZ 我将对其进行编辑,一旦完成,我就知道它应该如何工作,您可以返回。

PF 正确但诚实的[口吃]我们在做什么?像工作组文件夹一样?就像我什至无法通过电子邮件发送给您。

RZ 不,不,我们在网络上。 Windows [ok] 3.1用于网络。

PF 对于工作组。

RZ 对于工作组。

PF Windows 3-是。

RZ 您可以看到该文件。

PF 我们正在使用Novell NetWare。

RZ []我们正在使用Novell NetWare!我一完成就可以我击中就等我。等我好吗我需要大约15分钟—我最终要花45分钟。

PF 是的,然后您会在会议上给我打电话[丰富的笑声桌面电话上的]。

RZ [大笑]我以为我们在同一个房间里。

PF 没有。

RZ 好吧,我们正在拨打桌面电话,我想:“好吧,保罗,你可以进去。”

PF 是的,你叫我的分机。

RZ 我们正在开个玩笑,但这是一个非常讨厌的问题。

PF 不好了。 [慢慢地] 版本控制.

RZ 这是你和我。想象一个50人的团队。

PF 这就是你的工作。好吧,这里有一个问题—问题是交接,但是如果您正确地交出了交,那么您就将其命名,接上,然后转到“文件—”

RZ 下划线一个。

[1:54]

PF 文件下划线-不,不放。始终填充三个:零,零,一。零,零,两个。每个人都喜欢,“哈哈!我们永远不会站起来一百!”但你做了。

RZ 是的

PF 您喜欢1998年的平台吗?您可以看到107个版本。您会看到Word Docs,战略交付品。这么多版本。

RZ 因此,请等待您正在工作……—当您使用38版本时,您正在对代码进行一系列假设,但是我在另一个文件中,而我在22版本中— — [现在我们必须这样做]破坏了你的世界。

PF 现在,我们必须将它们合并在一起,这就是-您可以通过手动查看这两者来进行折磨。

RZ 看着两者。

PF 当您同时打开两个大的PowerPoint文件时,上帝会帮助您。

RZ 对。接着 . . 。一项出色的发明展示了[mm] Visual SourceSafe。

PF 天啊!

RZ 什么是Visual SourceSafe?

PF 好吧

RZ 好吧,首先,这是什么问题?这叫什么?

PF 源代码管理或变更管理或[口吃]我的意思是它在Microsoft Word内清楚地表示为 . . 。跟踪更改,这是我们播客的名称。

RZ

PF 但是版本控制,软件的版本不同,并且由不同的人来工作,这实际上是关于生活不是线性的,工作不是线性的。两个人需要同时处理一件事情。

RZ 正确。

[3:10]

PF 现在,我们之前讨论的是文档,它们特别困难,因为它们过时,充满图片,二进制文件和各种垃圾。代码往往是简单的文本文件。

RZ 正确。

PF 几十年来,代码的版本控制和变更管理一直是计算的重要组成部分。

RZ 团队如何一起工作?

PF 那就对了。因为它曾经是,我的意思是说,当他们在贝尔实验室(Bell 实验室)做事的时候,我想那时候我会以为“嘿,我在这里!”

RZ “关闭文件!”

PF [口吃]“这是磁带!”对? [是的,是的]喜欢[轻笑]我的意思是你只是说:“我要把它写到磁带上。”但是实际上……-然后是整个世界,很多人一次都在一台计算机上工作并进行时间共享,然后他们发现了一些东西,但是它确实出现了……-随着越来越多的人从事数字化工作,它迅速发展了。显然,您需要一些方法来管理随时间变化的变化。

RZ 您考虑内部网络时,共享网络[mm hmm]是关键点,因为您希望拥有共享网络的生产力。

PF 是的,是的,或者是分时系统,你们都在使用一台计算机,而不必合并其他计算机,因为我可以进来,拿走您的东西并弄乱它。

RZ 对。

PF 所以有两个原因吧?一种是,如果两个人同时从事某项工作并将这些事情放回原处,则很难。计算机可以查看这两个不同的文件,就像:“我看到了这些差异。您想做什么?”然后,您可以像[正确]“好拿那个,别拿那个,我们需要编辑那个”,然后将它们一起粘贴到一个文件中[正确]。在美好的世界中,您不会失去旧版本。

RZ 他们在某处。

PF 因为如果您犯了一个错误,您可以返回。

RZ 更正[and —]和 源代码控制可以做到这一点。

[4:46]

PF 好的,然后是另一面……在这里同样重要的是,您知道谁在什么时候做了什么。因此,就像[确定],您知道的,我可以说,“富!你为什么要对我的档案呢? API一切都正常运行,然后您今天早上来了,搞砸了!”您会想,“我不得不将Pixelton的组件移至右侧。”

RZ 好的。所以这很重要。您正在提出要进行适当的版本控制的关键要求。

PF 那就对了。

RZ 保留版本!

PF

RZ 巨大!不要只是覆盖。

PF 那就对了。

RZ 绝对要求。

PF 但是您可以保存整个文件,也可以只保存更改。由你决定。

RZ 对。标记谁做了什么。

PF 那就对了。谁做了什么。

RZ 巨大!

PF

RZ 对?就像以一种非常基本的方式一样,如果I-,Word会这样做,如果将其发送给我并标记为红色,则跟踪更改。

PF “ Rich添加了此内容,”和—

RZ 而且我认为Word会选择另一种颜色。突然之间我很沮丧。

PF 是的,是的,您得到了不同的颜色,Word经历了很多版本,对吗?但是右边有一个大气球,就像“ Rich进行了此更改”,然后他们跟踪了删除内容,并且

[5:44]

RZ 是。一度变得紧张起来!

PF 哦耶。

RZ I — I —有时我在法律文件中。这是另一回事。

PF 哦,我的上帝。耶耶耶。

RZ 是的好。因此,知道谁做了什么,保持版本。

PF 保留版本。保留一些-不要丢失您的历史记录。

RZ 好吗解决了?

PF 仅此一项就足够了。

RZ 好。我可以同时处理与您相同的文件吗?

PF 是的,这是要记住的棘手问题:我们需要跟踪很多文件。我们不只是在谈论一个。它可能是[确定] —一个包含大量子目录和大量文件的大目录。

RZ 当我取出7号文件[是]时,其他人可以编辑7号文件吗?还是在我手中?

PF 那要看。锁定了,对不对?因此,您可以锁定一个文件并说:“没有人能得到这个。”

RZ “不要碰这个。”

PF 是的,有些……版本控制系统有些不同,尤其是在发布工作流程中,是原始版本。就像您身处痛苦世界。每当有人尝试去做-

RZ 锁定?

PF 是的每当有人试图锁定版本控制时,这都意味着所有人都在说:“我可以获取文件吗?!?”

RZ “请你 [] 开锁?”

PF 是的,“有人可以解锁-”

[6:48]

RZ 因此锁定不是一个好主意。您会合理地认为这将是一个好主意。

PF 就像,“嘿,里奇要花一会儿时间,然后保罗要接受它。”

RZ 是的没有人踩任何人。那为什么不是最好的方法呢?

PF 因为人类。因为人类会锁定文件并对其进行处理,然后再走开。

RZ 并保持锁定状态。

PF 人们很难做。它从来没有奏效。

RZ 还序列化工作。

PF 是的是的因此,这意味着像人A一样无法继续工作-现已显示锁定,您仍然可以在类似营销内容管理工具中看到它[是的]。就像这样:“我要去编辑该文件,只有我可以编辑它,知道吗?然后—然后—”

RZ 内容管理通常具有很多功能。

PF 他们喜欢锁定。

RZ 他们喜欢锁定。是的

PF 他们喜欢锁定内容管理的原因之一是内容通常是任意的,如果我给您两个文本文件,计算机实际上很容易像这样:“哦,此行不在此文件中,但是它就可以了-它的功能更强-处理起来更简单。

RZ 好。

PF 但是,就像文字处理文档一样,它非常非常复杂,很难说出它-很难理解。不是像咬一口一样,而是在某种意义上。

RZ 是的

PF 因此,在这个世界上,一切都很陈旧和怪异。因此,我们将一会儿-让我们继续谈论代码一分钟。

[8:04]

RZ 好的。因此,锁定不好。

PF 锁定是危险的。

RZ 锁定很危险。因此,让我们—让它解锁。因此,我打开了文件七,我添加了十行(确定),将第12行添加到了22,然后在本地IDE,本地编辑器[mm hmm]上有了它,然后三分钟后您打开了文件七,我不知道是因为它没有锁定[mm hmm mm hmm],然后您编辑第27到31行,然后添加第46到53行[确定]。现在,我已经在桌面上安装了它,但是没有看到您的更改[mm hmm]。因此,将其推回原位,您就像英雄一样。

PF 好吧,因此将它推回去真的很关键。

RZ 坚持,稍等。您点击保存。

PF 我在本地驱动器上点击了保存。

RZ 您点击保存—

PF 有用。

RZ —在本地驱动器上。它可以在您的本地驱动器[mm hmm] cuz上使用,即-您正在检查工作[mm hmm],然后决定将其推回此中心位置。

PF 那就对了。因此,关键是很多版本控制系统都依赖这种中央权限。

RZ 好。 Lemme-lemme在这里造成混乱。

PF 好。

RZ 推回去,十分钟后我完成工作,然后以[mm hmm]推回去,然后覆盖您的。

PF 真的很糟糕您不希望这种情况发生。

RZ 会发生的。

PF 好。嗯,这不一定要发生。

RZ 它一定会发生!

PF [感叹] 你懂 -

RZ 您是在12:03 pm保存的,我在12:10 pm保存的[相声]。

[9:24]

PF 因此,我曾经使用CVS,Visual SourceSafe和SVN,可以告诉你我当时不是一个好的程序员。大约在12、13年前。我设法拍摄了我的照片-有时只是我在使用它们,跟踪我的更改。

RZ 你会踩自己的。

PF 我会破坏整个项目的次数比我告诉你的要多[丰富的笑声]。我只需要擦除整个过程然后重新开始。我不知道为什么我只是惯于用脚开枪。随着时间的流逝,我意识到这些是非常普遍的体验[确定],就像人们有很多经验一样,用于跟踪文件的系统[是的]非常- -他们-它们倾向于集中化,难以使用,嗯。他们让拥有很多版本的东西变得不容易[叹气]。哦,我们要介绍一个概念。

RZ 好。你知道吗?我们可能会经历这段历史的混乱。

PF 是的

RZ 我们可以回顾历史,可以将其分解为五个播客[是的]。有一个好方法

PF 关于版本控制,这是五个残酷的播客。

RZ [咯咯笑]这是一个粗略的五部分播客。有一个好的方法[确定],有一个现代的方法。

PF 那就对了。

RZ 让我们来谈谈。

PF 好吧,现代的方式— —现在人们当然会争论这一点,但是现代的方式是分散的版本控制系统。使他们分散的原因是您拥有代码的副本,并且拥有之前进行的所有更改的副本。

RZ 好。

[10:45]

PF 您下载了所有内容。听起来好像很大,但实际上不是。一切都被挤压在一起了[确定]。因此,我举一个例子。我有一个名为Emacs的文本编辑器[确定]。您可以从多种来源获得Emacs um的源代码,它可以追溯到30年前。

RZ 好。

PF 因此,我可以将其复制到硬盘驱动器上,然后可以构建该软件并运行它[确定]。我实际上就是这样-因为我有点执迷,所以我运行文本编辑器。我会定期编译我的文本编辑器。

RZ 因为您想要最新版本?

PF 我想要最新版本;我喜欢阅读源代码;我有一个— —我与这件软件有20年的合作关系。

RZ 好吧,那太好了。

PF 是的这真好。我生活中更好,更亲密的关系之一。 [丰富的笑声]所以我得到了一切。现在假设我是一名程序员

RZ 等一下,当您说得到所有内容时,不仅得到最新版本,而且当说所有内容时,您的意思不是一个文件。

PF 不,我得到成千上万的文件。

RZ 这构成了一个完整的软件。

PF 是的,过去我可以安排时间前往任何主要的登机地点。

RZ 好。因此,请告诉我该软件在1999年1月的外观。

PF 没问题。

RZ 它会回到过去,让您拥有一切。

PF 没有问题-实际上有点难于约会-是-是,但是在那时,是的。

RZ 好的,假设有800个版本,您可以回到526版本。

PF 那是对的。

RZ 非常简单地。

[12:14]

PF 现在,在主要版本的基础上可能还有其他分支,人们可以复制并做一些其他事情,然后— —不一定会得到所有已进行的更改,除非存在导致该软件当前状态的更改,例如,“这就是让我们今天到这里所用的东西,”基本上可以保证您拥有该版本,就像所有这些版本都在倒退一样。因此,如果有人像碎片一样,“我要制造卡佐玛奇!”

RZ 好。那么,为什么这样更好呢?

PF 好 [剧烈呼气]关于拥有一切都可以自己进行更改,可以编译自己的软件的好处,这一切都很好,而且如果您想回去,—如果他们做了您不喜欢的事情,则可以回滚并从旧版本开始工作。

RZ 好吧

PF 或者,如果他们破坏了它。

RZ 开始吧-让我们再次运行该方案。您和我[mm hmm]在这个新世界中正在开发同一软件[正确]。让我们给这个世界起个名字。

PF 嗯,我们在DVCS World中。分散的版本控制系统,但我们现在可以称其为GitHub。就像这样-这种工作方式在GitHub上非常流行[确定]。

RZ 因此,我们正在使用GitHub,您和我,程序员一和程序员二。

PF 因此GitHub提供了什么?—诸如此类的版本控制系统实际上没有规范的版本。这真的很难让人理解。我拥有软件的副本,您拥有副本,进行了更改。

RZ 在所有软件中?

PF 是啊。

RZ 您不仅获取了文件。

PF 不,是的。您已经掌握了一切。

RZ 你把整个事情都拿走了。

[13:37]

PF 使您的文本编辑器完整的东西,包括图标,对不对? [是的]咳嗽]全部放在我从某人那里得到的文件夹中,并进行了复制。

RZ 您在堪萨斯州。

PF 现在,我可以从Rich那里复制一份我可以说:“丰富,嘿,我喜欢您的Emacs版本。在Mac上,它比我的[uh huh]更好。因此,给我您的,然后我可以进行更改,然后我会说:“嘿,Rich,请检查此更改。”您可能会想,“哦,这是一个很酷的变化,让我将其合并。”

RZ 好。所以等等,有一个主人。

PF 相反。没有所有者。你和我只是在分享。

RZ 坚持,稍等。我拍了一份[是],它在我的计算机上。

PF 你拿了是的

RZ 您拿了一份副本,放在电脑上[mm hmm],好吗?我做了很多修改,好吗? [mm hm]然后我将其推回任何地方?

PF 好吧,瞧,这就是地方-人们忘记了Git的地方。是。你可以把它给我,我可以合并它。除了一个中央存储库,您实际上不需要任何中央存储库-如果您有一个中央存储库,它将使工作变得更加轻松。

RZ 当然。

PF 因为那时每个人都喜欢,“哦!进行更改后,我会将其发送回文件的GitHub版本—

RZ 金字塔的最顶端。

PF 在版本控制存储库中。我要—我要发送。是的。”但这就像在金字塔中思考时一样,还是有点搞砸了。基本上,任何人都可以随时控制任何软件的任何版本,并且您可以-如果它们有共同的祖先,它们最终可以合并在一起。

RZ 是。

[14:59]

PF 好。所以,基本上……

RZ 谁可以决定什么?允许进入什么?

PF 好吧,这就是Git的另一个狂野之处,那就是任何人都可以做到,但是如果有人[ 口吃]。使用GitHub,发生的是[口吃]就是行不通。它可以用于组织Linux Colonel,还可以用于其他一些事情,但是在大多数情况下……

RZ 在这里,我们去掉名字。

PF 不,不,我的意思是Linux Colonel Git(实际上是所有人都谈论的这种版本控制软件),即GitHub的根源是Linus Torvalds创建的,后者创建了Linux Colonel [确定]。他之所以这样做,是因为在其源代码控制周围存在所有这些政治问题和许可证问题,所以他说:“我要自己做。”

RZ 好。

PF 好。因此,但这是……以这种方式设计的,每个人都可以拥有自己的现实版本,然后偶尔他们可以聚在一起,就像“让我们创造一个现实版本”。 的GitHub基本上说:“嘿,您拥有这个帐户。这有点规范。”假设您和我制作了一个软件,它应该怎么做?一个新的聊天应用程序[确定]。好的,叫做Track Changes Chat App [确定] [ 烂牙]和um,现在我可以创建一个GitHub存储库,然后将其压缩并通过电子邮件发送给您,您就可以使用它了,我们可能会……我们可能会定期开会,例如交换软盘。就像总能奏效一样,但最简单的方法就是让我走,“嘿,Rich,我为Track Changes Chat App创建了一个新的GitHub存储库。继续并将其克隆到您的硬盘驱动器上。做任何你想做的,然后告诉我。

RZ 好。

PF 并将其推回GitHub,以便我可以进行更改[确定]。这样就变成了票据交换所。

RZ 好吧,但是您要让我的零钱进来吗? [音乐渐渐消失]

PF 不,不,一点也不。我不必音乐上升,单独播放六秒钟,下降]。嘿,有钱吗?

RZ 保罗?

PF 这是一个播客,有人在Twitter上称为“两个贾布罗内射击”。

RZ 认真吗

[16:52]

PF 是的[]我只是……我很喜欢那篇评论。

RZ 哇。

PF 我知道。因此,不仅如此,还因为它是一家名为Postlight的产品工作室的官方营销播客。

RZ 信号灯。保罗,Postlight在哪里?

PF 里奇位于纽约市第五大街101号。

RZ 呃 -

PF 好地址。

RZ 一个可爱的小店,由一群非常有才华的人组成。设计师。工程师。

PF 有才华和纪律。人们非常认真地对待自己的学科[是]。工程师,产品经理和设计师。

RZ 我们抽出优质的东西。真是这样,老兄。

PF 我们不只是抽出来。我们不抽水[很好]。我们-我们精心制作和发布。

RZ 公平。

PF [大笑]等等,我得抽些东西。

RZ 因此,请联系我们。嗯,我们很想聊。

PF 是的,hello @ postlight.com [音乐渐渐消失]。

RZ 是。

PF 嗯,那封电子邮件直接发给我和Rich [音乐上升,单独播放六秒钟,下降]。所以看,如果我们去[音乐淡出]在这里的杂草中走得太远,每个人都会把播客广播丢到窗外。

RZ 是。

[17:49]

PF 我们所知道的就是GitHub为我们提供了一种很好的集中式方式来跟踪任何人可能做出的更改,跟踪谁进行了更改,但最关键的是因为更改往往会相互冲突 . . 。假设我更改了第十行,而您更改了第十行。现在我们有两行十。我们该怎么办?

RZ 谁决定?

PF 嗯,有一个旧版本的软件,我将我的版本上传到称为分支机构的分支 . . 。假设主要版本称为Master。我得到了一份副本,并将其称为Paul的版本[mm hmm]。然后,我将Paul的Version发送到GitHub,然后说:“嘿,我想将其合并回Master。” [确定]我们获得了同一软件的两个副本,它们之间只有一线差异[确定]。这就是请求请求。

RZ 拉取请求不是很直观。

PF 不,但这是一件大事,就像Postlight的一整天人们都提出请求一样。这就是当今的构建软件。

RZ 拉取请求意味着—

PF 我进行了一些更改,然后使用我的特殊版本的软件(我[mm hmm]命名)。我给它起了一个名字,起了一个名字[是的],然后我在GitHub上放了起来,我说:“嘿,谁控制这个帐户,您可以继续看看我所做的更改吗?我只需要请求请求。”这基本上就是这个意思。

RZ 得到它了。

PF 他们看了看,然后走了,“好吧,好像您换了第10行。”

RZ “看起来不错。”

PF “看起来不错。我认为这不会破坏任何东西。您编写了一些测试,它们通过了。嗯我要合并它。” [对]他们按下了按钮,新世界和旧世界合在一起[mm hmm],旧世界和新世界现在合而为一了。

RZ 这几乎就像层次结构一样。顶部是所有权。

PF 那就对了。是一棵树。

RZ 是的究竟。

[19:35]

PF 当您看到它们的样子时,这很有趣–当他们可视化这些东西时,它看起来就像是一条铁路,就像您有点前进,然后时不时地像汽车会转向正确的方向[确定]。那是一个分支,然后继续运行一会儿,然后合并回去。它会–它会向左走,突然间大家-您又一次向前大动作。

RZ 因此,从某种意义上来说,这里的启示就像大变化一样,在维持着治安。在顶部。让每个人都工作[没错]。没有人可以踩其他任何人,但是在您上去时要保持顶部的秩序—

PF 协调性非常低,对不对?就像您可以[非常低度地协调]一样,-“每个人都去上班,然后就回来看看。”

RZ “重新签到,我会—我会担心这是否值得升级到母版。”

PF 我们只是假设GitHub上有一个规范的版本。

RZ 精彩。 的GitHub的架构中实际上有一些非常社交的东西。

PF 好吧,Git所做的是允许使用很多不同的文化模式来构建软件。这就是Git作为一款开放软件所做的事情。 的GitHub是一个封闭的平台和服务,人们可以付费使用或一段时间免费使用它,并且为完成很多不同的事情提供了一条明确的途径。

RZ 对。 Paul,您知道谁应该购买GitHub?

PF 嗯Adobe的?

RZ 嗯他们尝试了。无法解决。

PF [大笑] 他们做了吗?大概。

RZ 大概。

PF 我认为Google做到了。

RZ 令人惊讶的是Google最终没有购买GitHub,但微软购买了GitHub。

PF 是的

[21:05]

RZ 它只是放在LinkedIn旁边的架子上。

PF 确实如此。

RZ 它使书房看起来好多了。

PF [感叹]我的意思是,老实说,LinkedIn很粗糙。您知道马林体育场吗?

RZ 是的,那疯子—

PF 有一个,我爱但有一位叫Red Grooms的艺术家-

RZ 是的,这是疯狂的狂欢节

PF [轻笑]当这个巨大的雕塑中有一只本垒打的海豚飞来飞去时。

RZ 是的,真的很棒。

PF 我喜欢它。这是一块巨大的光荣的美国垃圾,它原本应该是这样,就像巨大的 讨厌 对的]。就像最讨厌的雕塑。是谁呀?现在是投资人的德里克·杰特(Derek Jeter)吗?有人投资 . . 。深深地想要把那东西弄出来。

RZ 真的吗?

PF 好吧,LinkedIn看起来像那个雕塑[在窝中。

RZ 一点点。它开始有点清理。

PF 不,但是你坐在那里看Netflix,然后突然发现那些海豚[oof!]到处跑。

RZ 是的是的

PF 这就是LinkedIn的样子。 的GitHub就像一个Bose立体声。

RZ 是的

PF 有点像

[22:01]

RZ 凉爽。

PF 是的,这并不是真正的高端发烧友,但[是]非常酷。

RZ 是的

PF 你懂?

RZ 长大了我的父母在我们的客厅里拍下了这张玫瑰花的大照片。

PF 嗯!那很好。

RZ 就像在木头上一样。

PF 哦耶!

RZ 金达(Kinda)闪闪发亮,但本质上是一张海报大小[右]的玫瑰照片[是],嗯,坦率地说,它可能创造了一个更加焦虑的家庭[]。

PF 只是那朵大玫瑰。

RZ 只是大玫瑰笼罩着我们。

PF 我的确感到,剥壳和分层是文化中不可或缺的真实部分-我从未在自己的生活中坚持过。

RZ LinkedIn上有一个产品经理,他说:“再也不必进行黑客攻击了。”

PF 那就对了。

RZ “足够。”

PF 那就对了。

RZ 对。保罗,我们可以创建越来越多的版本,并请求拉取请求,但是[嗯,我的意思是,为什么Mi-]但我认为-

PF 微软为什么要购买GitHub?我认为这是人们需要了解的 . . .

RZ [感叹]使Microsoft重新连接到新的工作方式。

PF 没错,我认为首先,Microsoft一直以来对开发人员都很重视。

RZ 是。

[23:03]

PF 就像他们的所有缺点和司法部门一样,没有人怀疑他们真正关心着给人们提供编写软件的良好经验。

RZ 是。

PF 因此,这非常符合公司的核心精神[yeah],就像他们一样-他们希望人们在较低的水平上使用计算机来做事和做事更有生产力。这一直是他们的一部分,因此只是在文化上保持一致,这是一个真正的 . . 。与人们如何使用计算机有关的备受推崇,深思熟虑的基础架构。它(它)与很多工作流程(是)以及我们现在的工作方式有很多联系。有时,我们每天必须发出一百个请求请求。我的意思是只是我们一直在使用这个东西。

RZ 当然。当然。

PF 因此沿着这些思路讲得通。 75亿美元是一大笔钱,但随后他们又发行了股票[eh!],其股票价格上涨,所以他们有点免费了。

RZ 是的

PF 他们可以—您可以—

RZ 当它进入那种抽象的金钱观时。

PF 这是一个民族国家。这就好比问希腊对阿尔及利亚有何看法?

RZ 水。

PF 是的[丰富的笑声]或水。

RZ 好吧,我说我们保留这个版本,Paul。

PF 我的事-人们需要知道什么?我认为他们只需要知道存在一些对于数字世界来说绝对重要的东西,它可以跟踪大型团队所做的更改。

RZ 是的,这些工具也曾经存在于企业内部,现在它们已经民主化了。

PF 它们相对分散,如果您愿意,也可以真正分散。实际上,我们……所有人都选择了GitHub,因为这减轻了一些痛苦。

[24:33]

RZ 是的究竟。

PF h!这是一个艰难的过程。每个人都应该有一个GitHub帐户。

RZ 大家应该!而且您不必编写代码就可以拥有一个。

PF 不,您真的-没必要。

RZ 如果您想编写,请将其放在GitHub中。

PF 您可以-您可以通过弄乱文本文件来了解事物的工作原理,这是-它是基础架构的一部分,因此请检查一下。好吧,里奇,[音乐渐渐消失] 那很有趣。我喜欢谈论版本控制。我-我觉得我们必须保留它-我必须将自己的一些激情阻止bay-

RZ 是的,您刚起床?您几次脱轨,但是没关系。

PF 太残酷了这是一个残酷的主题[没关系],但是当您真正地了解它时,您会开始思考,如果整个世界都在版本控制之下,该怎么办?

RZ 是的,我的意思是那时候我们必须掌握自己。

PF 不,我知道我们会[是],但是我仍然喜欢te,您知道技术对您有用[是]。我们需要围绕这一点重新安排社会。呃[email protected]

RZ 在iTunes上有五颗星。我们希望您能。

PF 如果您想要的话。我们喜欢那个,而且-

RZ 我们在那里滚动。那里有很多爱。

PF 是的,我们非常感谢人们对此播客的友善。

RZ 是。

PF 嗯,非常可持续。

RZ 是。

PF 因此,我们会尽快与您联系。

RZ 祝你有个愉快的一周。

PF [email protected]。让我们回到工作[音乐加速播放,独自播放五秒钟,逐渐消失]。