为什么用 darcs 而不是 git?

发布于 2024-08-26 22:02:27 字数 1432 浏览 8 评论 0原文

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

月野兔 2024-09-02 22:02:27

Darcs 管理补丁集合而不是按时间顺序排列的历史记录。有关此内容的更多信息,请参见 darcs wiki 页面,该页面记录了与 Git 的差异。这种差异可以通过 darcs 以交互方式无序拉取补丁的能力来说明。例如,您可以提取提交标题与从“开发”到“测试”的票号相匹配的所有补丁。 Darcs 会自动确保这些补丁所依赖的任何其他补丁也被拉取。有了这个关键功能,您可能需要维护更少的分支和存储库。虽然在 Git 中,在工作之前创建分支非常有帮助,但在 Darcs 中,只要相关提交提到相同的票号,这通常不是问题。我在一个 100,000k LoC 项目中广泛使用了基于此的工作流程。除了技术差异之外,darcs 还非常用户友好。命令较少,并且大多数默认情况下都是交互式的,提示您要做什么。

由于 darcs 的优势和易用性,我比 git 更喜欢它,我也经常在开源项目中使用 git。 Darcs 非常容易使用,即使您必须学习 git 才能为某些项目做出贡献,您仍然可以在可以选择的其他项目上享受使用 Darcs 并从中受益。

Darcs manages collections of patches instead of chronological history. More about this is on the darcs wiki page documenting differences with Git. This difference is illustrated by a darcs ability to pull patches interactively, out of order. For example, you could pull all patches with a commit title that matched a ticket number from "development" to "testing". Darcs would automatically make sure any other patches these patches depended on were pulled as well. With this key feature, you may need far fewer branches and repos to maintain. While in Git it's very helpful to create a branch before doing work, in Darcs that's often not a concern, as long as you your related commits mention the same ticket number. I used a workflow based on this extensively with a 100,000k LoC project. Besides that technical difference, darcs is very user-friendly. There are fewer commands, and most are interactive by default, prompting you about what to do.

Because of darcs’s strengths and ease of use, I much prefer it over git, which I also use regularly for open source projects. Darcs is easy enough to use that even if you have to learn git to contribute to some projects, you may still enjoy and benefit from using darcs on other projects where you have a choice.

分開簡單 2024-09-02 22:02:27

我认为一般来说,某些用户社区会倾向于一种或另一种技术。如果一项技术使用社区语言,则尤其如此。也有可能(尽管我不知道)Darcs 的作者和/或初始用户是相当知名的 Haskell 开发人员,因此具有更大的影响力。

还有其他例子,例如 Mercurial 似乎在 python 社区中更受欢迎,而其他语言似乎使用 Git。

一旦您使用了某个特定的软件,即使有优势,也可能不值得切换到另一个软件。

老实说,尽管使用你最喜欢的任何东西。此时几乎需要安装 hg、git 和 svn 并了解使用它们的基础知识。如果您使用 Haskell,您可能需要将 Darcs 添加到此列表中。

I think in general certain communities of users will gravitate towards one technology or another. This is especially true if a technology uses the community's language. It is also possible(though I have no idea) that the author and/or initial users of Darcs were fairly well known Haskell developers, thus having more influence.

There are other examples, such as Mercurial appears to be more popular in the python community while other languages appear to use Git.

Once you are using a particular piece of software it may not be worth it to switch to another even if there are advantages.

Honestly though use whatever you like best. At this point it is almost a requirement to have hg, git, and svn installed and know the basics to using them. If you are using Haskell it appears you probably need to add Darcs to this list.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文