I been learning git and github following directions but not fully understanding what I was doing. After watching this video I understand exactly what I was doing and have more of an understanding to start building some projects with git & github. Thank you for the illustrations they really help.
Thank you Nathan and IBM Technology for the great content. You guys put a lot of effort to make things easy for us to understand. Keep up the awesome work.
Excellent vid. Just some quick questions which are probably obvious to everyone else: 1) How does Greg know a PULL-MERGE is required, did a PUSH attempt fail? 2) Does Git interrogate and analyze the code inside the file and highlight the specific conflicts or is it just file name, file size and timestamps? 3) Does GitHub/Lab automatically push a notification to whom ever is responsible for answering the PULL-REQUEST? 4) Is there a part two vid clearing up the Greg stages of interaction with the main branch?
I can help you here. 1. Greg can tell if he has to pull the code from the main branch by checking the GitHub repository to see if there are new changes. Or, more ideally, if Greg tries to push to the main branch, GIT is smart enough to know that there is a conflict. So GIT will say something like: Greg, you are trying to push your changes to the main branch but the main branch has some changes you don't have. Please pull first before pushing. 2. Git does a lot of things to check if there are changes. Take two files for example, A and B. As long as they are two different names, there is no similarity even if they have the same content. If they have the same name, GIT can check it's own copy (usually the latest copy) and cross check the new copy. It checks line by line. If both files have the same content, then nothing changed, if they don't, GIT will show you something called a "diff". A diff is just GIT telling you the difference between each line of code. If line 1 of the file GIT has is different from line 1 of the file Greg is trying to merge, GIT will tell Greg: There's a conflict. 3. PR has their own rules. Ideally, you as a user that started or opened a PR can choose to notify someone to take a look at it, or you can leave it there until the person comes to check. It's all about notifications, no hard rules. That's not GIT's responsibility, it's GitHub.
@@adebiyial but buddy, here is one thing it wasn't clear to me: "knowing there is a merge conflict from pushing the code and git telling there's new code on github I don't have, is making a pull request a way to avoid dealing with the merge conflict? I mean, if I make a pr then I don't need to bother pulling any changes?
@@srlhyo A pull request isn't going to resolve any conflicts, you still have to do that yourself. The only thing that can happen is you pull and handle the merge locally or force a push and delete any changes that were made, probably not a good thing to do
I wonder how you people have matched Hekman's hand movements with the writing in inverse on the screen. I find this technology truly amazing !! I MEAN WOWW!!
@@dheerajgupta15 my expirience is that greg and nathan push their branches to the main repo. so that both info is there in gitlab/github. and then you create a pull request (so everything is done on the server). afterwards you merge the main branch to your local repo, and then push. and create a second pull request on the main repo. sounds right?
I'm a little bit confused why for Greg it's called Pull Request but not Push Request isn't he is pushing his changes to the GitHub repository as Nathan did before?
Thanks Natham! Truly appreciate the straightforward way you use to explain what otherwise would be a complex subject... MY QUESTION: Which, I think you didn't mention is 'why are these platforms called "GIT"? I don't see any related meaning to 'Version Control Systems'. What exactly is the origin of the Acronym?
According to Wikipedia... Torvalds sarcastically quipped about the name git (which means "unpleasant person" in British English slang): "I'm an egotistical bastard, and I name all my projects after myself. First 'Linux', now 'git'." en.wikipedia.org/wiki/Git#Naming
Your videos are very useful for me. But, allow me to add one note. You write the notes in two colours, one is bright and clear for me. While I have a problem with the other colour. Thanks again and I am sorry for the out of subject note.
I love the content shared by IBM cloud. The tit bit video's make the concept simple to understand . Thanks to Nathan and all greats who help spread knowledge.
Hello good morning Nathan! I have watched your video regarding GIT, at present, I am a student of Data Analytics, can I use GIT as my repository for my studies? Thanks
@@username-1043 Also due note, that just because you make a Pull Request (PR) doesnt mean it will get accepted. It can be denied for any reason. It will get denied by whomever is in charge of overseeing the github project. I say this, because some people have the sense of belief that they can just put up any code they want. which is not true. It goes through an approval process first.
why do they call it a pull request when you're actually trying to push code inc. merge conflict resolution changes. Shouldn't it be a push request at this point?
I've always thought of it from the viewpoint of the reviewer - you're asking them to pull your proposed changes into their work stream. If they accept your updates, your code get pushed into the main branch.
Nathan, Great job. Plus I also bluegrass so that gets u another star. In comments Singh Noah asked a critical. Read Anton T wrote a very informative reply. While I do not use IBM Cloud, they do provide excellent tutorials.
You clone a repo only once, in the very beginning of your work. Both Nathan and Craig cloned the Repo. Then Nathan pushed his changes, but basically he was supposed to pull and merge first, to make sure Craig hadn't already pushed his changes first. So in GIT you do the CLONE action only once - that's how you download the whole huge repository on your local machine. And then whenever you need to make a change, you first PULL the current version (and when you do that only the changes are downloaded, not the whole repository). Then you commit your own change to the branch you have and then you PUSH it to the server/cloud. And until you have finished your PUSH action the system is locked for all the other developers - they cannot commit or push anything until you're done. As soon as you are done pushing (lol) the system gets unlocked again and someone else can do his/her own PULL-COMMIT-PUSH.
Submitting a pull request means, Greg is requesting others to pull and give a response (approval or denial) on the new home screen having both Bluegrass and Rock features.
A “pull request“ asks a repo/project to “pull“ changes you've made on your cloned repo into theirs and “merge“ them. This is different to a pull which does a “fetch“ and either “merge“ or “rebase“ from a repo.
You should note that Linus wrote git in a weekend and some of the reasons are interesting, like the bitkeeper drama with reverse engineering their stuff and the need for speed that is probably the main driver to write it.
Thanks Nathan, So can I use GitHub to create educational audio and written material for the youth and public in general. As an aspiring book & article's writer etc, Bible teacher and motivational speaker, how can Git help increase my viewer's in number in order for them to acquire this knowledge? Thank you again.
The best explanation about git and github, that I have been able to get, now my next question, in many employment pages they request experience in handling git, but I have developed myself in github and desktop github, which allows me to make local changes, that counts as experience in git?
Hey Renny! We’re glad you found the video helpful! Yes, Github, GitLab, and other services use git technology - so it certainly sounds like you have experience with git. 👍
I been learning git and github following directions but not fully understanding what I was doing. After watching this video I understand exactly what I was doing and have more of an understanding to start building some projects with git & github. Thank you for the illustrations they really help.
I didn't know Mr.Beast was so good at explaining tech concepts. Good job Jimmy.
4yrs and this explanation vid still killing it on the essentials
Plot twist: the video is NOT flipped....he's just really good at writing backwards 🤣
Plot twist: he's not writing on a transparent acrylic in front of him. He's not even depositing ink. It's all CGI
He rotated the screen, seethe watch in his hand, it's in right
😂
Plot twist: There's no plot twist...
It's all done with smoke and mirrors..
..well, mirrors only.
some of the most informative prog/comp/IT videos on youtube, good work
Simple, crystal clear with examples.. perfect 👌
Thank you Nathan and IBM Technology for the great content. You guys put a lot of effort to make things easy for us to understand. Keep up the awesome work.
Right?
This is by far the best among the many videos I've watched to get the basics of Git & Github. Keep up the awesome and simplified explanations.
You taught me Networking MMU 🫡
I keep coming back to this channel for clear and straight-to-the-point information. Thank you for your explanation.
Excellent vid. Just some quick questions which are probably obvious to everyone else:
1) How does Greg know a PULL-MERGE is required, did a PUSH attempt fail?
2) Does Git interrogate and analyze the code inside the file and highlight the specific conflicts or is it just file name, file size and timestamps?
3) Does GitHub/Lab automatically push a notification to whom ever is responsible for answering the PULL-REQUEST?
4) Is there a part two vid clearing up the Greg stages of interaction with the main branch?
did you find answers ?
@@adalovelac24 did he/she find answers?
I can help you here.
1. Greg can tell if he has to pull the code from the main branch by checking the GitHub repository to see if there are new changes. Or, more ideally, if Greg tries to push to the main branch, GIT is smart enough to know that there is a conflict. So GIT will say something like: Greg, you are trying to push your changes to the main branch but the main branch has some changes you don't have. Please pull first before pushing.
2. Git does a lot of things to check if there are changes. Take two files for example, A and B. As long as they are two different names, there is no similarity even if they have the same content. If they have the same name, GIT can check it's own copy (usually the latest copy) and cross check the new copy. It checks line by line. If both files have the same content, then nothing changed, if they don't, GIT will show you something called a "diff". A diff is just GIT telling you the difference between each line of code. If line 1 of the file GIT has is different from line 1 of the file Greg is trying to merge, GIT will tell Greg: There's a conflict.
3. PR has their own rules. Ideally, you as a user that started or opened a PR can choose to notify someone to take a look at it, or you can leave it there until the person comes to check. It's all about notifications, no hard rules. That's not GIT's responsibility, it's GitHub.
@@adebiyial but buddy, here is one thing it wasn't clear to me: "knowing there is a merge conflict from pushing the code and git telling there's new code on github I don't have, is making a pull request a way to avoid dealing with the merge conflict? I mean, if I make a pr then I don't need to bother pulling any changes?
@@srlhyo A pull request isn't going to resolve any conflicts, you still have to do that yourself. The only thing that can happen is you pull and handle the merge locally or force a push and delete any changes that were made, probably not a good thing to do
Coming off an Udemy course on the topic, this was a best revision recap. Absolutely the essence, straight to the point!
well to be honest, am impressed by his delivery of the concept in the difference between Git and Github
Nathan, I have a question on this video. At the end of your example, why did you do a Push and not a Pull and Merge?
Just blown away by his ability to write and draw in reverse so fluidly 😸 lol
He is not:) it’s just the way video was recorded.
I wonder how you people have matched Hekman's hand movements with the writing in inverse on the screen. I find this technology truly amazing !! I MEAN WOWW!!
the concept of lightboard works on special glass... used for writing and then mirrors to invert the image.
Or you can software to reverse.. if its not online real-time streaming
This is just simple - to - understand knowledge, Thanks Nathan!
Best Explanation on YT...
Thank you!!! Someone who finally simplifies it! Great job!
Nice and simple explanation Nathan, looking forwards to more.
I never understood why ppl called it PR, but now I can understand it, thanks!
Quick question, could Greg have been able to do the same with a Push request ? When should one do a git Push vs a git pull request ?
Following.
@@dheerajgupta15
my expirience is that greg and nathan push their branches to the main repo. so that both info is there in gitlab/github.
and then you create a pull request (so everything is done on the server).
afterwards you merge the main branch to your local repo, and then push. and create a second pull request on the main repo.
sounds right?
This is really simple, accurate, and flawless. Thank you so much
wow! ive gained a lot of insights from this explanation. I now understand what Kevin stratvert was teaching us with Git
Wow, THIS IS AMAZING EXPLANATION. I CAN'T THANK YOU ENOUGH.
I'm a little bit confused why for Greg it's called Pull Request but not Push Request isn't he is pushing his changes to the GitHub repository as Nathan did before?
Superb explanation. If could you please give the actual demo, it would be great. Thank you.
Thank you IBM to explain in a easy way. best explication about the git and GitHub without to much verbiage.
I can't stop focusing on how good Nathan can write backwards
So Basically GitLab/GitHub is something like private cloud or AWS / Azure?
Great job Nathan!!!! Seriously brilliant explaination.
Thanks Natham! Truly appreciate the straightforward way you use to explain what otherwise would be a complex subject...
MY QUESTION: Which, I think you didn't mention is 'why are these platforms called "GIT"? I don't see any related meaning to 'Version Control Systems'. What exactly is the origin of the Acronym?
According to Wikipedia...
Torvalds sarcastically quipped about the name git (which means "unpleasant person" in British English slang): "I'm an egotistical bastard, and I name all my projects after myself. First 'Linux', now 'git'."
en.wikipedia.org/wiki/Git#Naming
Thanks. Quick question. How is code in Git repo put together and what is a build process?
This clip is extremely useful. You made an excellent job!
Thank you! We're glad you found it helpful! 👍
Oh thank you! You are amazing to explain it in such a simple way 🙂
Aside from 'portability', what advantages are there for solitary developers?
you can see all the changes that you did in your code over time
Crystal clear explanation. Any one can understand it. Nice.
♥
Your videos are very useful for me.
But, allow me to add one note.
You write the notes in two colours, one is bright and clear for me. While I have a problem with the other colour.
Thanks again and I am sorry for the out of subject note.
How long did it take you to learn how to write inside out and back to front at the same time?🤔
he probably just flipped the footage lol
I also noticed that n I can do it too
@@OhAnd idk why I didn't think of this. I was hella impressed
I wish i could like this multiple times
If Nathan and Greg work on different branches there will be no merge conflict
An excellent video. Learnt a lot. Thanks. But.... please tell me how do you make this type of videos like writing on a glass...?
Hey! Glad you enjoyed the video! 🙂
As for the making of, we explain it all in our "Community" section 👉 ibm.co/37r6z8h 🧐
I love the content shared by IBM cloud. The tit bit video's make the concept simple to understand . Thanks to Nathan and all greats who help spread knowledge.
You got me at let’s git started !!
Thank you for keeping this simple and easy to understand for new comers!
Hello good morning Nathan! I have watched your video regarding GIT, at present, I am a student of Data Analytics, can I use GIT as my repository for my studies? Thanks
The last command is "pull request" not a "push request"?
Thankyou so much for this clarity with clear example.
CAN We hamper the Main code by deleting some commands.....or we can just add our new commands in main code ??
I have learnt so much from this IBM series, thank you so much. Great explanations for so many topics
How GIT and GITHUB do instruction in the processor?
Wooow explains dope crystal clear... Understandable 💯
Nice - that was a pretty good explanation.
Excellent explanation. Very easy to understand.Thank you for the wonderful presentation also.
Thanks IBM for the video. I have a better understanding.👍🏼
Great video😁.. I have a doubt does grey have to do all its work again after pulling the updated code
No. He just has to resolve merge conflicts which will be visible on Greys' code. He can keep all , some and none part of the pulled code.
@@username-1043 Also due note, that just because you make a Pull Request (PR) doesnt mean it will get accepted. It can be denied for any reason.
It will get denied by whomever is in charge of overseeing the github project.
I say this, because some people have the sense of belief that they can just put up any code they want. which is not true. It goes through an approval process first.
Wait how are you writing in reverse so quick?
Amazing, simple explanation. Thank you!
Deserves a like for sure
Thank you Nathan, this video is really helpful for me!!!
thanks .. i know have vids i can share to friends an family to help essplain what "we do". and why its so great..
So it’s like Google Docs but for your Code?
really Awesome... superb explination on Git and Github
4:20
Thank you so much man for simply explaining this
why do they call it a pull request when you're actually trying to push code inc. merge conflict resolution changes. Shouldn't it be a push request at this point?
I've always thought of it from the viewpoint of the reviewer - you're asking them to pull your proposed changes into their work stream. If they accept your updates, your code get pushed into the main branch.
This is very much to the point and easy to understand! Thank you Nathan!
Right into the point, Love this😍
Nathan,
Great job. Plus I also bluegrass so that gets u another star. In comments Singh Noah asked a critical. Read Anton T wrote a very informative reply. While I do not use IBM Cloud, they do provide excellent tutorials.
Das Quietschen der Stifte bringt mich um, aber tolles Video!
Great illustration!!! Thank you!!!
Great explanation
That was super helpful. Thanks man!!!
When Nathan changed the main branch, it was called "push". Why then, when greg wants to make changes, it is called a "pull request"?
You clone a repo only once, in the very beginning of your work. Both Nathan and Craig cloned the Repo. Then Nathan pushed his changes, but basically he was supposed to pull and merge first, to make sure Craig hadn't already pushed his changes first. So in GIT you do the CLONE action only once - that's how you download the whole huge repository on your local machine. And then whenever you need to make a change, you first PULL the current version (and when you do that only the changes are downloaded, not the whole repository). Then you commit your own change to the branch you have and then you PUSH it to the server/cloud. And until you have finished your PUSH action the system is locked for all the other developers - they cannot commit or push anything until you're done. As soon as you are done pushing (lol) the system gets unlocked again and someone else can do his/her own PULL-COMMIT-PUSH.
Submitting a pull request means, Greg is requesting others to pull and give a response (approval or denial) on the new home screen having both Bluegrass and Rock features.
@@anton_t thank you for response this really clears things up for me!
A “pull request“ asks a repo/project to “pull“ changes you've made on your cloned repo into theirs and “merge“ them. This is different to a pull which does a “fetch“ and either “merge“ or “rebase“ from a repo.
That's are super helpful to visualize what's going on! Thank you!
Glad you liked our video format, Nate, thanks for watching! You can subscribe to our channel for more videos like this one.😉
Great explanation Thanks !
Perfect explanation. crystal clear.
Thanks for your information Sir
Well this video deff got me intrested in learning how to use it.
How’s this possible to work unless prod files are being temporarily locked for changes ?
You should note that Linus wrote git in a weekend and some of the reasons are interesting, like the bitkeeper drama with reverse engineering their stuff and the need for speed that is probably the main driver to write it.
thank you so much! the explanation is too good and simple.
Thank you. A great video, as always!
Thank you, I am Indonesian you was give me new knowledge.
still i have some doubts on PR and Pull and merge. Can someone pin some useful links.
Thanks Nathan, So can I use GitHub to create educational audio and written material for the youth and public in general. As an aspiring book & article's writer etc, Bible teacher and motivational speaker, how can Git help increase my viewer's in number in order for them to acquire this knowledge? Thank you again.
Very well made videos...please share more such content.
I need a glass white board, does IBM sell these?
No. Search on "lightboard videos" for retailers.
@@IBMTechnology
Cool ok. Thanks IBM
brilliant explanation!
Simple and awesome explanation ☺️
The sound of the pen scratching the glass is so shivering.
Very well done!! Thank you Nathan
The best explanation about git and github, that I have been able to get, now my next question, in many employment pages they request experience in handling git, but I have developed myself in github and desktop github, which allows me to make local changes, that counts as experience in git?
Hey Renny! We’re glad you found the video helpful! Yes, Github, GitLab, and other services use git technology - so it certainly sounds like you have experience with git. 👍
I have a question.. why does Greg have to make a pull request and Nathan doesn't have to make a PR?
Explicit and well explained! Thanks.
Is ability to write mirrored is amazing
he explained so nicely
Nice!... Excellent teaching!
4:31
Crystal Clear. Great Job.
Excellent explanation. Want more video like this.
Thank you Nathan . Good job :)
Did he just write all the text in reverse? Thanks!