How about giving Frek a new tiny detail? He pushes people to subscribe to his YT channel anyways, so why not let him sneak in a link that's the exact same link needed to subscribe to your YT-Channel when ever he contributes some code to Billy or the company? Would be a nice and easy easter egg + there is certainly some people watching your videos who want to try the link when they spot it
Imbecile What kind of message is that? Listen, Child: The commit contains the following structural elements, to communicate intent to the consumers of your library: fix: a commit of the type fix patches a bug in your codebase (this correlates with PATCH in Semantic Versioning). feat: a commit of the type feat introduces a new feature to the codebase (this correlates with MINOR in Semantic Versioning). BREAKING CHANGE: a commit that has a footer BREAKING CHANGE:, or appends a ! after the type/scope, introduces a breaking API change (correlating with MAJOR in Semantic Versioning). A BREAKING CHANGE can be part of commits of any type. types other than fix: and feat: are allowed, for example @commitlint/config-conventional (based on the the Angular convention) recommends build:, chore:, ci:, docs:, style:, refactor:, perf:, test:, and others. footers other than BREAKING CHANGE: may be provided and follow a convention similar to git trailer format. Additional types are not mandated by the Conventional Commits specification, and have no implicit effect in Semantic Versioning (unless they include a BREAKING CHANGE). A scope may be provided to a commit’s type, to provide additional contextual information and is contained within parenthesis, e.g., feat(parser): add ability to parse arrays.
Sounds like my first year of programming lol. It felt so complicated seeing all those branches but I was just making myself crazy and nobody could explain it in a calm way to me. Couple months later I got used to working on dev because I was the only one on the projects and I comitted without review to master straight away. Now at my New company we have at least 1 other guy checking the code and branch protection enabled. + I know how branches work now lol. Still have to start using terminal one day though because right now Im using github desktop.
Most believable part is where corporate decides that devs should keep track on paper (don't forget to include the 10 lines of code you're most proud of!)
Holy shit yes. One thing goes wrong with a piece of software and regardless of what the user did wrong the problem is always the tool that makes your job 100x easier instead of the person who doesn't know how to use it.
We once had a really old school coworker. He was probably already coding, when computers still were the size of houses and had like 2 bytes of memory. Every time he finished a task, he would print out the source code and marked the lines he changed with a text marker. I'm not making this up xD
Alan: ''We'd rather have you compute the sum of the first 10 integers cubed, not squared.'' Billy: ''Fine, might take me another week tho.'' Spoken like a true programmer.
I wonder is Shregory has anything to do with his love for sh, being a developer rockstar ("shredder") or it's just a subtle hint that he is a 6 feet 7 shredded 1000$ a day CEO sherdogger. Looking forward to seeing his character expanded.
I honestly don't get why there are no good super easy and understandable tutorials for git(hub). It always feels so complicated, even though it shouldn't be.
Same here. Looking at git tutorial, feel so demanding just to understand the concept. Programming is already tricky, and they want to add it with git?? How can i teach it to a non IT people that just want to code something but don't like atrocities like Git?
There are good tutorials, y'all just lazy. But, alas, not one tutorial fits everybody similarly. Just take a day of your life and you'll get the concept. From there you just consolidate the knowledge, and google everytime you forget something Also, one word: Stackoverflow
@@gp6763I used over a dozen software versioning systems over my 44+ years of software development career and never did I have as many problems as with git. Lost changes, lost files, lost time. And before you tell me I was “doing it wrong” I used github desktop which should have hid all the complicated (as in doesn’t actually do what you think they do) git commands behind a easy to understand GUI. I don’t know of any git user that hasn’t on occasion lost hours recovering from git destroying their work. Conclusion: git is an atrocity. TGI’m retired now and don’t have to put up with it any more. That’s one part of my job that I don’t miss.
@@geowar20 Use git with GUI => wonder why he loose file xD Yes, you were doing it terribly wrong. I can accept a junior using a GUI for a time. Not an experienced dev. If after 44 years of programming you are afraid of terminals there is a big problem. If you are not but your think using a GUI to control a command line tools is "a good way of doing things" there is an other big problem
I'm a comp sci student, first used git in a team project second year, then did a year in industry where I properly learned it and thought it was the best thing since sliced strings, vowed to use it even in my own fun projects, then promptly forgot everything and haven't used it since...
@@ocwebdesigndev54 they told us to use in that team project, and had a very brief 'heres where the docs are, go learn it yourself' speech, but yeah it could've used a lot more emphasis
I started using git a couple of years ago and it has (mostly) made my life a lot easier, however I've never managed to shake off the feeling that I'm using a very powerful tool that I don't fully understand and can cause me serious harm at the slightest accidental misuse.
@@peter4210 Literally did that most of times. Since I was basically completely locked out of the whole project, I just made a new repo every time. After 3 years of trying, I actually gave up on getting it to work when working with others (which are students that also make plenty of mistakes themself). Although I will eventually have to work with it, but at this point I am afraid to try anything.
@@DanRivlean I don't understand what you said (I'm not native) My workflow is, I do something in a branch created from develop, I can push whenever I want, as much as I want. When I have finished, I create a PR and someone reviews it. I don't understand what you're saying. Could you explain it with other words? I'm curious
One thing I like, is (as I'm working in a branch of mine) do a lot of small commits and when I finish, use rebase to combine, rename and reorder commits. My commits are a lot better since I do this. Also, it's possible to split commits, or move a portion of a commit to another
@@eleanorbartle5354 it's not talking about deleting a file, it's about removing a file from a commit to be unstaged. you can use git remove and then a regex or the full filepath/filename, but so many people are used to using git add . where . indicates to commit everything in the current directory, removing a single file is not initially familiar
After a while using GIT: 1. Awesome commit messages, clearer, conventions to help keep it small; 2. Micro commits. Commit after every piece of feature; 3. Trunk based is good, Trunk based is life (kudos to CI/CD pipeline).
git add . && git commit -m "magic" && git push Handy for when you're trying to fix your Jenkinsfile. Alternative messages are: "gogogo", "fuck", "revert", and "retry". For context: our PRs get squashed after (before?) merging the code with master, so we can shit talk. It's great.
It was a policy from management that all programmers have equal access to the repos to "promote unity and shared company culture", he didn't have a choice.
The boss requesting to work on paper at the end make me feel like someone saying: "Let's revert back to ligth by candle, because someone got electrocuted by putting one's finger in a socket" forgetting that using candle could make an entire city brun to the ground.
I had a course in my uni that was pretty much leaning Git. At first I found it tedious and confusing but learning how absurdly helpful it is to work with a CVS made me fell in love with it.
That's why you should never work on the same branch in parallel, else you are literally asking for issues like these which cost you way more time to resolve after all
@@nervonabliss2071 it tells the other people working on the project (or your future self) nothing about what you changed during that session of work. It's a useless message.
I sometimes do the same. But I try to make smalls commits each day and when I finish, I use rebase to reorder, combine and rename commits. So much cleaner
Just one commit? I ask because normally you tend to work on a bunch of different stuff in a session, which might be more naturally grouped into multiple separate commits. Which is why Git requires an explicit “add” command for making commits, instead of assuming that you want to commit everything that has changed.
The most frustrating thing about programming team work is when people can‘t just code the way you agreed to but expect you to change your code nonetheless.
bro git is the hardest thing as an intern in it's first real job. I still don't know when to git commit or to just amend, always afraid of pulling and breaking stuff too. My code is fine but I messed up my git branch 2 times already and people had to help me. I learned a thing or two but it still scares me to death.
Haha I feel you, especially in the beginning it can be overwhelming But it's easy: Commit if you made changes you wanna, well, commit. Amend if you committed something and want to add changes to that commit (stuff which should have been committed in the previous commit)
I've just started with Python and I downloaded Git and I don't have the first clue how any of this works despite multiple tutorials. I too will be recording my changes on paper.
Serious question though. I’m nearing the completion of my bachelors in CS. I’ve never used git, but I know it’s widely used in the programming world. Where’s the best place to start learning?
git commit -m "Subscribe for more Billy : ) "
Everybody: git is simple
Billy: Where is my pen and paper?
How about giving Frek a new tiny detail?
He pushes people to subscribe to his YT channel anyways, so why not let him sneak in a link that's the exact same link needed to subscribe to your YT-Channel when ever he contributes some code to Billy or the company?
Would be a nice and easy easter egg + there is certainly some people watching your videos who want to try the link when they spot it
I just did, man. Quality!
Imbecile
What kind of message is that?
Listen, Child:
The commit contains the following structural elements, to communicate intent to the consumers of your library:
fix: a commit of the type fix patches a bug in your codebase (this correlates with PATCH in Semantic Versioning).
feat: a commit of the type feat introduces a new feature to the codebase (this correlates with MINOR in Semantic Versioning).
BREAKING CHANGE: a commit that has a footer BREAKING CHANGE:, or appends a ! after the type/scope, introduces a breaking API change (correlating with MAJOR in Semantic Versioning). A BREAKING CHANGE can be part of commits of any type.
types other than fix: and feat: are allowed, for example @commitlint/config-conventional (based on the the Angular convention) recommends build:, chore:, ci:, docs:, style:, refactor:, perf:, test:, and others.
footers other than BREAKING CHANGE: may be provided and follow a convention similar to git trailer format.
Additional types are not mandated by the Conventional Commits specification, and have no implicit effect in Semantic Versioning (unless they include a BREAKING CHANGE). A scope may be provided to a commit’s type, to provide additional contextual information and is contained within parenthesis, e.g., feat(parser): add ability to parse arrays.
@@HomoErectusIsAFunnyName Dude, this is supposed to be something funny... 🤦♂
- Wait. What branch are you on?
- The top one
True bird chad
Based
xDDD
Sounds like my first year of programming lol. It felt so complicated seeing all those branches but I was just making myself crazy and nobody could explain it in a calm way to me. Couple months later I got used to working on dev because I was the only one on the projects and I comitted without review to master straight away. Now at my New company we have at least 1 other guy checking the code and branch protection enabled. + I know how branches work now lol. Still have to start using terminal one day though because right now Im using github desktop.
@@Love4Hardstyleyeah you definitely should learn CLI (terminal), the earlier - the better
I'm ashamed to admit that I actually gasped when I saw him typing '--force' XD
pfft
git add .
git commit --amend --no-edit
git push -f
or gitfo
@@rngesus8057 Some people just want to see the world burn
That's a proper reaction.
@@rngesus8057 at least use -force-with-lease 😭
The problem is that git devs created the --force option and now tell everyone not to use it
I like how Alan finds the birdpic even before it is actually pushed to remote
Exactly why is nobody talking about this lmao
My guy took his laptop
@@h3nry_t122 spyware is actually God
TeamViewer maybe lol
Alan is always coming over to Billy's desk and peeking at his screen.
Most believable part is where corporate decides that devs should keep track on paper (don't forget to include the 10 lines of code you're most proud of!)
Yes hahahh
Holy shit yes. One thing goes wrong with a piece of software and regardless of what the user did wrong the problem is always the tool that makes your job 100x easier instead of the person who doesn't know how to use it.
We once had a really old school coworker. He was probably already coding, when computers still were the size of houses and had like 2 bytes of memory. Every time he finished a task, he would print out the source code and marked the lines he changed with a text marker. I'm not making this up xD
@@johnpage4853 wow haha
@@johnpage4853 Well that's what I like to call "stuck in time". He probably was used to do that back then.
Alan: ''We'd rather have you compute the sum of the first 10 integers cubed, not squared.'' Billy: ''Fine, might take me another week tho.''
Spoken like a true programmer.
And it will take him a month
the shregory and billy dynamic is too elite.
It's "3l33t", plz.
Noob. (Shregory voice...)
Shregory is the yang to Billy’s yin
I wonder is Shregory has anything to do with his love for sh, being a developer rockstar ("shredder") or it's just a subtle hint that he is a 6 feet 7 shredded 1000$ a day CEO sherdogger.
Looking forward to seeing his character expanded.
Yeah, Shreg is honestly a great mentor
I actually learned Git through this video. I was sending ZIP Folders the entire time
git mail is a thing. And so is git archive.
I’ll give you a point for using .zip instead of .rar.
@@lawrencedoliveiro9104 I'll take away a point for using .zip instead of .tar.xz
@@itellyouforfree7238 Don’t be like that. After all, you could lose one for not using zstd compression.
Holy shit me too 💀 I need git now
The "I like branches" part cracked me up! LOL
I honestly don't get why there are no good super easy and understandable tutorials for git(hub). It always feels so complicated, even though it shouldn't be.
Same feeling bro, been struggling since day 1 and couldn't find a single good tutorial, or maybe I am too dumb.
Same here. Looking at git tutorial, feel so demanding just to understand the concept. Programming is already tricky, and they want to add it with git?? How can i teach it to a non IT people that just want to code something but don't like atrocities like Git?
There are good tutorials, y'all just lazy. But, alas, not one tutorial fits everybody similarly. Just take a day of your life and you'll get the concept. From there you just consolidate the knowledge, and google everytime you forget something
Also, one word: Stackoverflow
@@gp6763I used over a dozen software versioning systems over my 44+ years of software development career and never did I have as many problems as with git. Lost changes, lost files, lost time. And before you tell me I was “doing it wrong” I used github desktop which should have hid all the complicated (as in doesn’t actually do what you think they do) git commands behind a easy to understand GUI. I don’t know of any git user that hasn’t on occasion lost hours recovering from git destroying their work. Conclusion: git is an atrocity. TGI’m retired now and don’t have to put up with it any more. That’s one part of my job that I don’t miss.
@@geowar20
Use git with GUI => wonder why he loose file xD
Yes, you were doing it terribly wrong.
I can accept a junior using a GUI for a time. Not an experienced dev.
If after 44 years of programming you are afraid of terminals there is a big problem. If you are not but your think using a GUI to control a command line tools is "a good way of doing things" there is an other big problem
I'm a comp sci student, first used git in a team project second year, then did a year in industry where I properly learned it and thought it was the best thing since sliced strings, vowed to use it even in my own fun projects, then promptly forgot everything and haven't used it since...
I did that with Linux till I got older and got another job where it wasn't used.
the fact that your comp sci courses don't teach you version control is just such a facepalm
@@ocwebdesigndev54 they told us to use in that team project, and had a very brief 'heres where the docs are, go learn it yourself' speech, but yeah it could've used a lot more emphasis
@@jblen To be fair you kind of have to do that in the industry lol. But you're paying them money so that's ridiculous
Don't worry, you will have to remember all of it when being hired. Cause everyone works with version control.
I started using git a couple of years ago and it has (mostly) made my life a lot easier, however I've never managed to shake off the feeling that I'm using a very powerful tool that I don't fully understand and can cause me serious harm at the slightest accidental misuse.
why did it made your life "easier"? Were you there in the days of subversion? why is Git better than svn?
Same lol, especially whwn you use it as an artist :|
The problem solver: git push --force
if all fails. Destroy the repo and make a new one
Also "git reset HEAD~" (just imagine your waifu saying it, ludely)
At the same time, a problem maker for the other members.
@@peter4210 Literally did that most of times. Since I was basically completely locked out of the whole project, I just made a new repo every time. After 3 years of trying, I actually gave up on getting it to work when working with others (which are students that also make plenty of mistakes themself). Although I will eventually have to work with it, but at this point I am afraid to try anything.
There is no I in Team 😊
0:52 "You push. (edited)" is a nice touch 😉
I don’t get it. Why “(edited)”?
Why edited?
If you've worked in an environment where you're supposed to push only when ready for others to review (because PR is up), you'd understand
@@DanRivlean I don't understand what you said (I'm not native)
My workflow is, I do something in a branch created from develop, I can push whenever I want, as much as I want. When I have finished, I create a PR and someone reviews it.
I don't understand what you're saying.
Could you explain it with other words? I'm curious
One thing I like, is (as I'm working in a branch of mine) do a lot of small commits and when I finish, use rebase to combine, rename and reorder commits.
My commits are a lot better since I do this.
Also, it's possible to split commits, or move a portion of a commit to another
The fact that Frek's changes were 'removes the three stars to make the code work you dingus' and that it was overwritten made me lose it
Only a true git wizard could get rid of the committed file had me dying. I never figured that out LOLOLOL
Restore?
after git add .
just run git minus .
@Eleanor Bartle It picks it up, but it will still be in the commit history
@@eleanorbartle5354 it's not talking about deleting a file, it's about removing a file from a commit to be unstaged. you can use git remove and then a regex or the full filepath/filename, but so many people are used to using git add . where . indicates to commit everything in the current directory, removing a single file is not initially familiar
@@eleanorbartle5354 everything in this video could be looked up, sure. The fun is in looking back at how ignorant we once were.
"record changes on paper"
Didn't know Billy and co worked at Twitter
nah twitter records changes _on twitter_
At the end, I thought Alan would say "We'll record changes using MS Word's track changes."
alas the daily struggles of beginners are pure gold content
You find pleasure in my suffering ;-;
@@heck_n_degenerate940 I find pleasure in my suffering
Alan “It’s perfect. Some of the best work I’ve seen!” Lololol
Xd
XD 😂
After a while using GIT:
1. Awesome commit messages, clearer, conventions to help keep it small;
2. Micro commits. Commit after every piece of feature;
3. Trunk based is good, Trunk based is life (kudos to CI/CD pipeline).
git add . && git commit -m "magic" && git push
Handy for when you're trying to fix your Jenkinsfile. Alternative messages are: "gogogo", "fuck", "revert", and "retry".
For context: our PRs get squashed after (before?) merging the code with master, so we can shit talk. It's great.
What do you mean by "conventions to help keep it small"? :)
Last team I joined we had a convention like "[number of the card] type-of-adjustment/resume-of-what-we-did"
Ex.: [102] feat/Implemented-new-stuff
[UPDATE] Temporary Commit
After reading about 750 pages of one Git book, I still have no idea what your last point is about. 😄
Thanks for this, your videos are the more coolest on programming mischief. Really well done and also so funny and real 🙃
Shregory should've protected the master branch.
Also, rename your vars in vscode with f2. Set cursor on var. Press f2. Type new name. Enter.
It was a policy from management that all programmers have equal access to the repos to "promote unity and shared company culture", he didn't have a choice.
Please keep making this programming video!! it actually motivates me to learn more and I actually did learn something in every Billy videos!
The boss requesting to work on paper at the end make me feel like someone saying: "Let's revert back to ligth by candle, because someone got electrocuted by putting one's finger in a socket" forgetting that using candle could make an entire city brun to the ground.
This video teaches more DevOps in 4 minutes than my CS degree could in 4 years
I had a course in my uni that was pretty much leaning Git. At first I found it tedious and confusing but learning how absurdly helpful it is to work with a CVS made me fell in love with it.
i honestly love your dedication to this video, you actually made a pretty decent script
the part git push --force is so true for me. I did that as a newbie and my team was like : where did our code go??
That's why you should never work on the same branch in parallel, else you are literally asking for issues like these which cost you way more time to resolve after all
the editing on this makes it pretty funny. you did a good job lmao
Just getting started with code- I relate to that bird on a spiritual level
I only know a little bit about git but this was fucking gold. Please do more.
Fantastic. Easily one of the best video series on TH-cam.
I literally laugh the whole video. Thanks for making my day easier bro
My FRC team got scared every time they saw a git conflict and _made a new repo._ This happened like five times despite my efforts
😂😂😂
jesus christ
Git add -all
Git commit -´´.´´
Git push -force
😂
The best practice
Explain --force
@@nervonabliss2071 It ignores all conflicts and forcefully checks your code in which can lead to more serious problems later..
--force-with-lease 😔
Subtle one:
git push upstream :«branch»
The fact that there is nothing before that colon means the upstream branch is *deleted.*
@@janek4913 not if ur on ur own branch
git commit -m "." - I almost pissed myself from laughing so much
Why "." bad?
@@nervonabliss2071 it tells the other people working on the project (or your future self) nothing about what you changed during that session of work. It's a useless message.
git commit --allow-empty message -m ""
git commit -am "asdasadadsa"
These videos always make me lol 😂 Thank you for making them
I normally do a big commit when I finish for the day and then like 10 smaller commits to fix small bugs I only just noticed
I sometimes do the same. But I try to make smalls commits each day and when I finish, I use rebase to reorder, combine and rename commits. So much cleaner
Just one commit? I ask because normally you tend to work on a bunch of different stuff in a session, which might be more naturally grouped into multiple separate commits.
Which is why Git requires an explicit “add” command for making commits, instead of assuming that you want to commit everything that has changed.
@@lawrencedoliveiro9104 time to pull out the next weapon in the beginner's toolbox: `git commit -am .`
@@lawrencedoliveiro9104 Yeah, and in case of GUI git, where "add ." is usually automatic, just use stash.
should have protected the master branch from force pushing in the first place, possibly for the dev branch as well
The most frustrating thing about programming team work is when people can‘t just code the way you agreed to but expect you to change your code nonetheless.
That was the best, and he didn't change the file name, details, loved
This almost made me cry with laughter.
Such a good tutorial ty!😋
Me when my bros push all the "Remove form commit" stuff for the 156th time:
👁️ 👁️
👄
This is painfully funny and accurate
This guy just explained the whole git experience in one discord video😂
This is what a quick way to introduce to learn a new thing should be, I saw many of beginner mistake in this video that nearly every junior have.
I have to say I'm with Billy on this one, branches are indeed nice
bro git is the hardest thing as an intern in it's first real job. I still don't know when to git commit or to just amend, always afraid of pulling and breaking stuff too. My code is fine but I messed up my git branch 2 times already and people had to help me. I learned a thing or two but it still scares me to death.
Haha I feel you, especially in the beginning it can be overwhelming
But it's easy: Commit if you made changes you wanna, well, commit.
Amend if you committed something and want to add changes to that commit (stuff which should have been committed in the previous commit)
I've just started with Python and I downloaded Git and I don't have the first clue how any of this works despite multiple tutorials.
I too will be recording my changes on paper.
As a Git starting user this hits home. I have messed master couple times already.
Love it, and live the spyro’s music too
We used git for writing papers in latex when I was doing PhD. Advisor would always --force his changes. It was great.
I love these Spyro soundtrack bits!
This is genuinely a good tutorial
O conteúdo é simples mas a qualidade é absurda!
This is a good beginner tutorial unironically
There is no better feeling than having your code finally be ready enough to push
this was way too funny 🤣
Also Akatsuki theme on 2:39 is amazing :D
Watching billy become a programmer has been a joy
SOOO RELATABLE! Loved it! Hahahaha
Even shregory admits that pull requests are a nightmare
Actually 1:30 it's still nowadays one of my worst fears at my job lmao, I laughes hard there
I love how often Spyro music is used here lol
I lost it at "sexybird". 🤣
Didn’t expect to hear Spyro music lol
Laughed way too hard at this lmao
2:38 "You're doomed." Yep, from the moment he started using git!
This is so funny i literally was laughing for 10 min straight, so almost whole video
2:41 ALMIGHTY FORCE!!!
"You contemplate a career at McDonalds." Same, bro.
1:37 git rebase -i HEAD~1
*change pick to edit*
*remove file*
git commit --amend
git rebase --continue
Love the Runescape music at 1:46
First day of work: squash everything, commit message: "legacy code"
the amount of runescape music is 😗👌🔥💯
That moment when you just pushed your code, and someone goes "Uuuuhh.... what branch did you say you're on?"
F-ing vietnam flashbacks
This remembered me my dumb teammates
"I don't commit to anything" sounds like a really nerdy joke. 🤣
Serious question though. I’m nearing the completion of my bachelors in CS. I’ve never used git, but I know it’s widely used in the programming world. Where’s the best place to start learning?
I love your profuse use of Spyro music. It's like I'm watching a Dayo video
Love dayo
@@MrPSolver What a small world!
HAHAHAHAHAHA THE --f one reminds me of me when trying to flex to my friends 😂😂
"Hey my git pull isn't working, how do I-"
"Just delete your local repo and clone again."
That is actually me when started learning Git. Fresh clone from remote repository.
Still doing that after all this time... It just never works
This is the way
I still remember the git merge --abort command when I was new to git 🤣
The legendary push -force
I'm pretty new to git, and in my job I had to do rebase once...
Well... It ended with creating another branch xD
This somehow made it more forking confusing.
Getting a merge conflict on your last day of work, at 4pm
I think this is the second time I have heard spyro music in this channel.
Me watching this randomly added to my timeline while I’ve never used git before: “Yeah paper sounds good”
Bro these are hilarious
I love how "You push" appears to be edited 💀
'listen bird ' idk but I found it hilarious
Only scratched the surface 😄
This video just taught me git lol
What’s the song when billy is on the branch? Thank you!
This is wayy too relatable
I except i gave up about an hour into using it
Well i can say as a McDonalds Manager, never contemplate a career there. Deal with your conflicts 😂
2:40 "And now! My codebase shall know PAIN!"