- MCP server with stdio transport for local use - Search episodes, transcripts, hosts, and series - 4,511 episodes with metadata and transcripts - Data loader with in-memory JSON storage 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude <noreply@anthropic.com>
832 lines
44 KiB
Plaintext
832 lines
44 KiB
Plaintext
Episode: 3479
|
|
Title: HPR3479: Linux Inlaws S01E49: Version Control Systems and why bother
|
|
Source: https://hub.hackerpublicradio.org/ccdn.php?filename=/eps/hpr3479/hpr3479.mp3
|
|
Transcribed: 2025-10-25 00:13:28
|
|
|
|
---
|
|
|
|
This is Haka Public Radio Episode 3479 for first ever second of December 2021.
|
|
Today's show is entitled, Linux In-Loss S0149, version control systems, and why bother
|
|
and is part of the series, Linux In-Loss, it is hosted by Monochrome, and is about 57
|
|
minutes long, and carries an explicit flag, the server is, version control systems, and why bother.
|
|
This is Linux In-Loss, a podcast on topics around free and open source software,
|
|
any associated contraband, communism, the revolution in general, and whatever fence is
|
|
your tickle. Please note that this and other episodes may contain strong language,
|
|
offensive humor, and other certainly not politically correct language you have been warned.
|
|
Our parents insisted on this disclaimer. Happy Mom? Thus, the content is not suitable for
|
|
consumption in the workplace, especially when played back in an open plan office or similar
|
|
environments, any minors under the age of 35 or any pets including fluffy little killer bunnies,
|
|
your trusty guide dog, a lesson speed, and qt-rexes or other associated dinosaurs.
|
|
This is Linux In-Loss, Season 1 Episode 49, version control systems, and why bother.
|
|
Miss Martin, how are things tonight?
|
|
Yeah, things are dark, otherwise you could go inside and turn on the lights.
|
|
Ah, that uses energy, isn't it?
|
|
Isn't there some conference going on at noon to round?
|
|
Yes, it's global warming and sports.
|
|
Exactly, it's in Splinter Country called Scotland, which used to be part of something called
|
|
the UK, but it's now simply called Special K, as a Kingdom.
|
|
We don't finally got rid of the Scots or anything.
|
|
And the Welsh and the Northern Irish and other S's, so let's see how that sustained the overall
|
|
cable economy long-term.
|
|
Well, I guess it will certainly diminish our bare exports to Scotland.
|
|
I thought they did their own stuff.
|
|
Isn't it located in Scotland?
|
|
Yeah, but nobody drinks that.
|
|
Well, I do.
|
|
Not the Scottish area, just some London hipsters.
|
|
Well, I wouldn't consider myself to be London hipster, but I still drink the stuff anyway.
|
|
But yes, but then you drink many strange things.
|
|
From a lukewarm catfish lover, that's probably correct.
|
|
Sorry, perspective, I forgot to sweep that in.
|
|
How are you?
|
|
Not about the camera people, by the way, if anyone's missing from camera, you call it relays.
|
|
Same thing, though, anyway, it doesn't matter.
|
|
And well, things have been pretty busy, as of late.
|
|
Because Greta got in touch about the school warming thing and the hands glass go.
|
|
Yes, we are recording this early November of 2022, I think, on the 23rd.
|
|
I can't forget it.
|
|
No, probably not in 2022.
|
|
Okay.
|
|
Maybe post me, maybe.
|
|
But time travel is not the subject funny enough of tonight's episode,
|
|
but rather Martin wait for it, version control systems.
|
|
Okay, how come this is the subject?
|
|
Because many people wrote in and say and complained about the fact that they couldn't get to sleep.
|
|
Even after the opposite last time episode.
|
|
Yes.
|
|
So Martin came up with the idea of doing a version control system episode.
|
|
Yeah, what a brilliant idea.
|
|
To rectify this, to the situation is what it is, why?
|
|
Chloe, if you're listening, this is not only for you, but also for you.
|
|
It's for who? So I got Claudia here.
|
|
Claudia is our only type.
|
|
So Martin, what do you know about the hospital control systems?
|
|
Oh, they're kind of handy when people develop software.
|
|
Perfect, with that, that's the conclusion.
|
|
Yes, it's about that.
|
|
Thank you for this time.
|
|
What did that mean?
|
|
This is a record.
|
|
No, I mean, I mean, four or five minutes into the show.
|
|
Excellent.
|
|
We are making progress.
|
|
Yes, makes it makes a difference, isn't it?
|
|
No, funny enough.
|
|
Yes, we go ahead Martin.
|
|
Yeah, I think, well, I mean, the first one that probably came across was the old
|
|
fax file system version control system, but yeah,
|
|
fax file version control system.
|
|
Well, in fact, we must say it used to keep the control system.
|
|
fax, yes, yes, yes, yes.
|
|
Yes, yes, but not all the files.
|
|
But the same as the source code control system there.
|
|
No, no, no, no, no.
|
|
It's just this just version files, source code or not.
|
|
But it was kind of a start of having multiple versions of
|
|
the same thing.
|
|
I think that's the first time that I could cross over.
|
|
Well, I think that's the first time that I've seen these things for paper tape and
|
|
a punch call.
|
|
Well, exactly.
|
|
I mean, the first version control system would be punch cards and paper tapes,
|
|
yes.
|
|
Back in the days.
|
|
Yeah, it's a bit hard to to branch up there.
|
|
Yeah, but things have to be this to say.
|
|
Now, I mean, the whole fact goes back to the day, basically, when
|
|
you see there was a time when quite a few people worked on a software project.
|
|
And this is still continuing today.
|
|
I mean, the Linux kernel loan has more than 1,000 main stream contributors,
|
|
if not completely mistaken, plus some hobbies also shipping in.
|
|
So a project of that complexity requires some sort of infrastructure because otherwise,
|
|
it'll all end up in chaos.
|
|
So the idea behind source code control system was actually bringing
|
|
order to chaos.
|
|
And these control systems and these version control systems have been
|
|
have been around almost as long as software was developed or has been developed rather.
|
|
Indeed, indeed.
|
|
Well, obviously, they came around or they became more prevalent when the
|
|
development of software was more geographically spread.
|
|
And by in yes, in individual companies, they would have been
|
|
also source code control systems.
|
|
But nowadays, that's obviously more of a global setup rather than
|
|
your group of programmers that worked in the same building in the same room.
|
|
We're going the same pit software.
|
|
Well, that's exactly the drawback of something called open source, right?
|
|
So you have all these people who think that they're the next big,
|
|
lenders towards and want to contribute to something.
|
|
So you have to give them infrastructure in order for that into doing so.
|
|
You see, it's at your absolute spot on software development in the open source world.
|
|
It has to be global and scalable because it's not just a group of five people,
|
|
writing in the home piece of software, which is then put onto a shelf of a company and then
|
|
kind of is forgotten about or something like this.
|
|
I mean, back in the olden days, you had teams that was way before
|
|
children, that was maybe for the agile movement.
|
|
Grandfather's talking now.
|
|
That was back in the days when you had the VM model and you had other project management
|
|
approaches where releasing a piece of software would take about 10 years, maybe five years
|
|
depending on the project and you don't and you wouldn't have deployments in sharday,
|
|
as in I think Amazon or Netflix or Uber or whatever that is, it's pushing at least a couple of
|
|
updates per day. Yeah. That was way before continuous integration continuous development.
|
|
So you had and forget about agile.
|
|
Well, you have teams. Exactly. You had teams basically that were tasked with business
|
|
analysis, then architecture and then coding and then
|
|
quarantine insurance and all the rest of it exactly. So even even a small modification
|
|
to the code base could easily take weeks, if not months.
|
|
Yep. But in contrast to today, where things are much more rapidly moving,
|
|
we're talking about at least 15, 20 years back. Oh, yes.
|
|
Yeah. Yeah, at least. So going back to the original question,
|
|
software versioning system or software control system was actually the,
|
|
more or less, the only means at that stage to bring order to the chaos in terms of
|
|
multiple working on the project or their project and doing this order in an early fashion.
|
|
Yeah. Well, at the point, I mean, it's no different from today. You'd have to
|
|
do integration testing. You'd have to build releases, but it's, yeah, that's what
|
|
those systems allow you to do, right?
|
|
Yes, but you see, alongside the overall approach to developing software,
|
|
these version control systems have also changed. We're going to touch upon these in a minute
|
|
about the specifics. But back in the old days, for example, source control systems were
|
|
server-driven. So you had to have the piece of software in place on the server side,
|
|
and then people would use clients on their cloud machines, fun enough to check in pieces of code.
|
|
And in contrast to this, if you take a look at Git, and we go and go into the details in a minute,
|
|
if you take a look at Git, all you need is essentially a machine with the SSH access.
|
|
And then Git does the rest, more or less.
|
|
So you don't even, fun enough, you don't even need a centralized instance such as a server,
|
|
if you want to do version control on your software.
|
|
And that was pretty much facilitated, but yeah, and that was pretty much facilitated by the idea
|
|
of when Guinness originally went up Git about 60 years ago, everything that traditional systems,
|
|
such as CVS and SVN, SVC and all rest of them wouldn't do exactly. So anything that these
|
|
legacy systems would do, Git wouldn't. That was the overall idea.
|
|
The so-focus-possibility security and some other key aspects. And much more importantly,
|
|
there wasn't any central server instance. That was the important bit.
|
|
Yeah, I've got no CVS actually. That's the mention.
|
|
Okay, exactly. It's mid-60s. Martin has just concluded his first university semester.
|
|
So Martin, why don't you tell us a little bit about the olden days?
|
|
The olden days. One of the days there were, there was only one version, which was your paper tape
|
|
or your punch card. And yeah, you could only work on it as one person.
|
|
And so, you know, you've had any program, nobody else is working on that.
|
|
And so that's the show notes may contain a link to a picture of Mr. Vicer in a white
|
|
in a white code, being in some sort of labs, a lab in the 60s behind a mate from computer,
|
|
right? Yes, he's a software. Indeed, indeed.
|
|
I guess if I can wrestle this promise from his cold hands.
|
|
Yeah, so yeah, I mean, the programs were very much done in isolation. And then, I guess,
|
|
even the Moonlander software was written by various people, but still they did were responsible
|
|
for that part of the code, rather than... Yeah, how many of them in the United States were working on the
|
|
software? And for this part of the program? Quite a few, right? A thousand more than that, right?
|
|
So there must have had some sort of version system in place already, but I think the whole system
|
|
really took off or the whole concept really took off with kind of really complex stuff like
|
|
Unix, back in the back in the days or mainframe operating systems like MBS or
|
|
system something. Yeah. Yeah. Of course, all of these systems were closed source and proprietary.
|
|
They were, they were, and expensive. Yes.
|
|
So, and then open source came along and then things really exploded, right?
|
|
I mean, I can recall back in the day, I can recall having worked at least with
|
|
the CVS concurrent version system or whatever, of course. SVT, I came across also Macquarieau
|
|
and Bazaar before I joined the Git movement, but more about this in a second. Okay.
|
|
And all of these, yeah, all of these, all of these head projects were open source, funny enough.
|
|
And some of them I still use today, for example, if you clone the Firefox codebase,
|
|
the original repo, I think, is still Macquarieau. And for running enough, the front end
|
|
pieces of software, the front end clients, aptly called HG. If you get the pen. Yeah.
|
|
And of course, you have GitHub, no, all the rest of it, but when Firefox started out about
|
|
what 20, 25 years ago, I think they met the switch, it tends to to Macquarieau and sit on
|
|
this ever since. Like even the fact that the browser codebase, I think even supersedes
|
|
something that the little kernel, kernel codebase, if I'm not completely mistaken,
|
|
sorry, it's just a bit because the browser is actually quite a complex piece these days.
|
|
Yeah, that's it.
|
|
Saying it's bigger than a codebase, I guess it's got a bit more modular, isn't it?
|
|
Some people choose Firefox, yeah, about the same virtue. I mean, you have JavaScript execution
|
|
engines, you have renders, you have always obstruction layers, and some other stuff.
|
|
Okay. All right, so why don't you tell us why you changed the git?
|
|
Well, I mean, there was this chap called Linus Tovers. I don't know if that brings the bad modern,
|
|
the name, who came up with his brain idea of doing a terminal emulator back in the early 90s.
|
|
And then post a day, post a day, you said, no, no, no, wait, wait, wait, wait, what do you mean
|
|
he came up with the brain idea of terminal emulator, dude? That was in 1991 or 92.
|
|
No, no, we had to. I was at 90 or something. Sorry? We had terminal emulators before us.
|
|
I wasn't finished with the sentence month. Sorry, originally that was meant to be a terminal
|
|
emulator for some called menics. But then you have this brilliant idea of basically turning
|
|
this into a full blown operating system and post to the use net message. I think it was in 92 or
|
|
something was at 91. I can't even remember. And the rest actually is history.
|
|
Time again. Yes. So funny enough, they used, I mean, in the initial days, it was just a handful
|
|
of contributors, right? So it wasn't, I mean, version control wasn't a big deal because you did
|
|
it by email and all the rest of it. But surely afterwards, the number of contributors grew
|
|
expansion exponentially. So they had, so they had to come up with something that would scale along.
|
|
Yeah, but the number of people working on something is less important. It's more of a fact that
|
|
people can work on the same parts of the code base independently.
|
|
Yes. When someone has a piece checked out and therefore, they always have the latest version
|
|
available if they're working on a related piece code. Yes, exactly. So yes,
|
|
funny enough, not all of the little contributors were actually located in Finland.
|
|
Quite a few of them actually used to and still do, used to live and work outside,
|
|
said country. And never mind, given the fact that when when Lillis was still living in Finland,
|
|
they wouldn't or congregate at his house and start coding quite the opposite actually.
|
|
They probably wouldn't so. Exactly. Coating on the sauna. Brilliant idea. Yes.
|
|
So Lillis had to come up with something called version control system particularly.
|
|
Because if you take a look at the kernel history, I mean, I'm support, for example, entered in 95.
|
|
So shortly after this whole thing was devised, you already had. I'm support as part of the kernel.
|
|
And then some chap started to cut Germany. Late name, late 90s are my dad took a look at the
|
|
kernel at the kernel code base and part of this as a scan code project actually to something
|
|
called 390 architecture. That wasn't I think 1998 or 1999. But they could only do so because
|
|
either this was was really available and it was version controlled. The left side probably not
|
|
are being that important. But of course, they had to make some changes because if you take a look
|
|
at the little kernel and Martin, you actually spot on it's quite modular. You have.
|
|
The majority of the copies is hardware independent, but then you have an architecture layer,
|
|
which has to be adopted for each of the processor architecture. It's the architecture that Lillis is
|
|
running on. And that's exactly where the changes take place with regards to CPU initialization,
|
|
MMU management and all the rest of it as memory management, where you need actually hardware
|
|
specifics and sensible in terms of design. And this is how this is actually how portable operating
|
|
systems are architected anyway. So, and of course, these IBM people had to feedback the changes
|
|
so that would that Lillis then could add a 390 architecture to the set of supported architecture
|
|
for something called the Lillis kernel. At the time that we're using a service called BitKeeper,
|
|
if I'm a completely mistaken links maybe in the show notes. But mid teens or early or early teens
|
|
actually teens zeros as in 20223 something. The company behind BitKeeper decided to take the
|
|
service offline and to migrate to provide a product resourceware. And that's exactly when
|
|
they said this is not happening and we have to move away from this. And this is how Git came into
|
|
existence. Lillis had this requirement of already foreseeing that the Lillis kernel would probably be
|
|
the biggest open source project in history on the planets. So name a bigger one in terms of
|
|
contributors. Are reckon even your browser pales in comparison to Linux. Yes, but the gods
|
|
what is the question in the first eating bit? Well, I think at that stage 32 bit 64 bit was already in
|
|
place. Mainframe architectures was supported almost there. Intel was there of course because this
|
|
is what Linux used to develop the first versions. And people were picking up the copes rapidly
|
|
in the embedded space for webcams even back then. And for all sorts of things as in as in
|
|
PlayStation type like type device and all the rest of it. So you had to device be a little
|
|
so lots of course you had to device a version control system that would scale alongside the growing
|
|
number of contributors to that code base. And hence Git was born. Yeah, and I think most people
|
|
have been using it since really and therefore not just Linux. Do you know what it stands for?
|
|
Do I know what it stands for? Well, it doesn't have the normal
|
|
CS in it, but most of the systems have, but no, I couldn't tell you what it stands for.
|
|
No, I think Linux, I'm not sure about the code, but Linux is the finished version of it.
|
|
No, Linux, I think if I recall this correctly once had that he's he names all the important
|
|
projects after him. And of course being a git being a stupid person, he wasn't too far away here.
|
|
No, if you actually type man git as an if you invoke the manual page, the name says actually
|
|
git the stupid content tracker. So it's actually the mini behind git. Yeah, no, if it's not
|
|
exactly intelligence, that's true. Well, you see probably now is the time to shed some light
|
|
on the mechanics behind the version control system, right? Yeah, why not? And I think
|
|
in that regard, git is quite intelligent, funny enough. Okay, it's just with the versions, of
|
|
course, version control systems should be able to manage the versions. And if you actually
|
|
vet up software, you come normally across the necessity to develop something called branch,
|
|
meaning you take the existing version of the code base. And for example, if you want to experiment
|
|
with the code, you create a copy of this. This branch then may contain changes to code base,
|
|
which probably haven't quite fully been tested yet, more or less your playground.
|
|
Every version control system that I know, including legacy ones, does support the notion of
|
|
branch. Once you have concluded your development, you normally check this back in again,
|
|
creating a new branch, so to speak. And then git that would be the main header, so to speak.
|
|
I mean, git, you can, you can imagine git like a log like structure, where people simply commit
|
|
changes, well, check out versions, modify the copies, commit versions, and then push the,
|
|
push any perspective repo. And this is exactly the workflow that is no different in other
|
|
version control systems. They all pretty much work the same way. Under the hood, of course,
|
|
they're quite different. For example, here, CVS and SVT normally rely on server being present.
|
|
git doesn't, because git only relies on a file system. Push comes to shove. This can be as simple
|
|
as an SSH connection, as a matter of fact, our webpage, which is of course maintained by git
|
|
as a version control system, doesn't have a central server instance because we only have a machine
|
|
currently sponsored by IBM and other companies, I think, marketing is anything to go by.
|
|
That has one central feature. It has an SSH access. And that's all that is needed
|
|
for for the two of us and some other people to work on the website.
|
|
Yeah, so people often refer to these things as trees as well. It has the name branch.
|
|
Yeah. And yeah, so sometimes people call them trunks, don't they? Anyway,
|
|
this is where you start at botnys, right? In your vehicle?
|
|
Only if you remember. Where's botnys? Where's botnys?
|
|
Well, in England, he would give it a record. How would you say in England? Not
|
|
but something else, right? And what would you say in England? How would you call that in England?
|
|
It's not it's not a bonus. Something else, right? Boot. Yes, exactly.
|
|
I couldn't tell you the German name.
|
|
Kofferholm. How is Kofferholm? Yes. Yes. The place to start that body,
|
|
if carrot, but exactly, if carrot by a car. Exactly. That's exactly it. Yes.
|
|
Okay. Back to the notion of trees or trees or whatever. Exactly. And intelligent
|
|
software control, software version control systems actually allow you, for example,
|
|
something called rebasing, meaning you split the history of a commit chain into separate parts,
|
|
which, of course, you have to, well, I mean, what devil are we going to explain this,
|
|
because most people that nobody may know what a commit is. Martin, why don't you fill us in then?
|
|
Well, you were on the roll, so I thought you came in. I thought I mentioned the fact that you
|
|
commit a chain to Kofferholm already. What does that mean? Okay. Okay. You check out a Kofferholm
|
|
base that, for example, in Git terms, and I'm using Git just one example form for version control
|
|
system, because the other ones work pretty similar, although, as I said, the things on the
|
|
load are quite different. If you clone a code base or you check it out to use a good term,
|
|
and then you modify it by committing the changes you aim at making, at feeding back,
|
|
these changes into the main repository. In Git terms, that means adding the changed
|
|
files to something called staging area. Once you commit the staging area, this is then ready
|
|
to be pushed back to the main repository, which, as I said, can be as simple as a server running
|
|
SSH. Git will then under the hood take care of identifying the changes and storing them
|
|
in a file system. Right. So what happens after you commit?
|
|
Then everybody can, well, once you push the changes to the main repo, everybody can see these
|
|
changes, but simply to use again a Git term by pulling down the latest version of the repo.
|
|
I won't go into the technical details. There are terms like master, hat, and all the rest of it
|
|
floating around. There's an excellent website for Git called git-smimes-cm.org or some
|
|
flotters. Details will be in the show notes, and Git I think is probably the version control system
|
|
that has the best documentation on the planet, if memory serves correctly.
|
|
Of course, that wasn't just Linux doing this, but quite a few other people too. So as I said,
|
|
if you are new to Git, this is the website to check out. So once you have pushed this,
|
|
everybody can see the changes by simply putting down these changes and also advancing their
|
|
local copy of the commit chain, if that makes any sense. Okay, what can I say? I have made any
|
|
changes themselves locally. And this is what the fun starts. Then you essentially have to merge
|
|
changes. And you can do this in a dump way like the old days where some version control systems
|
|
just chose to override the last commit, which is not really that intelligent. That's not really
|
|
embedded, isn't it? No, it's so right. But more modern approaches, basically, including Git,
|
|
do it the intelligent way and simply merge the deltas as it lifts to use Linux term.
|
|
And Git, to some extent, and the details, as I said, are on the website, Git is able to recon
|
|
style the deltas already automatically as part of a commit. Only if you have a conflict, for
|
|
example, with regards to a specific file, Git will reflect this and say, sorry, I cannot kind of
|
|
put this into the repo because somebody else was was before you. So in that case, you simply
|
|
have the possibility of pulling down that chain and essentially merging your changes with them
|
|
on your local copy before you push it back to the repo again. I'm simplifying things.
|
|
More details, as I said, as part of the Git documentation.
|
|
Yeah, okay, cool.
|
|
Yeah, so it also depends on how you develop, I guess, and how you organize your development
|
|
in terms of branches, because some people just work on the master branch and keep it that way.
|
|
And some people prefer to make many different, let's call it trunk to separate code lines.
|
|
Well, it depends on a year requirements and be what type of code you are in with regards to your
|
|
local pregnant playgrounds. I mean, some people just love complexity and thrive on complexities.
|
|
I don't, for that matter. And the impositives, yes.
|
|
And I mean, Git really shines with the more, with more developers you throw at it because
|
|
one of the central features, apart from securities, actually scalability, because this is what
|
|
Git is pretty good at. Yeah, my point being is that Git is the tool and you can use it in many
|
|
different ways of development styles or the way you organize your development.
|
|
Oh, absolutely. Guns come to my right, Martin. You can use a gun as a little to defend your house,
|
|
or you can use guns to actively or proactively shoot people.
|
|
Interesting. Yeah, I'm not quite a thought of that either.
|
|
Immediately when I was discussing your development, hey, what do I know?
|
|
This is just a little situation.
|
|
It's obviously completely different.
|
|
Mind, can you still free the buy guns in Germany? He used to be able to.
|
|
No, you can't.
|
|
And I can't recall a time when that was possible.
|
|
Oh, no, no, I can't remember.
|
|
Guns are highly regulated, isn't it?
|
|
No, they always happen, Martin.
|
|
We, Martin, you shouldn't confuse illegal gun buying with legal one.
|
|
No, no, no.
|
|
I remember very clearly as a small boy driving over to Germany and buy guns.
|
|
But you do have gun shops where you've guns were.
|
|
Yes, but you would have to have a license in order to buy a gun.
|
|
Okay.
|
|
You probably used one of these Dutch fake licenses, right?
|
|
When you just said, I didn't buy one when I was eight years old, but
|
|
why didn't you Martin?
|
|
Indeed.
|
|
Yeah, just had a recollection there.
|
|
There's had any time.
|
|
No, you don't.
|
|
I was gun shopper that sold arm with my recollection.
|
|
You don't have gun shops in the Netherlands?
|
|
No.
|
|
And what about the UK, sorry, what about special K?
|
|
No, no.
|
|
So where do you get your guns from in the case in K?
|
|
You'd have to ask someone that has a requirement for.
|
|
Well, as far as I can recall, about 90% of the rural population are guns.
|
|
Really?
|
|
Oh, shotguns, yeah, that's different.
|
|
What do you mean is different?
|
|
My shotgun is farthest from flying birds and stuff.
|
|
For shooting things, exactly.
|
|
Like guns are too.
|
|
Yes, but they're different.
|
|
You're talking about a concealed weapon.
|
|
Okay, got it.
|
|
So, I mean, quite a few people are reckon,
|
|
I mean, not everybody in K can fly to the US and audit by guns.
|
|
So there must have some sort of local supply.
|
|
Hi, I might be in the show, but I can't help you without afraid.
|
|
You so you don't own guns?
|
|
Uh, no.
|
|
Okay.
|
|
Not living in America, so no.
|
|
Or in Germany for that matter.
|
|
I mean, the stuff basically you can buy at the, in these, in these,
|
|
uh, weapon shops are mostly, uh, mostly handguns, uh, almost, no, sorry,
|
|
I'm mostly shotguns, uh, handguns.
|
|
I mean, do you have a special permit?
|
|
Yes.
|
|
Okay.
|
|
And you're talking backgum shots and all the rest of it.
|
|
You cannot simply walk into a shop and buy a gun.
|
|
This is not America.
|
|
Well, some strange reason, maybe things have changed recently.
|
|
But we digress.
|
|
This is not the gun.
|
|
This is not the gun podcast.
|
|
No, this is actually the lens in last podcast.
|
|
So we're, we're okay.
|
|
Um, branches and trucks and all the rest of it.
|
|
Yes.
|
|
So yes, it allows you more other things basically.
|
|
For example, to support rebasing, which comes in handy.
|
|
If you want to, if you want to identify, for example,
|
|
the point in your commit chain where things went wrong.
|
|
Meaning, you find you, you, or somebody else commits, changes ABC.
|
|
Martin then commits, changes, uh, D.
|
|
And somewhere in the middle, the whole thing fucks up in terms of reading breaks.
|
|
Maybe it doesn't, maybe it does compile.
|
|
But you have a segmentation violation before you even start the program.
|
|
I mean, running back to previous version, right?
|
|
Yes, exactly.
|
|
And this is exactly what where rebasing comes in in terms of, um,
|
|
you can identify the point in time where a simply a version stops working.
|
|
Well, uh, if that makes sense, yeah.
|
|
You can then try the commit number or whatever you want to call it.
|
|
Exactly.
|
|
Um, yeah.
|
|
You can easily go back to the version that works.
|
|
Mm-hmm.
|
|
Yes, that's a very good description of this.
|
|
Yeah.
|
|
Okay, back to that.
|
|
Get us quite hipster, frankly.
|
|
And yes, um, oh, yes.
|
|
Uh, get if you're listening to the address, the sponsor,
|
|
at limits in Los Adi.
|
|
Well, I mean, you say the hipster, friendly,
|
|
but there are obviously very, uh, development tools that, uh,
|
|
no, yeah, exactly.
|
|
I mean, the, the, the, the beauty about Git is,
|
|
and this is somewhat different to the likes of Mercurial, Bazaar,
|
|
and some other legacy systems.
|
|
And people, yes, I know there are Emacs, major modes,
|
|
or minor modes for all of them.
|
|
So don't you be?
|
|
But Git is probably the version control system that has the best integration
|
|
in hipster tools like VS Code, as a Visual Studio Code,
|
|
PyCharm, Snowstorm, whatever that PHP thing is called these days,
|
|
and IntelliJ, and Eclipse, and you name it.
|
|
Yep, I mean, if you open Visual Studio Code,
|
|
it'll detect that the dot Git file is present,
|
|
and we'll immediately integrate the whole thing into your version control system,
|
|
the purpose that you're trying to add in.
|
|
And this is quite fancy, actually.
|
|
Mm-hmm.
|
|
And it's a little,
|
|
it's right there, as well, the day.
|
|
What did it look like?
|
|
The Visual Studio Code, now, I think it's written by Bazaar
|
|
from Dicor Microsoft.
|
|
Yeah, okay.
|
|
It's the open source.
|
|
Uh, Visual Studio Code is, yes.
|
|
How come?
|
|
Do we know?
|
|
Because Microsoft decided to open source it.
|
|
That's nice of them.
|
|
Anyway, sorry, we'd like this, yeah.
|
|
Indeed we do.
|
|
In contrast to Visual Studio, we just not open source,
|
|
and it has to be bought or something from Microsoft.
|
|
Anyway, uh, so, yeah, that's the bottom line.
|
|
In terms of, uh, all of the kind of things that hipsters,
|
|
and other people who program in fancy coffee shops like,
|
|
support more or less these days, support Git.
|
|
Plus the fact that, of course, we shouldn't,
|
|
we shouldn't forget to mention that there are quite a few commercial offsprings
|
|
that have functionality,
|
|
that have the functionality built into.
|
|
I mean, like a good, well, yes, it's called a browser,
|
|
and the whole, and the whole tool chain is called GitHub.
|
|
It's that thing's a bell mountain.
|
|
You probably use it every day working at your,
|
|
or you used to work at your hipster GPU database thingy, right?
|
|
What's the name of the company?
|
|
Brightlight, Brightlight?
|
|
Brightlight, yes.
|
|
Brightlight, yes.
|
|
But I mean, everybody uses, uh, well,
|
|
I don't know, pretty much everybody.
|
|
No, some, some remaining people use actually something called GitLab.
|
|
Which is a somewhat comparable offering.
|
|
It's an open core company, pretty much like Redis and all the rest of them.
|
|
And the idea is basically to have a community edition,
|
|
which is free of charge, open source, and all the rest of it.
|
|
But then if you want to do enterprise type fees,
|
|
you have to rely on commercial license.
|
|
Right.
|
|
And of course, there are also pure open source alternatives available.
|
|
For example, Gitaire comes to mind,
|
|
which the luck actually that I'm supporting uses for funny enough their website.
|
|
Okay.
|
|
So that's a, that's a, that's a,
|
|
you know, what's the reason for using this?
|
|
It has a browser interface, among other things.
|
|
Some, some of the, some of the hipsters that are part of the website team for the
|
|
luck prefer browser access.
|
|
And it has a nice browser based administration,
|
|
an administration interface.
|
|
And that sort of thing that hipsters really like,
|
|
especially the 50 plus, plus old hipsters that form something called the Frankfurt
|
|
and Little Geoza Group.
|
|
Okay.
|
|
They're like the GUIs.
|
|
They're like the browser access, yes.
|
|
Because I mean, setting up a project in Git is a little bit of an effort.
|
|
In terms of you have the administer users that have access to the project,
|
|
you have commit rights on all the rest of it.
|
|
And this is where these kind of Git lab GitHub Gitaire projects really shine.
|
|
Because they have functionality built into this.
|
|
And GitHub does, of course, as well.
|
|
Because this is how GitHub makes their money.
|
|
By enterprise features, setting this on a subscription basis.
|
|
That's how the whole thing works.
|
|
This is where Microsoft shared out how many billions for this.
|
|
Yeah.
|
|
One of those things like this.
|
|
It was amazing.
|
|
It was quite a good chunk of money.
|
|
It was a good amount of money and people at the time were wondering why they did such a thing.
|
|
It's probably branding, but I'd like rest.
|
|
Anyway, to kind of long story short,
|
|
this add on this added functionality on top of pure Git,
|
|
you don't get out of the box with Git.
|
|
So people started to build their ecosystems around.
|
|
And Gitaire is probably the best example.
|
|
It has a nice browser-based access.
|
|
It has a very funky CICD integration.
|
|
It has continuous integration,
|
|
continuous development integration,
|
|
which makes the work,
|
|
the associated workflow with code maintenance and
|
|
and modification, just a breeze,
|
|
including setting up projects,
|
|
team members on all the rest of it.
|
|
For example, we use Google as a static website generator.
|
|
More on the architecture,
|
|
Ken, because I'm a file-in if you're listening,
|
|
in an upcoming episode is already planned for next year,
|
|
where the beans will be spilled on how we do it.
|
|
But it's supposed to say,
|
|
if you check in a change of the website,
|
|
like a markdown file,
|
|
what Gitaire on the background does is through a
|
|
and get the same pretty much, through a commit,
|
|
so through a so-called commit hook,
|
|
it actually triggers a Hugo invocation
|
|
that simply rebuilds the website on the fly.
|
|
So you pull down the website,
|
|
you change a file,
|
|
you commit this file,
|
|
you push the changes to the Gitaire instance,
|
|
and then on the fly,
|
|
the website is rebuilt using Google plus a few other things.
|
|
Okay, sounds rather handy.
|
|
Exactly, which is quite handy.
|
|
Yeah.
|
|
Because we have about six people working on the website
|
|
simultaneously, as in concurrently.
|
|
Okay, um, links and show notes for the website name.
|
|
Like Frankfurt.de.
|
|
But Gitaire is probably much more interesting for the people
|
|
who are thinking along similar lines.
|
|
And of course, the Gitaire link will be in the show notes.
|
|
Okay.
|
|
Got it.
|
|
So for the few listeners who we didn't manage to put us deep yet.
|
|
Martin, any final thoughts on version control systems?
|
|
Final thoughts.
|
|
I think, um, yeah, um,
|
|
from the clunky version commercial versions of the
|
|
at 90s to what we have these days.
|
|
There's been progress indeed.
|
|
And, um, it all works rather well, I would say.
|
|
It takes a little bit of, uh, but not very long
|
|
to get you to see these things sort of work hardy work.
|
|
But um, once you have done that,
|
|
they are very easy to work with.
|
|
And it keeps your code manageable and
|
|
put.
|
|
Plus the fact that as, as I already kind of touched upon,
|
|
the, the, the, the, all prevalent visible present,
|
|
whatever you want to call it,
|
|
Git thing is built into most IDE2 checkings.
|
|
Yes.
|
|
Yes.
|
|
And this makes things really, really easy.
|
|
So, I mean,
|
|
it does change.
|
|
Changing a file is simply, or actually putting,
|
|
or committing a change back is as simply as,
|
|
as changing of, as saving a file.
|
|
And then either some email package or some visuals
|
|
to decode integration texture of rest.
|
|
And also, basic flags and a conflict
|
|
and gives you tools at your disposal to resolve these conflicts
|
|
pretty much out of the box without having to resort to
|
|
mysterious command line and things if you choose to do so.
|
|
Yeah, I mean, come on, line of hipsters.
|
|
We don't really go together in the same sentence, right?
|
|
I think I'm the only hipster in my local coffee shop
|
|
that used the command line.
|
|
Since when are you a hipster?
|
|
I've always been, I've been, I've been,
|
|
I've been, we've done some time travel like that.
|
|
Martin, there are a few things you don't know.
|
|
The machine is working again, isn't it?
|
|
Yes.
|
|
Excellent.
|
|
Okay, before I forget, we should probably,
|
|
before we conclude this episode,
|
|
discuss poxies.
|
|
Oh.
|
|
Yes.
|
|
And as, what if you regularly, this, this will recall poxies
|
|
are our picks of the week in terms of if, if Martin has come
|
|
across something apart from special, okay,
|
|
which is, of course, also a, what's the most about the
|
|
placebo, a well-known placebo song?
|
|
I might add.
|
|
So it's the cereal, isn't it?
|
|
No, yes, but placebo simply borrowed this as a title for one
|
|
of the songs.
|
|
Okay.
|
|
And that would actually, yes.
|
|
And that would actually mean my pox, as in, yeah,
|
|
and I'm confused, what's your point?
|
|
My pox is special, okay, as in the placebo song,
|
|
and now known as a country,
|
|
northeast of something called the Netherlands,
|
|
sorry, Northwest, it used to be an aisle formally known
|
|
as the North Kingdom, but now it's all,
|
|
it's just called special, okay?
|
|
Because the Splinter groups like Wales and Scotland and
|
|
Northern Ireland such breakaway for reason.
|
|
We are recording this in February 2022.
|
|
No, we're not.
|
|
We are Martin, this is the number 20.
|
|
Martin clearly hasn't enjoyed the, the, the, the, the,
|
|
the advantage of time travel.
|
|
Yeah.
|
|
No people formally, this country was known as
|
|
United Kingdom, but forget about the United United.
|
|
Lizzy, if you're listening, good luck with you,
|
|
good luck to you, just stay in sorry, just in case.
|
|
Well, she's struggling with the health of the moment, she.
|
|
That's my understanding, yes.
|
|
So the dissolving union didn't exactly have matters,
|
|
but that's beside the point anyway.
|
|
Okay, what's your pox?
|
|
Yeah, it is.
|
|
I'm just trying to remember the name.
|
|
I could tell you the story, I don't know the name in a minute.
|
|
Um, this is a story about an FBI agent who
|
|
infiltrates a far right organization in the US.
|
|
Um, yes.
|
|
The name you're looking for is Donald Trump.
|
|
No, no, no, no, no, no, no, no, no, no, no, no.
|
|
Are you sure it's an organization?
|
|
I'm just checking this out.
|
|
Um, it's, um, what's his name Harry Potter is in it?
|
|
Daniel, how did you put it in for the FBI?
|
|
Nice one.
|
|
Is that one of the sequels I haven't watched yet?
|
|
Clearly, yes, this is the latest Harry Potter you probably know.
|
|
Nice one.
|
|
Germany, I imagine.
|
|
So what's the angle here apart from dark magic?
|
|
No, no, it's, it's, it's, it's kind of interesting.
|
|
Um, I don't know if it's just the FBI, the FBI, okay.
|
|
Yeah, it's one of the more play a part.
|
|
I wonder if it puts up a pretty good American accent as well.
|
|
So it's not bad.
|
|
One of the more or Harry Potter above.
|
|
No, all the more doesn't, doesn't feature in this movie, unfortunately.
|
|
It doesn't, okay.
|
|
No, no, uh, anyway, so the, um,
|
|
yeah, so it's, it's, it's, it's definitely worth watching.
|
|
It's fine.
|
|
It's name in the show.
|
|
Not really, if we can dig this up.
|
|
That's kind of a moment of name here.
|
|
As with all these American films, they all have like a two-word title, no name, which
|
|
are very similar, but it's, it's, uh, it's definitely worth watching.
|
|
It's a very good, um, uh, yeah.
|
|
I think the movie is quite federal magic.
|
|
Um, um, um, um, um, anyway, maybe there's no such thing as that kind of magic.
|
|
Imperium, there you go, the film is called Imperium.
|
|
Imperium?
|
|
So what's the story, London?
|
|
Oh, yeah, in future, I, the FBI and then what?
|
|
No, no, no, no, he works for the FBI.
|
|
He works for the FBI.
|
|
Okay, uh, some, some cesium has been stolen.
|
|
And he, uh, this suspicion is that this is going to a far right group.
|
|
So he infiltrates these, um, organizations and tries to find it.
|
|
And that's a TV series or movie or movie.
|
|
It's a movie, yeah, it's movie.
|
|
Movie, okay.
|
|
Available on Disney plus Netflix, whatever.
|
|
As the 2016 movie, so movie, so probably 2016.
|
|
Okay, it's ancient.
|
|
Yes, yes, only just recently.
|
|
Children 2016 was the year when this was studio just got the light of the day or something.
|
|
I didn't think no, it's going to be old though, no.
|
|
Visual City code, no, sorry, not Visual City, but Visual City code.
|
|
No, I think it was around that time, yeah.
|
|
No, well, okay.
|
|
Maybe I'm wrong.
|
|
I don't know, that's just, this feels like a movie.
|
|
No, something happened in 2016.
|
|
Yes, yes, yes, yes.
|
|
From Mungo, Mungo floated.
|
|
Really?
|
|
If memory subscribes correct, yes.
|
|
Mungo, of course, who, uh, who, for the few listeners,
|
|
eight still awake and be, remember that episode on, on the databases,
|
|
with Professor Meyer featuring Professor Meyer.
|
|
Of course, Mungo would be a no-secure database.
|
|
And that company floated 2016.
|
|
Yeah, it's, it's, and Martin still regrets the fact
|
|
that he didn't buy shares at the time.
|
|
Not really, I was never a fan of Mungo TV.
|
|
Martin, they floated at 27, and now are worth 550 or something like this?
|
|
Yeah, you need money, right?
|
|
Exactly, but who does not anyway go, go with the open source, uh,
|
|
um, what's the call? It's, uh, ideal visits.
|
|
If the employer of said Mr. Vista is listening, Martin has just decided to not,
|
|
to donate his salary to worth, to worth the cause.
|
|
So stop the paychecks and just send it to a, a charity of your choice.
|
|
Because it's just money as we just heard anyway.
|
|
I don't really work, does it?
|
|
Because then I can't eat and I can't have a house.
|
|
So then I can't work for the money.
|
|
Oh, so there's this, this is called my standards, right?
|
|
I see, but Martin, as we just don't, it's only money anyway.
|
|
You know, it's why I keep working for them.
|
|
It's clever.
|
|
I've got that class, I see.
|
|
Martin's just trying to, trying to wiggle his way out of this one.
|
|
Okay.
|
|
Okay, that's pretty much it.
|
|
Any parting thoughts?
|
|
My own thoughts?
|
|
Not for me.
|
|
Well, it's Halloween after all.
|
|
So happy Halloween.
|
|
Yes, and we're recording the, yeah, in 2022,
|
|
Halloween has moved to February of 2022.
|
|
It's part of this flux compensator,
|
|
transductor thing or whatever, I don't know.
|
|
Maybe picking such, such a cheap mechanic wasn't the best idea after all, Martin.
|
|
It seems to be something seriously wrong with the machine.
|
|
Yes, thank you for listening and looking forward to hearing from you in terms of feedback.
|
|
Oh, yes, feedback, feedback.
|
|
If you have any feedback, now we don't have feedback.
|
|
Now we don't have feedback, but if you have feedback for us,
|
|
the address is feedback and Linux in loss.eu.
|
|
Likewise, if you have enough money, because as we, as we understand,
|
|
as Martin right observed, it's only money anyway.
|
|
We just love to take a cash.
|
|
The email address is sponsored and Linux in loss.eu.
|
|
Especially if you happen to be Microsoft IBM, sorry, not IBM.
|
|
IBM, if you're listening, we do not take cash.
|
|
We only take, no, no, we only take cash.
|
|
That's very important.
|
|
Other companies may be able to give us credit card details,
|
|
but we only take cash from IBM for obvious reasons.
|
|
Oh, or anyway.
|
|
Yes, Bitcoin is always appreciated,
|
|
but so is cold hard cash, especially coming forward for IBM.
|
|
Anyway, with that, are you looking forward to the job?
|
|
No, I'm not why.
|
|
Okay, no, Martin, they would have to pay me in cash.
|
|
Why I trust it wouldn't work for me, no, not really.
|
|
Okay, left set.
|
|
And I said, yes, you next.
|
|
Joke aside, yeah, I'll be able to sing and want to get in touch.
|
|
Yeah, he addresses me and then it's exactly sponsored.
|
|
Sponsors are underscores IBM at this in Australia.
|
|
Especially even rest just for you.
|
|
Anyway, do send a smile and looking forward to having you back soon.
|
|
This is the Linux in-laws you come for the knowledge.
|
|
But stay for the madness.
|
|
Thank you for listening.
|
|
This podcast is licensed under the latest version of the Creative Commons license,
|
|
Tap Attribution Share Like.
|
|
Credits for the entry music go to bluesy roosters,
|
|
for the song Salut Margot,
|
|
to twin flames for their piece called The Flow,
|
|
used for the second intros,
|
|
and finally to the lesser ground for their songs we just is,
|
|
used by the dark side.
|
|
You find these and other ditties licensed
|
|
under Creative Commons at your Mando.
|
|
The website dedicated to liberate the music industry
|
|
from choking corporate legislation and other crap concepts.
|
|
Euh yes but you didn't get them all right,
|
|
Because I'm not sure if he was the seed marketing is asking why you haven't fired them yet because it's over
|
|
Is there's that new record
|
|
You tell me mr. Visor it sounds like it
|
|
Maybe they're with cheap everything I'll cheap I see
|
|
Very good, we can keep them for a bit. Yeah
|
|
Can we know and if you're still living in the strange country called the deep
|
|
UK
|
|
Which is where it's it's it's KV says because the union will break away soon, right? So I don't know a country a country named K excellent
|
|
Black special case
|
|
Dying break away, but you yeah, you seem to be out of touch with reality mr. Ritter. Oh, I don't watch the news
|
|
Oh
|
|
No, waste of time
|
|
Indeed
|
|
But you're still funny to BBC that's so that's okay, and again, yes, it's very unfortunate. I should really
|
|
Bloody TV license draw the months they produce it's absolutely rubbish
|
|
Well plus you're paying for your Netflix subscription on top
|
|
No, I don't have Netflix
|
|
This is a plus
|
|
Disney plus. Yes. Yes. There you go. Same thing almost
|
|
Well, it's better than the BBC
|
|
Is that hard to achieve?
|
|
You've been listening to Hacker Public Radio at Hacker Public Radio dot org today's show was
|
|
Contributed by an HBR listener like yourself if you ever thought of recording a podcast then click on our
|
|
Contributing to find out how easy it really is hosting for HBR is kindly provided by an honest host dot com
|
|
The internet archive and our sync dot net unless otherwise stated today's show is released under a creative commons
|
|
Attribution share like lead us all license
|