Git and GitHub for Beginners - Crash Course
Вставка
- Опубліковано 5 сер 2024
- Learn about Git and GitHub in this tutorial. These are important tools for all developers to understand. Git and GitHub make it easier to manage different software versions and make it easier for multiple people to work on the same software project.
This course was developed by Gwen Faraday. Check out her UA-cam channel: / @faradayacademy
🔗 Git Commands: gist.github.com/gwenf/19e5748...
🔗 Install git: www.atlassian.com/git/tutoria...
🔗 SSH Keys: help.github.com/en/github/aut...
⭐️ Contents ⭐️
⌨️ (0:00) Introduction
⌨️ (1:10) What is git?
⌨️ (1:30) What is version control?
⌨️ (2:10) Terms to be learn in video
⌨️ (5:20) Git commands
⌨️ (7:05) sign up in GitHub
⌨️ (11:32) using git in local machine
⌨️ (11:54) git install
⌨️ (12:48) getting code editor
⌨️ (13:30) inside VS Code
⌨️ (14:30) cloning through VS Code
⌨️ (17:30) git commit command
⌨️ (18:15) git add command
⌨️ (19:15) committing
⌨️ (20:20) git push command
⌨️ (20:30) SSH Keys
⌨️ (25:25) git push
⌨️ (30:21) Review workflow so far
⌨️ (31:40) Compare between GitHub workflow and local git workflow
⌨️ (32:42) git branching
⌨️ (56:30) Undoing in git
⌨️ (1:01:50) Forking in git
⌨️ (1:07:55) Ending
Thanks to Harsh Raj for creating these time codes and section descriptions.
--
Learn to code for free and get a developer job: www.freecodecamp.org
Read hundreds of articles on programming: freecodecamp.org/news
Hey everyone, thanks for watching ❤
If you want to support my work, I wrote a book on learning to code: amzn.to/3a911Rk (US) and books2read.com/u/4DgO8D (worldwide)
Because of you my fear of git is now gone and I can also contribute to open source
Thank you so much for spreading you knowledge with us 😘😘
that was the best way of teaching thanks for everything
Will take a look at those books, thanks!
Thank you mam!
amazing tut, this was awesome learning experience and I will be checking out your channels and other materials too
TimeLine
1:10 What is git
1:30 What is version control
2:10 Terms to be learn in video
5:20 Git commands
7:05 sign up in github
11:32 using git in local machine
11:54 git install
12:48 getting code editor
13:30 inside vsCode
14:30 cloning through vsCOde
17:30 git commit command
18:15 git add command
19:15 commiting
20:20 git push command
20:30 SSH Keys
25:25 git push
30:21 Review workflow so far
31:40 Compare between github workflow and local git workflow
32:42 git branching
56:30 Have fun is not allowed
1:01:50 Forking in git
1:07:55 Ending
Thank you for doing that!
Faraday Academy welcome :)
i am thankful to you for this video
LOL 😊
@Harsh Raj Thanks! I just added this to the description with credit to you.
thnx dude
:)
When you said CD = Change Directory, I went into a time warp. I bought my first PC in 1984. It had a massive 10 meg hard drive! I knew absolutely nothing about computers. Didn't even know anyone who had one. The computer came with a thick three-ring binder with the title, DOS. I read and reread and reread the entire book until it started to make sense. (The first version of Windows didn't come out until 1985.) In 1985, I bought an early copy of Symantec's Q&A, a (non-Windows) word processor, flat file, and report generator, which relied heavily on keystroke combinations to get things done but was hinting at a graphical interface. I ran a non-profit for many years with Q&A and loved it, such an improvement from WordStar. So, now at 72-years-old, to see CD = Change Directory, I say to myself, "Hey, I can do this." Thanks for a good tutorial.
Though i'm 23 but in india the course of pg diploma of computer has not changed in years i also know cd means nd md i learnt dos os in 2019
@@akankshadixit7960 Really? Never knew people still learn DOS these days. Doing so will really help the understanding of directory/file structure. You will come to further appreciate how GUI has made life simple for computer users.
this, love it
who asked?
@@wikkidize Believe it or not, in the real world human beings express their thoughts without your consent. That being said, it's impressive how time connects one another.
16:28 if you are having problem with using command "ls -la", make sure that you change your terminal into Bash first. To change your terminal,
1. Head to the upper right corner on terminal and press the drop-down menu.
2. Select "Git Bash" terminal.
3. Start using the command "ls -la" there.
omg thanks!!
Thank you so much!
Do I have to install Git from the link provided?
Git bash with Command Prompt is not working fo mr
@@CamaguNcoso Yes, u need to install it
🔥🔥🔥 thanks
What an amazing explanation, thank you so much for being so clear and concise!
A tip for new learners like myself: This video is slightly dated. GitHub now refers to the primary branch as "main" and not "master". If you try to run these commands exactly like Gwen in the video, you'll run into errors. Remember: main ✔️ master ❌
Thanks dude!
So now we have to remember to rename main to master every time we create a new respository.
@@UntakenNick 😂
i'm guessing political correctness is affecting this and master is now "racist."
@@domingorodriguez3077 Maybe? Who knows.
Gwen, your video is great! I love how everything is broken down into bite-size chunks. You have a wonderful gift of teaching. You've helped this beginner get closer to becoming a competent user of Git & GitHub.
Gwen articulated this topic so well and was able to break it down into simple terms for a newbie like me. She also explained everything very clearly, showcasing her intelligence in simplifying complicated concepts with ease. I am very grateful to have stumbled upon this video.
This tutorial is probably the best github tutorial any beginner online could make use of. The lecture was succinct and it passed the desired information to the viewers, not having to make things overly complicated, she explains it so well.
Totally agree 🎉
How long did it take you guys to learn the whole video?
I'm asking just because I want some comparison =)
@@developerninja619don’t compare with other people. Sometimes i take few hours to learn a 1 hour video sometimes i only have to watch it once. So if it tales long it does not matter as long as you learn something
Whole course was broken down into heading and sub-headings, spending time on important ones and you made sure the basics were clear to the students, viewers or learners like me. Thank You Gwen.
This is an excellent, detailed tutorial for Git and GitHub. It’s long, but easy to follow, not least because there is no distracting music, no annoying jingles or graphics and perhaps most helpful, the narration is measured and carefully modulated ... you quickly feel at home with the delivery, from someone who really knows their subject material.
It's the best Git / Github tutorial out there and that too at no cost to the learner.
Amazingly explained all important and, I believe, the most commonly used git commands / Github operations in such an easy to understand manner.
I feel so confident now in using git/github from earlier being a Zero in this space.
I'd spcially acknowledge the slow pace of Gwen's speaking while explaining all these concepts.
Wonderful job done, Gwen.
Thank a ton!!!!!
Gwen, your tutorial is absolutely excellent! I am so grateful for IT pros like you! You are very clear, thorough, detailed. I've always wanted to better understand Git & Github and I believe you are my answer to learn how to make use of these great tools. It's SO nice to have a non-judgmental pro who makes sense and doesn't teach as if most of us out here already know what the tool does and how we can benefit from it. Hopefully I can teach my friends in time. I've just become your newest subscriber, so many thanks and please keep up the excellent teaching. I'm excited and now engaged...I've just got to make time to learn it and learn it well.
Much respect.
- MS!
I don't usually leave comments for tutorials, but let me say, this one fit like a glove to my newbie needs. Thanks a lot!
I finally understand Git after this video. I’ve asked so many questions to friends and watched several “quick” UA-cam tutorials and was still confused about Git. Your tutorial was excellent and I’m glad I sat through the whole hour of it. It was completely worth my time. Thanks!
The best Git tutorial I’ve ever had. Straight to the point and clear explanations to the important features. Thank you so much
This was a highly comprehensive and helpful Git tutorial. It was definitely worth the full hour because unlike other shorter tutorials, it covered everything extensively (with appropriate examples too) thus helping me to properly understand the basic concepts and operations of Git as well as use cases, Thank you very much!
not really , a lot of explination is missing , i found this one much better : watch?v=ulQA5tjJark
How long did it take you to learn the whole video?
I'm asking just because I want some comparison =)
@@developerninja619
I watched it bit by bit across a little over a week (say 8 days). Mainly cause I wasn't too consistent, I repeated multiple parts to fully understand them and I did everything practically along with her on the video. Could definitely take you a much shorter time if you're consistent though.
@@mikeantonin7580 thanks for your reply. Btw how much time did you spend learning git daily?
This was much better than I expected it to be. Very "no fluff," clear, and bite sized. You can find these topics in many places (youtube, udemy, skillshare, etc) but most instructors can't seem to explain these topics plainly. You did exactly that, nice job. You covered the core concepts of branching, merging, PR's, conflict resolutions, and undoing changes in very easy to follow and digestible steps 👍
I can barely sit still for an episode of my tv series but I just sat through this whole video. Thank you for breaking everything down into bitesize pieces perfect for newbies to understand and digest. I love how you explain everything in great detail and also explained what those terms mean. As newbies, we've got lots of small questions that can make or break our full understanding of something so I thank you for paying attention to those small stuff.
You do not understand how much this video has helped me in using git as an upcoming developer. You are the best teacher i have ever seen on youtube! Thank you so much
My feedback: this was an incredibly helpful overview of how to use git. Thank you. I've been using it for over a year now but some of the commands I just ran because that's how I'd seen more senior devs do it. I really appreciated you explaining what some of the arguments mean (e.g. HEAD, origin, -u). I know there is a ton more that git can do but from my experience this will give people 90% of what they'll ever use git for.
The most complete tutorial for beginners I have seen on UA-cam so far! Thanks a lot!
Version control is definitely a crucial tool for developing software. Thank you for the education! ❤️
Just wanted to say, this helped me out a bunch. The terminology breakdown at the beginning was very appreciated as well as your well-paced explanation. Thanks for uploading this!
Absolute masterpiece of a Tutorial. I'm an electrical engineer working as a Data Analyst with Energy Data. I'm trying to shore up my programming credentials as a Data Scientist because I'm trying to change jobs and have failed a lot of interviews for not having enough knowledge on Git, so this guide is very welcome :D
she is the most fluent instructor that answered all my questions while i was watching... imma go to her channel and subscribe rn.
absolutely loved this video! as someone who was absolutely in the dark about how to use git and github, this crashcourse most definitely provided me with all the necessary information a beginner would need! thank you! :)
I have had a problem understanding this and actually stopped coding for years but your tutorial really helps me get back on track. Thank you, thank youu!
Thank you, this is really good stuff. 1 hour and I know everything I need to know to start my project. Concise and constructive, thanks a lot!
For beginners like me, who might be feeling lost with commands not working in the VS code terminal, all these commands will work on Git Bash since it can interpret all UNIX commands and git ones, on the top of it, it will track the edits you separately perform on VS code. So feel free and just git bash through this course.
Yeah I spent like 2 days tearing through all the documentation about SSH, GPG, PAT and what not... Git bash all the way...
Thank you,
Maybe some suggestions,
- add the changes of github defaulting to "main" instead of master and the configs on it.
- Setting up SSH keys(20:30) first must be earlier than the cloning through VS Code(14:30), so we can follow along
thanks
Thank you! I was hoping to find the comment about SSH cuz I was running into an error
Yeah, or you can do it through HTTPS without using SSH
I have been making mindless commits and PRs without realizing what they actually meant. This course fills so many gaps and answers most of my question regarding why we do a certain thing in Git.
Thanks a Lot!!
Best Github Tutorial so far! Hands down. Couldnt appreciate more that how she has considered detailing the tiniest of things about git and github.
This so far is the best (free) course that I've seen on Git and GitHub. Bravo Gwen!
Y’all are amazing! Pumping out this much needed content especially during these times.
Great pacing and easy to work alongside. Loved making all these commands work for the first time and having it all "click". Thank you!
This has to be the best introduction to git and GitHub I have seen to date (yes, I have tried watching a number of videos). Easy to follow and clearly explained. Finally understanding "git push origin main" (changed from master) was my favourite part. Thank you.
The first ever instructor that actually explains the meaning of each jargon! Thanks @Faraday Academy!
Agreed. Thank you for that. My co-workers who use git do not even know what these commands mean!
Gwen, once again you have created the exact video I needed. Thank you for the effort and commitment it takes to professionally produce these pieces. I have enjoyed many of your tutorials.
Hi buddy, I'm great that you are enjoy it. See, I stuck at SSH key part. Do you know why she type 'cd demo'? My local machine couldn't find it tho..
This video is amazing! I failed to understand Github for several years until I came across this video. Thanks!
I'm literally five minutes in and I can already tell that you put great detail into this video. Keep up the great work!
Really love this git and github intro course, it really touches a lot of things.
1. How to create a repo locally through the CLI(Command Line Interface) or directly from GITHUB
2. git flow by using the most common commands: git add - git commit and git push/git pull, all of them with their corresponding explanation. What "origin", "remote" and "master" mean.
3. git branching: all the commands involve in that kind of operation as well as best practices.
4. git merging: when we use a "feature" branch and it's time to merge to the "master" branch -- PR (Pull Request) on the Github side
5. How to deal with "conflicts" when merging.
6. Undoing in git: undoing from the stage area versus undoing if we have committed once or several times.
7. Understanding how and why we fork a repo on github.
Really awesome content, thank a lot for such a valuable content.
Как забрать. Деньги пришли
The default name of the initial branch is now called "main" not "master". So if anyone is haveing trouble at 25:50, you need to use "git push origin main" not "git push origin master"
I read this 3-4x and still did not put two and two together.
up
Looking at the branch you're working on (on the right of the path). In later versions of Git, the default branch was changed from main to master, so if you want to work with main branch, you can literally configure it locally (cuz the default on Github is still main :vv)
you are a life saver
thank you so much was wondering what this error was
This was an excellent video, can't thank you enough for sharing your knowledge in such a clear, concise and easy-to-follow way. I got a way clearer understanding of stuff I already work with and learned a lot of new stuff. Soo good, thanks again!
So helpful and well-explained. As a new coder, I'm in near disbelief that this is the setup process for what seems to be the tool used by every professional coder. That said I'm even more thankful you explained it so well.
I learned more that I expected. Thanks a million for such a complete course.
i'm a non native speaker of english, what i loved a lot here is your slow n steady way of illustrations, was a nice video .. thanks u so much
Really great video! The explanations are very clear and you don't move too slowly nor too quickly through the examples. Bravo!
At some point I thought I was dumb for not gasping the concept of git and GitHub because I’ve watched over 5 courses which were paid but I was getting even more frustrated. But here you are making it all clear, now I have the ahaaaaaaaaa moment. I’m in love with your teaching methods, they make sense to me and now I can rewatch those other courses. Thank you very much!!!
This was definitely one of the best git tutorials I have ever come across. Big Thanks Gwen!!!
Gwen has such a clear and pleasant voice and a perfect diction! Likewise, she has a very good teaching skills. Thanks, Gwen!
Much appreciated Gwen! This is one step on my long journey into programming, this was all very useful.
This has taught me all i needed to know about git which i was delaying for a long time. Thank you :)
Thank you for this course, it seems to be a great refresher. My only comment about the content is that at least at my end, the audio is really quiet in comparison to a lot of the other videos I look at. I'm not sure if this is deliberate.
As a beginner, I've understood a lot about git and GitHub that I was struggling with just by following along with this video. Thanks You
So as a self taught developer this has not been my first time looking into Git, but this the first time commands lines were explained even better which is good.
Most places I would only get commands and work from there not knowing how to and when to use them.
Gwen here, did a great job explaining and sharing the common usage and howwhen to. I am now confident to continue working and learning git.
Thanks greate content.
You did an amazing job, I don't collaborate on any projects and just used git for tracking changes over time, making my github page look busy, and project copypasta. But this reminded me how immensely useful git is; built a reference guide around your video Thank you!
Git has been a point of contention for me ever since I began learning how to code. You presented this material with so much clarity, I now feel far more confident about staging and committing branches as well dealing with merge conflicts! Thank you!!!
same I hate github
If you're a new to web development this is very important, precisely what I was looking for. thanks for this amazing content
Took me 5 days to completely learn your 1hour course but I repeated it over and over until I completely got it! Very useful, no nonsense and easy to understand. The only thing is, I think the location of SSH keys in the video got changed and placed after 'commit' and 'push' but it is necessary to set up before those steps. Took me a minute to figure that out. Thank you so much!
Wait, could you go into more detail about what you mean here, and what the precise code is that is changed?
I think I'm having the same issue. I can generate a public and private key, but when it comes time to opening the public key in order to copy it to github, it doesn't let me because I don't have permission.
Do we still need to do this step since we're using HTTPS
This is an excelent video!! Since git and github are very important tools when working with codes, I strongly reccomend every beginner to watch this video and learn about git and github in the beginning of the learning process. I had a problem with my computer, and lost some codes that I was working on for practice. If I've seen this video before, I wouldn't have this problem, since I would have added all my codes to githubs repositories. Thanks for all the help, Gwen!
Probably the best Git and GitHub crash course newcomers can have. Thanks a lot for a perfectly done job!
I am pretty new to Git and I liked your video very much. First I think that the explanations are super easy to understand and second I like that you are using command line and git hub to show the features.
I will now be searching for release management with Git, but you gave me already some nice ideas. Thank you
This was an incredible tutorial on Git! Very easy to follow and understand. Thank you
I 've watched a lot of Git tutorials, and this is for sure the best I've ever seen. Thanks !
Watch cs50 one
@@subhadipadhikary270 on UA-cam???
@@purohitsagar8899 Yes
@@subhadipadhikary270 I'm trying to save my time, so which one is the best tutorial? This or CS50?
@@marwindacallos4443 I have learnt from this this is good but the ssh key setup part is bit confusing so maybe just see another video to setup your ssh public and private key pair overall this vid is good enough
This was an amazing tutorial. I only knew of GitHub, but wasnt aware of the difference between Git Hub. As a beginning and aspiring developer, this was very informative. Thank you!
This really helped clarify the difference between the different workflows based on whether you start with a local repo or a repo that is on Github. Thanks so much!
thank you! I was looking for something like this. Good job Gwen!
I really learnt many things out of this video and I'm finally able to dive into version controls softwaare yeeeea!
Such an excellent teacher, I had many problems understanding Git and Git hub now I completely understand all that stuff.
Thanks Gwen. This is the best beginner tutorial I have come across for Git and GitHub. What makes it the best is that you don't assume that any bit of information is too trivial or unimportant to mention. I feel a lot more comfortable on the topic now. Thanks again!
I feel so relived; I'm finally learning this darn thing! Thank you for the tutorial. Thank you for taking the time to do this Gwen!
Edit: Upon reviewing the tutorial again, I'd like to say:
1. When creating a tutorial, you guys should _truly_ understand the importance of slowing down to the pace of the learner. In the beginning you walk us through a nice set of key terms (which was exceptional), then start mixing lots of advanced and beginner-level concepts together in your explanations, confusing the person that's watching the video. Slow down, explain like we're 5, that's why we're here.
2. To expand upon the issue of mixing things up I mentioned above, it's okay to keep a tutorial short, and add footnotes later if you think that the advanced concepts you're touching on are still worth being aware of. That way, the beginner can truly focus their attention on the basics, and then access the footnote only when they feel comfortable with the knowledge they've acquired thus far, making the content of your footnotes even more effective. After all, isn't good programming about being efficient?
I used to get annoyed at being expected to take additional English classes as a Computer Science student, but now I understand why. I spent 4 hours yesterday debugging a Terminal issue, only to later realize that there was an "issue" because the person who created the how-to GitHub document instructed the reader to paste this code into the Terminal command line:
*eval "$(ssh-agent exec -s)"*
They said to *paste* this command in the terminal (meaning: include the quotation marks). After 4 hours of learning about chmod, File Links, Groups, root directory, Inodes-things I knew NOTHING about prior to this, I resolved my problem by simply removing the quotation marks.
Now, the arrogant developer might say, "Well that's obvious". No it's not! The person said "paste", meaning I would:
- Select the piece of code
- Apply ctrl+c to it, for Windows (cmd+c on Mac)
- Go to the Terminal and apply ctrl+v/cmd+v
Either the tutorial should have been made like this:
*eval $(ssh-agent exec -s)* ,
or the person writing the document should I mentioned that the quotation marks need to be removed.
As Software Engineering becomes more collaborative, programmers can no longer get away with being asocial, and communication impaired, so this is an area a lot more engineers need to start being proficient in .
Glad someone said it
wow thank you
golden comment
"After 4 hours of learning about chmod, File Links, Groups, root directory, Inodes-things I knew NOTHING about prior to this, I resolved my problem by simply removing the quotation marks" i relate to this on a spiritual level, and stand alongside you in solidarity.
i hope one day you make tutorials too you seem like a cool guy
You guys are awesome, I was waiting for this video and here it is only in few days 🙏
Thanks - I forgot everything "git" in the last year and relearned it all plus more after watching this one hour video.
Great explanation of how to use and integrate Git and GitHub into your IDE. Scrolling through the timeline it seemed that I could skip some topics since they don't cover the exact information that I was actually looking for. Only to find out later that one by one, most if not all of my questions are answered in these topics. Pleasant surprise. Great work!
This was a great video to get familiar with the Git concepts in order to start working on it. Thanks Gwen
This is exactly what a beginner would need ..
a great course covered in so timely manner
Thank you 😊
At 21:43, One important note:: If you choose a new name instead of automatically generated location, you have to use that location name when adding configuration code to the [~/.ssh/config] file. Nice tutorial. Thank you.
Amazing tutorial, being a comp info systems student the only class I ever had that included GitHub only involved us uploading a Google Colab notebook to a GitHub repo a single time and from there every project I ever had just immediately assumed I knew how to use every corner of Git, so I'm only half way through this tutorial and it already feels like it has taught me so much.
Thank you very much! I learned a lot! I wish you'd add a git log after the last git reset that you did... but it's okay, I can always recreate the project and see how it looks. Thank you again for this tutorial! You are a good teacher!
OMG thank you so much for this video
This was right on time for me. Please keep the awesome videos coming I greatly appreciate them ❤
This was a great tutorial, exactly what I needed. I liked the way you boiled down so much content, and kept it understandable, without going down every rathole. I might have to go back to watch the merge/fork part, but this is all I need for now to get started. Thanks!
Thank you for the amazing tutorial! As a beginning dev, you've taught me a lifelong skill in just an hour!
This is Awesome! It felt great to go back to basics and refresh myself on Git with this video!
Amazing platform for ever...i didn't seen ever before..i'm always waiting this video
What a great lesson. Learnt a lot in just 1 hr. Great job. Thanks Gwen.
I'm branching into technical writing and this is an amazing class! Thank you!
You People are like a Blessing... Like Water in Dessert... You People are too Good for us. May the *Force* be with you🙋♂️😊🇮🇳
This tutorial is really amazing. It is highly recommended for beginners who want to learn different commands in git. Thank you very much to this wonderful video. Looking forward to another one.
ls - la command is not found
Showing in VSCode bro
How to fix
Thanks Gwen for one of the most clear explanations I have had in life. Was lost till I found this Video. Thanks!
This was a very insightful course into the fundamentals of GitHub for a newbie like me, so thank you! The bit that helped me a great deal was the brief workflow review clip at 30:26 that concisely went over the difference between Git flow and Git Hub flow. Once I understood that, the way Git works became less mystic and more understandable!
How is your github adventure going?
When I get my job in web development, you can be sure that I'm coming back to help you guys out.
did you find a job?
@@sarychewa I think hes still fighting with Aku
@@sarychewa ofc not when Indians and Iranians are doing the job fo £$5/hour because it costs them cheaper to live...
I love this tutorial.
It was exactly what I needed as a beginner to grasp the basics of Git & GitHub.
Thank you.
thank god I end up in video where all my question are answered. even the git for dummies book doesnt explain the jargons and i was confused. this is a really great tutorial.
This video was very helpful to me. It was also my first git video and I really got the concept. I don't know why, but while watching this video, I felt like a part of a community working together towards an end goal. Thank you very much!
When first opening the terminal in VS Code, on the terminal bar just change from "powershell" to "Git Bash" and then follow along
most clear and easy tutorial that we needed
Thanks a lot to you for bringing out this to us so simply and descriptively. I was facing a lot of problems in using the git and github ,after going through this video, now i have a complete idea of how to use all these features. It was truly an amazing explanation , Once again thanks a lot gwen 🤗🤗🤗🤗
u did a great job, the best git and GitHub tutorial on youtube I could find. really appreciate what this channel is doing ! Love all u guys
I am only 15 minutes into so far, and I have to say this is amazing tutorial, thank you!
No problem
This is top notch I must say. I rarely give comments, but by default I'm doing so now..