You mean that a company whose business rely on collecting user data actually collect user data ?
Everytine I've seen a pre-commit hook in my job, it was something that should have been in integration pipeline.
You should not run linter, test or any static analysis tool in a pre-commit (I'm looking at you husky π‘). Why ? Because:
-
It takes time. A commit should be instantaneous.
-
It may change the content of the commit or of the repos without explicite action of the developer.
-
The developper's branch is the developper's mess. He don't have to respect any convention, any quality gate or any workflow on its branch. Quality gates should happen only when integrating into trunk.
I always commit and push on Friday afternoon before leaving as "WIP", in case my computer crash during week end. I don't want to address issues of a WIP job. I just want to backup my work.
I may commit several time per minute, and do a rebase latter. I don't want to spend 2min each time waiting for eslint to parse the repos. I don't want to fix styling because I now I will fix it later and rebase -i before pushing.
You can use custom pre-commit in your own workflow, but forcing all developer to have the same pre-commit is a bad idea.
"Next-gen AI computing for seamless 3D Gaming"
What's AI has anything to do with 3D ? Apart maybe for DLSS and Neural Radiance Field, AI has nearly no application in current 3D gaming. Stop putting AI into fucking everything just to look cool !
"Bad abstraction is worse than duplication"
Oh shit, thank you so much for this part ! I don't even count number of time I had to face enthusiasts developers saying "These lines of code are very similar, let's factorize them ! "
And that's how MathManagerHelper class is born...
I gave a try to jj. It's fine for personal projects or small team and make the workflow a bit easier. No more "git add; git commit; git push" each time you do a modification. You just "jj git push" and everything will be automatically pushed.
However, the biggest criticism I have is that he doesn't encourage to push every time. It really encourages you to keep your modif locally and push only to create a PR, and that's not a good approach.
Even if you code is WIP, even if everything crash, you really should push your code to backup it. Who cares ? As long as it is not on master branch, it's your own mess.
Ok, fine, what's the point of generating commit message based on what's already inside the commit ?
Commit messages are supposed to give informations that are not in the modfied code. It's supposed to be the "why" you did this, not the "what" you did !
Wow, thanks for feedback. I've rephrased some of the sentences.
You remarks make me think a talk I had we a colleague. I thought for a very long time that univers were actually like what we describ through equation. There were really some "energy gauge", "mass", "speed", etc... until this colleague told me "That's just a model, it's not the reallity. it gives good results in its field of application, but it will always be just an approximation."
I never really understood the advantage of worktree over having just several clone of the repos on different folders.
Can someone explain me ? I should have missed smth.
It was usefull for me. Not everyone is a webdev π
Yes, unfortunately, we don't have time to learn everything, we have to choose. Sys engineer is a rabbit hole which is too deep for me, I prefer spending time on other things.
Currently, I'm into quantum computing. I'm configuring the uConsole so I can easily edit my blog on the go.
I've installed several windows managers, bash, kernel, etc... without really knowing what I'm doing. It help me quickly check on which config I am.
KissYagni
0 post score0 comment score
I was prepared to use my Cunningham Law mental model to correct your article, but no. I have nothing to say π
I've seen way too many wrong usage of git merge/rebase in lots of article but you get the point and clearly explained it.
Maybe just at the end, instead of
I would just do:
This avoid checkout main and checkout back to working branch, which may takes times on big repos.