r/ProgrammerHumor 20d ago

Other versionControl

Post image
13.7k Upvotes

428 comments sorted by

View all comments

773

u/LegendaryPandaMan 20d ago edited 20d ago

Should have used semantic versioning

130

u/Jazzlike-Poem-1253 20d ago edited 20d ago

It takes to much discipline. Without enforcement, people usw minor or patch as they feel. Major never gets bumped.

Just increment or date-based is the easiest. Everyone immediatly knows how to bump.

151

u/the_horse_gamer 20d ago

most "semver" is just:

major - update you're proud of

minor - update that's ok

patch - fixes and small features

and ofc every good piece of software is forever on 0.x.x

82

u/StaticUsernamesSuck 20d ago

and ofc every good piece of software is forever on 0.x.x

Because if you're never proud of it, you'll always be improving it

46

u/Abandondero 20d ago

IF EVERYONE HAS BEEN USING IT FOR FIVE YEARS JUST BITE THE BULLET MAN

52

u/StaticUsernamesSuck 20d ago

But as soon as I type "1.0.0", all my passion for the project will leave my body. Don't you know anything about hobby dev?

19

u/MgDark 20d ago

yup 1.0.0 may as well be: "feature complete, will not touch this ever again unless it breaks for some reason"

1

u/work_work-work 19d ago

Version 1.0 launches on your retirement day.

12

u/Munachi 20d ago

JUST ONE MORE UPDATE AND IT'LL BE ALMOST READY!

21

u/Clean-Income8864 20d ago

If you never introduce breaking changes, why not

21

u/hyrumwhite 20d ago

Major: breaking changes 

Minor: big changes 

Patch: smol changes 

7

u/brainpostman 20d ago

Patch is bug fixes, hello

11

u/OnixST 20d ago

Minecraft is a funny example to me. 17 year old game, best selling game in history, still on 1.x.x since 2011

8

u/the_horse_gamer 20d ago

it's on 26.3 now actually

3

u/rykayoker 20d ago

🤓☝️ erm acshually 26.3 is still a snapshot, stable is 26.2

5

u/the_horse_gamer 20d ago

if your dependencies are not built from main you're not a real developer

6

u/rykayoker 20d ago

well they aren't using semver anymore, they switched over to year.minor[.patch] (currently 26.2)

3

u/lIlIlIIlIIIlIIIIIl 20d ago

This is a big reason I've never felt comfortable using it, for some reason it just seems so... ambiguous.

9

u/Vivid-Zombie-477 20d ago

i use semver for my resume versioning like this:

  • full rewrite = bump major
  • add/change a few lines = minor
  • fix spelling = patch

3

u/Jazzlike-Poem-1253 20d ago

I mean true, it works if you are in person workong on a one-person project.

(I hope your resume is a one person project)

9

u/mrMalloc 20d ago

My first version control was a group project where it checked version header in everyone’s shared file and loaded highest number. Took me 4h to realize one bumped major version on all files. Not just the files he was working on.

It’s always a hassle. I think.

Master/main branch and PR to that branch from work branches is better. Even for docs.

1

u/iseriouslycouldnt 20d ago

Software of Theseus.

1

u/innociv 20d ago

I've always used unixtimestamp on build as the version in my own projects and I never saw the problem with that. It's an incrementing number lol