
{"id":11814,"date":"2022-01-04T19:33:23","date_gmt":"2022-01-04T18:33:23","guid":{"rendered":"https:\/\/careerfoundry.inbearbeitung.de\/en\/?p=11814"},"modified":"2022-11-30T17:53:39","modified_gmt":"2022-11-30T16:53:39","slug":"git-vs-github","status":"publish","type":"post","link":"https:\/\/careerfoundry.inbearbeitung.de\/en\/blog\/web-development\/git-vs-github\/","title":{"rendered":"Our Beginner's Guide to Git vs GitHub: What\u2019s the Difference?"},"content":{"rendered":"<p><strong>For those entering into the world of coding, prepare for a lot of similar-sounding but different terms. Java vs JavaScript, C# vs C, Git vs GitHub\u2026the list goes on.<\/strong><\/p>\n<p>While we&#8217;re not going to cover all of these terms today, with this guide you&#8217;ll emerge clear on what the last pair are and how to use them.<\/p>\n<p>We&#8217;re first going to explore what web development is about, before looking at the version control system Git. Next, we&#8217;ll go into what the similar-sounding GitHub is and how you use it, before comparing the two.<\/p>\n<p>Lastly, we&#8217;ll explain how you can use Git without GitHub, and the potential pitfalls of doing so.<\/p>\n<p><span style=\"font-weight: 400;\">If you\u2019d like to jump ahead to a particular section, simply use the clickable menu:\u00a0<\/span><\/p>\n<ol>\n<li style=\"font-weight: 400;\" aria-level=\"1\"><a href=\"#what-is-web-development\">What is web development?<\/a><\/li>\n<li style=\"font-weight: 400;\" aria-level=\"1\"><a href=\"#what-is-git\">What is Git?<\/a><\/li>\n<li style=\"font-weight: 400;\" aria-level=\"1\"><a href=\"#what-is-github\">What is GitHub?<\/a><\/li>\n<li style=\"font-weight: 400;\" aria-level=\"1\"><a href=\"#differences-between-git-vs-github\">Differences between Git vs GitHub<\/a><\/li>\n<li style=\"font-weight: 400;\" aria-level=\"1\"><a href=\"#can-i-use-git-without-using-github\">Can I use Git without using GitHub?<\/a><\/li>\n<li style=\"font-weight: 400;\" aria-level=\"1\"><a href=\"#final-thoughts\">Final thoughts<\/a><\/li>\n<\/ol>\n<h2 id=\"what-is-web-development\"><span style=\"font-weight: 400;\">1. What is web development?<\/span><\/h2>\n<p><span style=\"font-weight: 400;\">Take a look at anything you can view in an internet browser. All these websites are the result of web development. <\/span><\/p>\n<p><span style=\"font-weight: 400;\">There are three major categories of web development: Frontend, backend, and full-stack.<\/span><\/p>\n<p><span style=\"font-weight: 400;\">Frontend development includes everything you see on the screen and interact with. Backend web development involves storing and manipulating data by communicating with a database\u2014the part of the application not directly accessed by the user. <a href=\"https:\/\/careerfoundry.inbearbeitung.de\/en\/blog\/web-development\/what-is-a-full-stack-web-developer\/\">Full-stack web development<\/a> includes both frontend and backend development tasks.<\/span><\/p>\n<p><span style=\"font-weight: 400;\">Let\u2019s look at an example. Say you are looking for a pair of red pants on a store\u2019s website. You decide to search \u201cred pants\u201d in the search bar. The design of the search input and how it looks is frontend web development. Taking a search query and returning the relevant clothing items is the role of backend web development.<\/span><\/p>\n<p>Want to learn more? Our <a href=\"https:\/\/careerfoundry.inbearbeitung.de\/en\/blog\/web-development\/what-is-web-development\/\" target=\"_blank\" rel=\"noopener\">web development overview article<\/a> will fill you in on the whole area and what it takes to get into it.<\/p>\n<p>If you&#8217;re interested in learning frontend development, getting started is much easier than you think. Our <a href=\"https:\/\/careerfoundry.inbearbeitung.de\/en\/short-courses\/become-a-web-developer\/\">free coding short course<\/a> will have you building and styling your own website in just five days.<\/p>\n<h2 id=\"what-is-git\"><span style=\"font-weight: 400;\">2. What is Git?<\/span><\/h2>\n<p><span style=\"font-weight: 400;\">If you\u2019re looking for a job as a software or web developer, Git is a tool you will work with daily. So what is Git? In short, Git allows developers to track changes to the files in their projects and work together.<\/span><\/p>\n<p><span style=\"font-weight: 400;\">Say you were working on some code and saved changes that caused a bug in your project. You don\u2019t remember what the old code looked like to change it back. Oops\u2014what do you do now?<\/span><\/p>\n<p><span style=\"font-weight: 400;\">Enter <a href=\"https:\/\/git-scm.com\/\" target=\"_blank\" rel=\"noopener\">Git<\/a>, your version control system. Git works in the background to record the changes in a special database called a repository. Here you can see who has made what changes, when, and why. <\/span><\/p>\n<p><span style=\"font-weight: 400;\">Using Git, you <\/span><b>push<\/b><span style=\"font-weight: 400;\"> your changes to the repository via a <\/span><b>commit<\/b><span style=\"font-weight: 400;\">. You can also <\/span><b>revert<\/b><span style=\"font-weight: 400;\"> a commit to go back to a previous version of the code. Git saves the day! Learn more about how to do this in <a href=\"https:\/\/careerfoundry.inbearbeitung.de\/en\/blog\/web-development\/git-commit-command\/\" target=\"_blank\" rel=\"noopener\">my beginner&#8217;s guide to the git commit command<\/a>.<\/span><\/p>\n<p><span style=\"font-weight: 400;\">Git is free, open-source, super fast, and scalable. It\u2019s not the only version control system out there, though it is the most popular one. Let\u2019s talk about why. What makes Git so great, and how does it compare to other version control systems?<\/span><\/p>\n<p><span style=\"font-weight: 400;\">Version control systems come in two categories: <\/span><b>centralized <\/b><span style=\"font-weight: 400;\">and <\/span><b>distributed<\/b><span style=\"font-weight: 400;\">.<\/span><\/p>\n<h3><span style=\"font-weight: 400;\">Centralized version control systems<\/span><\/h3>\n<p><span style=\"font-weight: 400;\">In a centralized system, all team members connect to one server to see and work with the latest copy of the code. A significant pro to centralized systems is they are easy to learn. Yet, if the server is down, it means nobody can see or work with the code.<\/span><\/p>\n<h3><span style=\"font-weight: 400;\">Distributed version control systems<\/span><\/h3>\n<p><span style=\"font-weight: 400;\">With a distributed system, each team member stores a copy of the project on their local machine. If the server goes down, users can still collaborate with colleagues and work offline. Git is a distributed system.<\/span><\/p>\n<p><span style=\"font-weight: 400;\">While this means Git has a steeper learning curve to start, it keeps the code secure. Most importantly, it does not have a single point of failure like centralized systems do.<\/span><\/p>\n<p><span style=\"font-weight: 400;\">You can learn more in our <\/span><a href=\"https:\/\/careerfoundry.inbearbeitung.de\/en\/blog\/web-development\/whats-version-control-and-why-do-i-need-it\/\"><span style=\"font-weight: 400;\">complete guide to version control systems<\/span><\/a><span style=\"font-weight: 400;\">.<\/span><\/p>\n<h2 id=\"what-is-github\"><span style=\"font-weight: 400;\">3. What is GitHub?<\/span><\/h2>\n<p><span style=\"font-weight: 400;\">GitHub is a company that allows users to host their coding projects. <\/span><\/p>\n<p><span style=\"font-weight: 400;\">To use GitHub, you need to <\/span><a href=\"https:\/\/github.com\/\" target=\"_blank\" rel=\"noopener\">sign up on their website<\/a> and make an account. Anyone can sign up and host a public code repository for free on GitHub. This makes it very popular for open-source projects. Companies or projects can also pay for extra features and security offered by GitHub.<\/p>\n<p><span style=\"font-weight: 400;\">GitHub provides many tools on top of hosting coding projects. These tools make the development process easier and more secure within a company or team. Two major GitHub features you\u2019ll use as a developer are <\/span><b>pull requests<\/b><span style=\"font-weight: 400;\"> and <\/span><b>code reviews<\/b><span style=\"font-weight: 400;\">.<\/span><\/p>\n<p><span style=\"font-weight: 400;\">Pull requests are a way to submit your code to the main codebase. When you finish working on a feature, you will open a pull request, like making a draft of your code visible. Your colleagues can then proofread and\/or test your code, called a code review. It&#8217;s common that a project or company requires a code review before allowing someone to merge their new code.<\/span><\/p>\n<p><span style=\"font-weight: 400;\">During a code review, your colleagues can look at your code to make sure it\u2019s safe and efficient before it gets merged into the repository. <\/span><\/p>\n<p><span style=\"font-weight: 400;\">A <\/span><b>repository<\/b><span style=\"font-weight: 400;\">, or &#8220;repo&#8221;, is the location where a company stores all the files and code for a particular project. This helps prevent bugs in the web application, and provides a backup so code will never be lost.<\/span><\/p>\n<p><span style=\"font-weight: 400;\">You can learn more in our closer look at <\/span><a href=\"https:\/\/careerfoundry.inbearbeitung.de\/en\/blog\/web-development\/what-is-github\/\"><span style=\"font-weight: 400;\">what GitHub is<\/span><\/a><span style=\"font-weight: 400;\">.<\/span><\/p>\n<h2 id=\"differences-between-git-vs-github\"><span style=\"font-weight: 400;\">4. Differences between Git vs GitHub<\/span><\/h2>\n<p><span style=\"font-weight: 400;\">If Git is the system keeping track of changes and versions of your project, GitHub is the home to that system. <\/span><\/p>\n<p><span style=\"font-weight: 400;\">Github is a web application that hosts Git. It\u2019s an online database where you can share your Git version-controlled projects. This collaboration happens with others in the cloud, outside of your local computer.<\/span><\/p>\n<p><span style=\"font-weight: 400;\">Both Git and GitHub give developers useful version-control tools. Developers can build out their projects without worrying about messing things up. GitHub adds more functionality on top of this. For example, a place to store the projects in the cloud and more tools to better collaborate. <\/span><\/p>\n<p><span style=\"font-weight: 400;\">Three major tools are <\/span><b>pull requests<\/b><span style=\"font-weight: 400;\">, <\/span><b>issues<\/b><span style=\"font-weight: 400;\"> and <\/span><b>code reviews<\/b><span style=\"font-weight: 400;\">.<\/span><\/p>\n<h3><span style=\"font-weight: 400;\">GitHub as a social network<\/span><\/h3>\n<p><span style=\"font-weight: 400;\">The social networking aspect of GitHub is another powerful feature. Each user on GitHub has their own profile that shows the projects to which they contribute and how often. If the projects are public, the code they contributed is also visible.<\/span><\/p>\n<p><span style=\"font-weight: 400;\">This makes GitHub an important tool during any web development job search. Looking at someone\u2019s GitHub profile, you get an idea of them as a developer. How long they\u2019ve been coding, what kind of projects they\u2019ve worked on, and what it might be like to work with their code.<\/span><\/p>\n<p><span style=\"font-weight: 400;\">You can also submit a GitHub issue to an existing project. This might be a bug, feature request or a question. Here a discussion on the issue gets organized, details sorted out and prioritized.<\/span><\/p>\n<h3><span style=\"font-weight: 400;\">Forking<\/span><\/h3>\n<p><span style=\"font-weight: 400;\">See an open-source project you think you can improve or use as a basis for another project? <\/span><\/p>\n<p><span style=\"font-weight: 400;\">Another GitHub tool useful to you is <\/span><b>forking<\/b><span style=\"font-weight: 400;\">. When you \u201cfork\u201d a repository, you make a copy of the entire thing to your own GitHub account. You can then build on top of it, improve and\/or customize to your liking.<\/span><\/p>\n<p><span style=\"font-weight: 400;\">For example, let\u2019s say you want to make a forum for your favorite fandom. Find an existing forum project on GitHub, fork it, and customize it to your liking. Add the colors, images and style of your fandom, for example.<\/span><\/p>\n<p><span style=\"font-weight: 400;\">Have an idea for a cool feature? Write the code to expand the existing project and add what you think your users would appreciate. Notice a bug? Go ahead and fix any inconveniences you found in the original project.<\/span><\/p>\n<h2 id=\"can-i-use-git-without-using-github\"><span style=\"font-weight: 400;\">5. Can I use Git without using GitHub?<\/span><\/h2>\n<p><span style=\"font-weight: 400;\">Yes, Git is independent of GitHub. You can still maintain local version control without GitHub. This means tracking different versions of the code and project history.<\/span><\/p>\n<p><span style=\"font-weight: 400;\">If you\u2019re only using Git locally on your computer, keep in mind your project is not saved to any server. This means no saved backups if something goes wrong with your device. It also makes it difficult to share and collaborate with others on the project.<\/span><\/p>\n<h2 id=\"final-thoughts\"><span style=\"font-weight: 400;\">6. Final thoughts<\/span><\/h2>\n<p><span style=\"font-weight: 400;\">Git and GitHub are two terms you will see a lot in web development. Whether you work as a frontend, backend, or full-stack developer, they will be an integral part of your flow.<\/span><\/p>\n<p><span style=\"font-weight: 400;\">The terms might seem overwhelming at first. Pull request, merge, push, review, fork, repository\u2014what do they even mean?! Don&#8217;t worry, you will quickly get used to the jargon and learn to appreciate these services.<\/span><\/p>\n<p><span style=\"font-weight: 400;\">Not only do you learn by reviewing your colleagues\u2019 code, you also gain the ability to undo almost anything. The peace of mind to know you won&#8217;t ruin your employer&#8217;s product with an ill-thought out piece of code? Priceless.<\/span><\/p>\n<p>If you&#8217;d like to learn more about the world of web development, check out these articles:<\/p>\n<ul>\n<li><a href=\"https:\/\/careerfoundry.inbearbeitung.de\/en\/blog\/web-development\/what-is-a-hackathon\/\">What is a Hackathon?<\/a><\/li>\n<li><a href=\"https:\/\/careerfoundry.inbearbeitung.de\/en\/blog\/web-development\/50-web-development-buzzwords-that-all-new-programmers-should-learn\/\">50 Web Development Buzzwords All New Coders Should Learn<\/a><\/li>\n<li><a href=\"https:\/\/careerfoundry.inbearbeitung.de\/en\/blog\/web-development\/easiest-programming-languages\/\">What&#8217;s the Easiest Programming Language to Learn?<\/a><\/li>\n<\/ul>\n","protected":false},"excerpt":{"rendered":"<p>Do coders just enjoy making life complicated for newbies? Java vs JavaScript, C vs C#, Git vs Github&#8230;luckily, this guide explains the last one to you.<\/p>\n","protected":false},"author":134,"featured_media":11832,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"_acf_changed":false,"_lmt_disableupdate":"yes","_lmt_disable":"","footnotes":""},"categories":[5],"tags":[],"class_list":["post-11814","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-web-development"],"acf":{"homepage_category_featured":false},"modified_by":"Matthew Deery","_links":{"self":[{"href":"https:\/\/careerfoundry.inbearbeitung.de\/en\/wp-json\/wp\/v2\/posts\/11814","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/careerfoundry.inbearbeitung.de\/en\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/careerfoundry.inbearbeitung.de\/en\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/careerfoundry.inbearbeitung.de\/en\/wp-json\/wp\/v2\/users\/134"}],"replies":[{"embeddable":true,"href":"https:\/\/careerfoundry.inbearbeitung.de\/en\/wp-json\/wp\/v2\/comments?post=11814"}],"version-history":[{"count":2,"href":"https:\/\/careerfoundry.inbearbeitung.de\/en\/wp-json\/wp\/v2\/posts\/11814\/revisions"}],"predecessor-version":[{"id":29961,"href":"https:\/\/careerfoundry.inbearbeitung.de\/en\/wp-json\/wp\/v2\/posts\/11814\/revisions\/29961"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/careerfoundry.inbearbeitung.de\/en\/wp-json\/wp\/v2\/media\/11832"}],"wp:attachment":[{"href":"https:\/\/careerfoundry.inbearbeitung.de\/en\/wp-json\/wp\/v2\/media?parent=11814"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/careerfoundry.inbearbeitung.de\/en\/wp-json\/wp\/v2\/categories?post=11814"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/careerfoundry.inbearbeitung.de\/en\/wp-json\/wp\/v2\/tags?post=11814"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}