人们对 DVCS 化石有何看法?
化石 http://www.fossil-scm.org
我最近发现了这个,并开始将它用于我的家庭项目。 我想听听其他人对这款 VCS 的看法。
我心中缺少的是 IDE 支持。 希望它会到来,但我使用命令行就很好。
关于化石,我最喜欢的事情是:具有内置 Web 服务器 wiki 和错误跟踪的单个可执行文件。 该存储库只是一个 SQLite (http://www.sqlite.org) 数据库文件,易于在其上进行备份。 我还喜欢可以运行化石并将存储库保存在我的拇指驱动器上。 这意味着我的软件开发已经变得完全可移植。
告诉我你的想法....
fossil http://www.fossil-scm.org
I found this recently and have started using it for my home projects. I want to hear what other people think of this VCS.
What is missing in my mind, is IDE support. Hopefully it will come, but I use the command line just fine.
My favorite things about fossil: single executable with built in web server wiki and bug tracking. The repository is just one SQLite (http://www.sqlite.org) database file, easy to do backups on. I also like that I can run fossil from and keep the repository on my thumb drive. This means my software development has become completely portable.
Tell me what you think....
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(10)
米利金先生,如果您花一些时间查看一些有关化石的文档,我认为您的反对意见已得到解决那里。 将存储库存储在 SQLite 数据库中可以说比任何其他方法更安全。 请参阅链接文本了解一些优点使用事务数据库来存储存储库。 至于膨胀:整个事情都在一个独立的可执行文件中,这似乎反驳了这种担忧。
完全披露:我是《化石》的作者。
请注意,我写化石是因为没有其他 DVCS 可以满足我的需求。 另一方面,我的需求不是你的需求,所以只有你才能判断化石是否适合你。 但我确实鼓励您至少看一下文档,并尝试了解化石试图解决的问题,然后再放弃它。
Mr. Millikin, if you will take a few moments to review some of the documentation on fossil, I think your objections are addressed there. Storing a repository in an sQLite database is arguably safer than any other approach. See link text for some of the advantages of using a transactional database to store a repository. As for bloat: The entire thing is in a single self-contained executable which seems to disprove that concern.
Full disclosure: I am the author of fossil.
Note that I wrote fossil because no other DVCS met my needs. On the other hand, my needs are not your needs and so only you can judge whether or not fossil is right for you. But I do encourage you to at least have a look at the documentation and try to understand the problem that fossil is trying to solve before you dismiss it.
在使用 Fossil 进行重要的开发项目一年多后,我有足够的信心来参与这个主题。
以下是我迄今为止的经验。 我有时会与 git 和 svn 进行比较,只是因为我非常了解这些 SCM,并且比较让我更容易理解这个想法。
我完全爱上了这个 SCM,所以它主要是优点。
我喜欢 Fossil 的地方:
我们有很多机器(win/mac/许多 Linux 发行版),并且单一可执行安装就像听起来一样漂亮。 无依赖关系; 它就是有效的。 Git 是一堆杂乱的文件,而 Subversion 中的依赖地狱使其在某些 Linux 发行版上变得非常讨厌,特别是如果您必须自己构建它的话。
默认的 Fossil 工作流程非常适合我们的项目,并且在需要时可以使用更多 git'ish 工作流程。
我们发现它非常强大,即使在大型项目中也是如此。 我对那些编写 SQLite 的人没有任何期望。 没有崩溃,没有腐败,没有有趣的事情。
我实际上对表现非常非常满意。 不如巨树上的 git 快,但也慢不了多少。 我不必像 git 那样每隔一个命令就查阅文档,从而弥补了损失的时间。
事实上,每项操作背后都有一个久经考验的事务数据库,这让我晚上睡得更好。 是的,我们已经经历过不止一次陈旧和腐败的 Subversion 存储库的可怕事件(值得庆幸的是,一个乐于助人的社区帮助我们修复了它们。)我无法想象在 Fossil 中会发生这种情况。 即使 Subversion 1.7.x 现在也使用 SQLite 来存储元数据。 (尝试在 git 提交期间关闭电源 - 它会留下损坏的存储库!)
集成的问题跟踪器和 wiki 显然是可选的,但非常方便,因为它始终存在 - 无需安装。 我希望问题跟踪器有更多的功能,但是嘿 - 这是一个 SCM。
内置的服务器和 Web GUI 非常出色,并且可以通过 CSS 进行配置。
我们有时需要从 git 和 subversion 存储库导入或从其中导入。 这在 Fossil 中是理所当然的。
单个文件存储库。 到处都没有“.svn”目录。
我对 Fossil 怀念/不喜欢的地方:
请有人为我们的非技术 Windows 用户编写 TortoiseFossil :)
社区还没有那么大,所以很多人可能很难在他们的公司中引入它。 希望这种情况会改变,获得大型社区的所有好处(文档、新版本的更多测试等)
我希望本地 Web UI 具有搜索功能(包括搜索文件内容)。
合并选项比 git 少(尽管 Fossil 工作流程使得合并一开始就不太可能发生。)
我希望每个人都可以尝试一下 Fossil - 世界会变得更美好,因为有了正常工作的东西您无需成为火箭科学家即可使用它。
After having used Fossil for more than a year now on non-trivial development projects, I feel confident enough to weigh in on this topic.
Below is my experience so far. I'm comparing against git and svn at times, simply because I know those SCM's very well and comparing makes it easier for me to get the idea across.
I'm totally in love with this SCM, so it's mostly points on the plus side.
What I like about Fossil:
We have a bunch of machines (win/mac/a number of Linux distros), and the single-executable installation is just as beautiful as it sounds. No dependencies; it just works. Git is a messy pile of files and the dependency hell in Subversion makes it very nasty on some Linux distributions, especially if you must build it yourself.
The default Fossil workflow suits our projects perfectly, and more git'ish workflows are possible when needed.
We've found it extremely robust, even on large projects. I wouldn't expect anything else from the guys who wrote SQLite. No crashes, no corruption, no funny business.
I'm actually very, very happy with performance. Not as fast as git on huge trees, but not much slower either. I make up any lost time by not having to consult the documentation every other command, as is the case with git.
The fact that there's a tried'n'true transactional database behind every operation makes me sleep better at night. Yes, we've been through more than one horrible incident of stale and corrupt Subversion repositories (thankfully, a helpful community helped us fix them.) I can't imagine that happening in Fossil. Even Subversion 1.7.x use SQLite now for metadata storage. (Try turning off power in the midst of a git commit - it'll leave a corrupt repos!)
The integrated issue tracker and wiki are optional, obviously, but very handy as it's always there - no installation required. I wish the issue tracker had some more features though, but hey - it's an SCM.
The built-in server and web gui is simply brilliant and quite configurable through css.
We sometimes need to import to and from git and subversion repositories. This is a no-brainer in Fossil.
Single file repository. No '.svn' directories all over the place.
What I miss in / dislike about Fossil:
Someone please write TortoiseFossil for our non-technical Windows users :)
The community isn't that large yet, so it's probably hard for a lot of people to introduce it in their company. Hopefully this will change, gaining all the benefits of a large community (documentation, more testing of new releases, etc.)
I wish the local web ui had a search feature (including searching for file content).
Fewer merge options than in git (though the Fossil workflow makes merging less likely to occur in the first place.)
I hope everyone gives Fossil a run - the world is a better place with stuff that just works and which you don't need to be a rocket scientist to use.
Fossil 小巧、简单,但功能强大、健壮,让我想起了 C 文化的一些原则。 受到那些独立开发但仍然协作的人的喜爱。
任何伟大的项目都应该从原则开始,并在收集更多层(GUI、额外功能)时将其作为核心继续下去。
我对 Fossil 印象深刻并开始使用...看看 化石
干杯
Fossil is small, simple, yet powerful and robust, reminds me some principles of C Culture. Likable by those who develop independently and still collaborate.
Any great project should start with principles and continue them at its core as it gathers more layers (GUI, extra features).
I am impressed with Fossil and starting to use... take a look at fossil
cheers
我在上一篇文章发表一年后登陆此页面,这里提到的递归添加现在已经得到处理。
Fossil 的简单性让我着迷,尤其是在我努力让错误跟踪系统与 Mercurial 配合使用之后。 我需要了解如何管理多个项目、发布用于多用户访问的存储库以及如何进行合并、管理补丁等。我感觉未来不会令人失望。
I'm landing on this page after an year of the last post, recursive add that has been mentioned here is now taken care of.
Fossil mesmerizes me with simplicity especially after I struggled to get a bug-tracking system to work with mercurial. I need to see how to manage multiple projects, publish the repositories for multi-user access and how to do merging, manage patches etc. I get the feeling that it wont be disappointing going forward.
我对将其用于源代码版本控制不感兴趣,但我对分布式版本控制的个人 wiki 感兴趣,我可以在我使用的所有机器之间同步。
I'm not interested in using it for source-code version control, but I am interested in a distributed version-controlled personal wiki that I can sync between all the machines I use.
达米安,
1/是的,化石不支持递归添加。 然而,有一些相当简单的解决方法,例如
在 Windows 和
Unix 上。
2/ 当您添加文件名中包含非 ASCII 字符的文件时,我看到了有关清单格式错误的消息。 该问题已在上次构建中得到纠正。
问候,
彼得
damian,
1/ yes, fossil doesn't support recursive add. However there are some fairly simply workarounds such as
on Windows, and
on Unix.
2/ I saw the message about malformed manifest when you are adding a file with non-ASCII characters in the filename. The problem was corrected in the last build.
Regards,
Petr
我觉得化石真的很酷。 对我来说最重要的功能是易于安装和开发人员友好的默认设置。 我目前使用它来跟踪文件的本地更改。 (我们的项目托管在 sourceforge 中,并在 CVS 中进行跟踪。)这样我就可以在本地“提交”,即使这会破坏项目,因此也可以跟踪较小的更改。
I think fossil is really cool. The most important feature for me was easy installation, and developer friendly defaults. I currently use it to keep track of the local changes of my files. (Our project is hosted in sourceforge and kept track in CVS.) This way I can "commit" locally even if it would otherwise break the project, so smaller changes can be kept track as well.
化石不错。 它简单易用。 如果fossil可以提供GUI界面来签入和签出,那就更好了(更喜欢java gui来归档跨平台GUI)。
Fossil的主要优点是“开源”和“使用SQLite数据库”,因此有人可以编译fossil源代码以使fossil在google android平台(手机和平板设备)上工作。
Fossil is good. It is simple and easy to use. If fossil can provide GUI interface to check in and check out, then it would be better (prefer java gui to archive cross-platform GUI).
The main advantages of Fossil are "open source" and "use SQLite database", so somebody can compile fossil source code to make fossil work on google android platform (mobile and tablet devices).
我现在正在尝试你的 vcs。
我喜欢将所有内容整合在一起的想法。 毕竟,当我寻找这样的系统时,这就是我想要的。 我是 Mercurial 的活跃用户。 而且我找不到与问题跟踪器的集成(我过去尝试使用 Mercurial 设置 p Trac 但没有成功)。
经过一些测试我意识到:
1)“添加”命令不是递归的,或者我在文档中找不到执行此操作的方法
2)我写了一个bat(我使用Windows)来添加750个文件,然后运行它(花了一段时间)。 当运行提交时,它会跳转到“明显格式错误”,
我认为您可以解决这个问题,其他人可以进行一项调查,例如 Mercurial 在 https://www.mercurial-scm.org/wiki/UserSurvey。
您可以通过 gmail 给我写信,
我对您的工作感兴趣。 不断改进它。
PS
:作为一项市长改进,您可以添加类似 gitstat 的内容
I am trying your vcs right now.
I like the idea of having all integrated. After all, is all i want when i look for a system like this. I am an active user of Mercurial. And i couldn't find an integration with a issue tracker (I try unsuccessfully to set p Trac with mercurial in the past).
After some test i realize that:
1) "add" command is not recursively, or i can not found in the doc a way to do it
2) i write a bat (i work with windows) to add 750 files and i run it (it took a while). When a run commit it jumps with "manifest malformed"
i think you could address this issues and others making a survey like the Mercurial's one in https://www.mercurial-scm.org/wiki/UserSurvey.
you could write me at dnoseda at gmail
i am interested in you work. keep improve it.
regards
ps.: as an mayor improvement you could add something like gitstat
也许这是一种没有受过教育的下意识反应,但将存储库存储在像 SQLite 数据库这样的二进制 blob 中的想法让我感到害怕。 我还对直接在 VCS 中包含 wiki 和 bug 跟踪器的好处表示怀疑——要么与 Trac 等完整软件相比,它们的功能不足,要么与 Subversion 或 Bazaar 相比,VCS 过于臃肿。
Perhaps an uneducated knee-jerk reaction, but the idea of storing a repository in a binary blob like an SQLite database terrifies me. I'm also dubious of the benefits of including wikis and bug trackers directly in the VCS -- either they're under-featured compared to full software like Trac, or the VCS is massively bloated compared to Subversion or Bazaar.