Top
Best
New

Posted by all-along 1 day ago

Debian's Git Transition(diziet.dreamwidth.org)
221 points | 92 commentspage 2
rilindo 18 hours ago|
I always thought that Debian is already on git, so this confused me. How is source control currently (or was) done with the Debian project?
Sesse__ 18 hours ago|
The short answer is that it's not.

The longer answer is that a lot of people already use Git for Debian version control, and the article expands on how this will be better-integrated in the future. But what goes into the archive (for building) is fundamentally just a source package with a version number. There's a changelog, but you're free to lie in it if you so wish.

djaouen 12 hours ago||
I remember when a startup I used to work for made the transition from svn to git. They transitioned, then threw the guy who suggested the transition under the bus; he quit, and then the company collapsed. Lol!
danudey 10 hours ago||
I was hired at a small startup (~15 employees total) and one of the first things I did was to migrate their SVN repository to Git. Not too difficult, brought over the history and then had to write a bunch of tooling to handle the fact that not all of the source code was in one giant heirarchy anymore (since everything was microservices and self-contained libraries it made sense to split them out).

After I left that company I ended up at a larger company (~14k employees) in part because I'd worked on SVN-to-Git migrations before. Definitely a different beast, since there were a huge amount of workflows that needed changing, importing 10 years of SVN history (some of which used to be CVS history), pruning out VM images and ISOs that had been inadvertently added, rewriting tons of code in their Jenkins instance, etc.

All this on top of installing, configuring, and managing a geographically distributed internal Gitlab instance with multiple repositories in the tens or hundreds of gigabytes.

It was a heck of a ride and took years, but it was a lot of fun at the same time. Thankfully 'the guy who suggested the transition' was the CEO (in the first company) or CTO (in the second) nothing went wrong, no one got thrown under buses, and both companies are still doing a-okay (as far as source control goes).

lionkor 12 hours ago||
git is a skill check on learning tools to get a job done
djaouen 11 hours ago||
git is actually a case-study in "Worse Is Better". hg beats it in every way, except pure speed. Of course, git is still way better than svn, tho.
jdlyga 7 hours ago||
The way Git took over wasn't Git vs Mercurial (although that was a small part of it), but much more Git vs SVN, CVS, and people that never used source control before. It's similar to how Chrome became the dominant browser over Firefox. It was much more converts from Internet Explorer and Safari than advanced users that were already on Firefox.
bandrami 7 hours ago||
That is an important point: in 2005 "all code must be in version control" was still a controversial idea, particularly for companies that made software but were not "tech" companies. A lot of git's expansion came from teams putting their software in a VCS for the first time.
trebligdivad 18 hours ago||
This is great; I hate fighting distro source tools when I want to debug something.
throwaway7356 13 hours ago|
This just adds a new tool though.

Obligatory XKCD reference: https://xkcd.com/927/

danudey 10 hours ago||
New tools during the transition, hopefully fewer tools in the long run. Also things making a lot more sense in the long run.
shmerl 18 hours ago|
I wish Debian would also transition to a modern bug tracker. Current one is very archaic.
kstrauser 18 hours ago||
It surely won't win any beauty contests, but do you think it's missing any needed functionality?

Sincere question. I haven't interacted with it much in ages.

agwa 17 hours ago|||
The simple task of following a bug requires you to:

1. Send an empty email to a special address for the bug.

2. Wait 15-30 minutes for Debian's graylisting mail server to accept your email and reply with a confirmation email.

3. Reply to the confirmation email.

The last time I tried to follow a bug, I never got the confirmation email.

In practically every other bug tracker, following a bug is just pressing a button.

Like most of Debian's developer tooling, the bug tracker gets the job done (most of the time) but it's many times more inconvenient than it needs to be.

kstrauser 15 hours ago|||
Fair points. But without looking at it myself, and for the benefit of people reading along, do you have to do that if you already have an account on the tracker? For instance, it's easy to follow issues on GitHub, but that's after you've jumped through some similar hoops to create an account.
agwa 13 hours ago|||
There is no way to create an account for the Debian bug tracker. You have to jump through these hoops every single time you want to follow a bug.
kstrauser 9 hours ago||
Oh, wow. Yeah. Well, I asked, and now I know!
gspr 13 hours ago||||
I really wish we could have both. An interactive web frontend, and the classic email-centric bug tracker, both serving the same data. I think both have its strengths. I suppose that the job is massive given how enormous and fast-moving the first have become.
IshKebab 14 hours ago|||
Yeah but virtually every developer in the world has already jumped through that hoop. They don't need to do it again for every project.

Also the hoop can be as simple as "click here to sign in with <other account you already have>".

shmerl 16 hours ago|||
I use reportbug to simplify the process of initial reporting, but whole interaction is still far from convenient.

https://tracker.debian.org/pkg/reportbug

csnover 16 hours ago||||
As someone who uses Debian and very occasionally interacts with the BTS, what I can say is this:

As far as I know, it is impossible to use the BTS without getting spammed, because the only way to interact with it is via email, and every interaction with the BTS is published without redaction on the web. So, if you ever hope to receive updates, or want to monitor a bug, you are also going to get spam.

Again, because of the email-only design, one must memorise commands or reference a text file to take actions on bugs. This may be decent for power users but it’s a horrible UX for most people. I can only assume that there is some analogue to the `bugreport` command I don’t know of for maintainers that actually offers some amount of UI assistance. As a user, I have no idea how to close my own bugs, or even to know which bugs I’ve created, so the burden falls entirely on the package maintainers to do all the work of keeping the bug tracker tidy (something that developers famously love to do…).

The search/bug view also does not work particularly well in my experience. The way that bugs are organised is totally unintuitive if you don’t already understand how it works. Part of this is a more general issue for all distributions of “which package is actually responsible for this bug?”, but Debian BTS is uniquely bad in my experience. It shows a combination of status and priority states and uses confusing symbols like “(frowning face which HN does not allow)” and “=” and “i” where you have to look at the tooltip just to know what the fuck that means.

noirscape 21 minutes ago|||
The spam issue is probably one of the stronger arguments against email centered design for bug trackers, code forges and the like. It's a bit crazy that in order to professionally participate in modern software development, you're inherently agreeing that every spammer with a bridge to sell you is going to be able to send you unsollicited spam.

There's a reason most code forges offer you a fake email that will also be considered as "your identity" for the forge these days.

Marsymars 6 hours ago||||
> As far as I know, it is impossible to use the BTS without getting spammed, because the only way to interact with it is via email, and every interaction with the BTS is published without redaction on the web. So, if you ever hope to receive updates, or want to monitor a bug, you are also going to get spam.

Do the emails from the BTS come from a consistent source? If so, it's not a good solution, but you could sign up with a unique alias that blackholes anything that isn't from the BTS.

joeyh 16 hours ago|||
The command is `bts` in devscripts. I wrote it in 2001.
shmerl 17 hours ago|||
It's just annoyingly clunky to use any time I need to interact with it, versus modern bug trackers like GitLab's and etc.

Also, locally patching reportbug to support XDG base directory spec is a chore (since maintainers didn't accept the fix for it for years).

thesnide 18 hours ago||
to be fair, it fits my exact needs. and without common javacript bloat.

so kudos to its authors

fanf2 18 hours ago||
Ian Jackson (the author of this article) also wrote debbugs.