Live data from Hacker News

Fossil SCM

fossil-scm.org

31–40 of 147 posts

Re: Fossil SCM

#31
post #12

Earlier quoted context omitted.

I couldn't find any screenshots on the site, can you share any?

I believe the site itself is running an instance of Fossil?

That's correct. Fossil is just a single binary and all the 'artifacts' in the repo are stored in a single sqlite file. The built-in server works really well or it can also be used with CGI.

Re: Fossil SCM

#32
post #4

My god, they've updated the CSS. It used to be quite a bit uglier. Now it's not GitHub, but it's definitely lighter on the eyes. Nice to see - I think that good tools should have UIs that at least come close to the quality of their engineering.

While it's good to have a pleasant default, it's very easy to modify everything about the website, including the CSS, the menu, the homepage...

But to me, the most beautiful UI is one that offers the functionality I need while remaining lightweight.

Re: Fossil SCM

#33
post #6

It's good to see so many SCM systems showing up. But it makes me wonder how many of them can actually work on GBs of codebase with over 1000 of programmers checking in on daily basis. I my experience most of SCMs are fine for small to medium projects, but they go down with crawling speeds and sometimes even not working at all when it goes large scale.

I tried to ask a couple of days ago if anybody has started using bitkeeper lately but either only one person saw it or only one other person found it interesting: https://news.ycombinator.com/item?id=13661662

I missed that, but I'm interested in the answer too. I believe the bitkeeper guy frequents this forum. Haven't tried it, myself.

Re: Fossil SCM

#34
post #11

Earlier quoted context omitted.

Genuinely curious: Why do you need rebasing? I'm mostly a mercurial person, where doing a rebase is highly discouraged and nontrivial. After all these years on mercurial, I've never found a need to do it. Why is it so popular amongst git users?

If you like a readable commit history, rebase is useful to reorder and squash unnecessary commits. Some repositories, like Rails have a lot of merge commits. Why should I have to read through them? Also, all kinds of failed tests may have been developed in a feature-branch during month-long development. Interactive rebasing lets you avoid that mess, I don't think it is that complicated. Mercurial uses the same underl…

So let's say I branched off of master 3 months ago, and slowly developed the feature. Now if I rebase, will the commit history show all my local commits at the time they occurred (i.e. spread across 3 months)? Or will it show up as a single commit at the end?

As for "reading through them", I usually use a GUI that shows the commit history, and it will show all the commits in a branch in, well, a branch. I can easily ignore them.

Re: Fossil SCM

#35
post #6

It's good to see so many SCM systems showing up. But it makes me wonder how many of them can actually work on GBs of codebase with over 1000 of programmers checking in on daily basis. I my experience most of SCMs are fine for small to medium projects, but they go down with crawling speeds and sometimes even not working at all when it goes large scale.

Fossil is not really built with that development model in mind. It's built for development of sqlite, which has a small group of core developers that know each other.

Richard Hipp explains the target market at the beginning of this video: https://www.youtube.com/watch?v=-ceEWWqaVsI

Re: Fossil SCM

#36
post #11

Earlier quoted context omitted.

Genuinely curious: Why do you need rebasing? I'm mostly a mercurial person, where doing a rebase is highly discouraged and nontrivial. After all these years on mercurial, I've never found a need to do it. Why is it so popular amongst git users?

Rebasing gives you a linear history instead of the diamonds non-rebased branching and merging gives you. I mean, that's the technical reason, anyway.

But that's what I'm trying to understand: The branched history was never a problem for me (although I do use a GUI for it).

Re: Fossil SCM

#37
post #23
post #11

Earlier quoted context omitted.

Genuinely curious: Why do you need rebasing? I'm mostly a mercurial person, where doing a rebase is highly discouraged and nontrivial. After all these years on mercurial, I've never found a need to do it. Why is it so popular amongst git users?

I end up using it when fixing up local changes which had broken due to upstream modifications. It's generally not seen as very good to send things upstream that conflict with existing changes, and including merges (from master, primarily) in upstream submissions is frowned upon. When I was using mercurial, I ended up using the mq extension [1] to provide a similar work flow. I actually prefer mq's work flow to rebasi…

I used mq, and really liked it when I used it. Admittedly do not use it much any more (too lazy to do the extra typing).

Re: Fossil SCM

#38
post #10
post #5

Fossil is the SCM I always wish I were using, but for the benefit of external collaborators, I stick with Git and GitLab (previously, GitHub). Fossil is a lovely, small piece of software that does exactly what I want in a nice and simple way. It's fast and uses SQLite for everything, making it easy to programmatically extend it and munge its internal data.

SQLite usage makes me wonder how will it behave over time with millions of commits. Also makes me wonder how will it handle distribution.

To be honest, I'm very wary of using SQLite for storage for anything long term. Over the years I've had a few SQLite databases become corrupt in various software I use. Always a headache.

Re: Fossil SCM

#39
post #11
post #3

No/manual rebase sounds awful

Genuinely curious: Why do you need rebasing? I'm mostly a mercurial person, where doing a rebase is highly discouraged and nontrivial. After all these years on mercurial, I've never found a need to do it. Why is it so popular amongst git users?

I use git rebase -i as a way to develop. If I make a series of changes and the middle one doesn't compile or I want to restructure things, I'll use git rebase -i. The outcome is a set of patches that a suitable to send out for review.

hq's mq extension can do the same thing with a prettier UI but IMO much worse functionality.

Re: Fossil SCM

#40
Here's my story. I wanted to use version control on my research projects, but asking my collaborators to use Git was too much. They were supposed to figure out a staging area and pushing and pulling and then they'd get a bizarre error about a merge conflict. They'd do a search and Stack Overflow told them to type in an incantation. The repo is messed up, the collaborator goes back to email, and I'm left sorting through the rubble formerly known as a repo.

I switched to Fossil a few months ago. Nice website that holds all the information. fossil commit -m "Message" is all they need to know. If they forgot to pull, it stops and tells them to do so. They type fossil update and go on with their lives. Zero problems so far and a more productive workflow overall.

Post reply on HN