Intro to GitHub - Commits, Issues, Pull Requests, Releases, and more

Sdílet
Vložit
  • čas přidán 10. 04. 2022
  • If you work with software, you have probably heard of GitHub. In fact, you may have some code on GitHub. However, you might not know the ins and outs of working with GitHub. In this video, we are going to set up a repository on GitHub, add code to it, review commits, work with issues, create pull requests, create tags, generate releases, and more.
    Full Training Courses: IAmTimCorey.com
    GitHub Repo: github.com/TimCorey/IntroToGi...
    Mailing List: signup.iamtimcorey.com/

Komentáře • 132

  • @QuantumByt3s
    @QuantumByt3s Před 2 lety +4

    I swear. Last night I told myself I needed to learn github, added it to my list as a priority, and then your drop this😂

  • @amirh.jabari5401
    @amirh.jabari5401 Před 2 lety +8

    Uncle Tim, you exactly know what a developer needs to learn. Keep it going.♥

  • @SelmanErhanekici
    @SelmanErhanekici Před 2 lety +4

    You are doing a great job. The man who guides the new generation.

  • @georgekerwood9100
    @georgekerwood9100 Před rokem +13

    This one was super helpful to me, thanks Tim! Not too many likes and comments compared to your usual work, but please don't be discouraged from this kind of "meta tooling" stuff that's pivotal to development, I really apricate your work.

  • @DefriaManda
    @DefriaManda Před 2 lety +7

    Thank you Tim, your work is a ticket to anyone wanting to get into tech.

  • @Otonium
    @Otonium Před 2 lety +9

    Wonderful, more please. Github explained in Tim's way = great. Thank you!🙂

  • @ArtfulBenutzer
    @ArtfulBenutzer Před rokem +5

    This was a super useful intro to GitHub+Visual-Studio. Thanks a lot, Tim.

  • @dominicz82
    @dominicz82 Před rokem +2

    Thank you so much for putting this together. I’m an ex-TFS and VSS person and only started open-source contributions this years. Your demo is so helpful, thorough and well put together. 🙏
    I look forward to seeing what other content you have.

    • @IAmTimCorey
      @IAmTimCorey  Před rokem +1

      I'm glad you got so much value out of it.

  • @embossCoder
    @embossCoder Před rokem +1

    i really love this channel. keep it simple but informative for every step you do in your videos. thank you!

  • @rehan3517
    @rehan3517 Před 2 lety +4

    If there were a double like button, I would have clicked that as well... Really appreciate the effort... Looking forward to more videos related to GitHub specifically GitHub Actions...

    • @IAmTimCorey
      @IAmTimCorey  Před 2 lety

      Thank you!

    • @michelchaghoury9629
      @michelchaghoury9629 Před 2 lety

      @@IAmTimCorey it is really a great vid can you make an other more in depth CI/CD and devops with github actions pleaseee and keep going

  • @aaronhernandez1447
    @aaronhernandez1447 Před rokem +2

    Hello Tim, this is the best GitHub tutorial I have ever seen. Thank you so much for sharing this valuable information. I am looking forward to learning more.

  • @abhishekupadhyay6938
    @abhishekupadhyay6938 Před 2 lety +2

    Thank you Tim. Very informative and educational video. Must watch for all begginer.

  • @andreisolero192
    @andreisolero192 Před 2 lety

    I haven't watched it yet but this the tutorials that I need so I already like it, gonna watch it later, huge thanks for this!!!

  • @pravintml1517
    @pravintml1517 Před rokem

    Dear Tim,
    The best ever video i seen about GitHub.
    Highly appreciate you're time and effort on creating such a helpful content.
    Thanks a lot. ♥

  • @pauloperovic8475
    @pauloperovic8475 Před 2 lety +1

    My team doesn't want to even think about switching from tfvc, but i personally do, thank you Tim, great video as always.

  • @gordonsaxby5797
    @gordonsaxby5797 Před rokem

    For someone who has not really used GitHub before (only used SVN) it was a bit fast and hard to keep up with sometimes. However, it just meant I needed to pause & rewind a few times (I couldn't always see where you clicked, etc). Thanks for a great intro.

  • @abdulrahmannady6953
    @abdulrahmannady6953 Před 2 lety

    Waiting for full GitHub course with common GitHub flow and as always thank you for your wonderful way of teaching

  • @hcabrt
    @hcabrt Před rokem +1

    Thanks for this, great starting point!

  • @muhammadismaeel273
    @muhammadismaeel273 Před 2 lety +1

    Hi TimCoary,
    Thanks for giving us such great content.
    It help us a lots.
    Please upload more videos about GitHub that helps to work as Professional developer

  • @QDem19
    @QDem19 Před 2 lety +3

    Thank you.
    I would appreciate if you could explore some of the common GitHub automations.

  • @jayadeshchristo2345
    @jayadeshchristo2345 Před rokem

    Beautiful demo. Thank you so much.

  • @torrvic1156
    @torrvic1156 Před rokem

    Outstanding explanations! As a newbie I didn’t realised how powerful GitHub is and before knowing about how to use it I just did those shameful copying all of code to special folder and manually wrote notes about what I did.

    • @IAmTimCorey
      @IAmTimCorey  Před rokem +1

      I'm glad it was helpful. Don't feel bad about what you used to do. That's pretty common (I did it that way).

    • @torrvic1156
      @torrvic1156 Před rokem

      @@IAmTimCorey thank you for kind words Tim!

  • @lmanes
    @lmanes Před 2 lety +25

    hi Tim!! would be great if you could a simulate how a teamwork would be done. Things like workflow, opening branches, opening pull request to someone revise, comment, approve. How to get back an unapproved pull request, fix and then request again.. Your content is one of the best out there, I love it! Thank you!

    • @IAmTimCorey
      @IAmTimCorey  Před 2 lety +3

      Thanks for the suggestion. Please add it to the list on the suggestion site so others can vote on it as well: suggestions.iamtimcorey.com/

    • @federicodavia
      @federicodavia Před 2 lety +2

      Great suggestion!

    • @lmanes
      @lmanes Před 2 lety +4

      @@federicodavia thanks! I posted on the suggestion app! Would be nice if people that agree with me upvoted!

    • @IAmTimCorey
      @IAmTimCorey  Před 2 lety +2

      Since @Leandro Manes cannot post links, here is a link directly to the suggestion: suggestions.iamtimcorey.com/Details/625597780b6906f2d6876bfd

    • @pierreplourde
      @pierreplourde Před 2 lety +2

      @@lmanes I’ll go upvote it in the morning, for sure!

  • @maurotorres5675
    @maurotorres5675 Před rokem +1

    Fantastic Video. I wish there was a part 2 for Actions, Projects, and covering the typical scenario where your pull request is denied because you didnt meet coding standards or something where a Sr Developer enters notes for you as to why you was denied, and reverting back.

    • @IAmTimCorey
      @IAmTimCorey  Před rokem +1

      Thanks for the suggestion. Please add it to the list on the suggestion site so others can vote on it as well: suggestions.iamtimcorey.com/

  • @mbrotto1970
    @mbrotto1970 Před rokem

    thanks Tim...as usual great content.

    • @IAmTimCorey
      @IAmTimCorey  Před rokem

      You are welcome.

    • @mbrotto1970
      @mbrotto1970 Před rokem

      @@IAmTimCorey I'm enjoying your web dev master course by the way. You have really made a big impact on my development life. I guess I'll be doing many more of your courses over time...Thanks

  • @manuelgamezz
    @manuelgamezz Před 2 lety

    Thanks Tim, Other very good explained example of how to use a very important tool for all developers. Thanks for your content, I really appreciate. It will be really interesting one example of SQL project in Github like a Stored procedures, functions, views, etc.

  • @olgakhomyakova4760
    @olgakhomyakova4760 Před 2 lety

    This was great, thanks!

  • @markusbolkart7154
    @markusbolkart7154 Před rokem

    You sir.... are awesome !

  • @3rd_Century
    @3rd_Century Před 2 lety +4

    Hi Tim, Thank you for the this. Git can be overwhelming. Would it be possible to have a video showing how to rollback to previous version? Thanks again!

    • @IAmTimCorey
      @IAmTimCorey  Před 2 lety +1

      Thanks for the suggestion. Please add it to the list on the suggestion site so others can vote on it as well: suggestions.iamtimcorey.com/

  • @jayschwarz4365
    @jayschwarz4365 Před 7 měsíci

    After watching this, I decided to practice the basics. Not sure what I did, but VS would immediately crash as would VS Installer.
    On starting my Win VM, I got bunches of corrupted iCloud exe errors.
    So, I copied all my current work to One Drive and rebuilt the whole 500 Gb VM. It took Acronis about 12 hours, but all is good.
    Yesterday was a real pisser!!

    • @IAmTimCorey
      @IAmTimCorey  Před 7 měsíci +1

      Those are always frustrating days. Glad you made it through, though.

  • @psadecoy-jklol
    @psadecoy-jklol Před rokem

    Thank you for the walk through! As someone comparing GitHub to Bitbucket, I would be curious to know differences and if you prefer one over another. I've read that Bitbucket is geared more toward private repos vs. GitHub which favors public, but haven't really seen a lot on why that is.

  • @Greebstreebling
    @Greebstreebling Před 2 lety

    Hi Tim, it would be great to index this so it would be easy to goto sections of interest. Thanks for providing it - great stuff.

    • @IAmTimCorey
      @IAmTimCorey  Před 2 lety

      The CZcams chapters for my videos come from my viewers. I don't have the time to go back through them, but if a viewer provides the chapters, I will add them to the description so that everyone can benefit.

  • @TheBausahab
    @TheBausahab Před 2 lety

    Thank you sir...

  • @perviguana
    @perviguana Před rokem

    Tim, at 40:57 why did you use the command "git switch -c", instead on "git branch -b" like you taught in your Git tutorial video? Do they both create a branch and switch to it?

  • @Anthony-lh7tw
    @Anthony-lh7tw Před 11 měsíci

    Great video! One suggestion please change your github background to dark as well as any other windows you use in your course material. I have eye problems and it is very hard to see the windows, thanks. I really enjoy your content!

    • @IAmTimCorey
      @IAmTimCorey  Před 11 měsíci

      Thanks for the suggestion. It bugs me too. The only problem is that some sites don't have great dark modes. I'll test GitHub to see if it shows up well on video and, if so, I'll leave it in dark mode.

  • @pdharmendra
    @pdharmendra Před rokem +1

    This is the best video on GIT HUB, Got one question : In which situation do we have to merge our developing (Working) branch into Main ?? The other way round is from this video tutorial. Thanks in advance.

    • @IAmTimCorey
      @IAmTimCorey  Před rokem +1

      I did it in this video, but we merge into main when we have completed the work on the working branch (fixed the bug, added the feature, etc.) That is also what a pull request is - a request to merge changes into the main branch (or whatever branch you are targeting).

  • @hqcart1
    @hqcart1 Před 2 lety +2

    Hello tim,
    What if my project already exists locally and then I want to create it on GitHub and sync both? i could not find out how to do so.
    thank you

    • @IAmTimCorey
      @IAmTimCorey  Před 2 lety +1

      I cover that in my Git course, but you can either open a command prompt in the root of your directory, do a git init, and then set your GitHub repo as your upstream or you can clone your GitHub repo to an empty directory and then move your files over. The first option is a bit cleaner, but it means you cannot initialize your GitHub repo with a Readme or gitignore file. Otherwise, you will have two different starting locations for your main branch, which will be a problem that you need to resolve. It is possible, but easier if you avoid that issue by taking the second route.

    • @hqcart1
      @hqcart1 Před 2 lety

      @@IAmTimCorey Thank you!

  • @evrozah1
    @evrozah1 Před 2 lety

    Great !

  • @linalukusa5149
    @linalukusa5149 Před 2 lety

    Thank you for this video. Can you also do another one on unit testing?

    • @IAmTimCorey
      @IAmTimCorey  Před 2 lety

      Like this one? czcams.com/video/ub3P8c87cwk/video.html

  • @pierreplourde
    @pierreplourde Před 2 lety +1

    Great lecture/demo as always! One question: I’ve seen various views on whether your main (or master) branch should be your production branch, and use other branches for development, or whether your main branch should be a dev branch and have a designated production branch; what are your thoughts?

    • @IAmTimCorey
      @IAmTimCorey  Před 2 lety +2

      This is a preference, but I think it should be a rule: use main for your development branch. NEVER production. The reason why is that when you clone a repo, you are on the main branch by default. If you don't have the right rules in place, you could potentially update production with non-working/non-tested code.

    • @pierreplourde
      @pierreplourde Před 2 lety +3

      @@IAmTimCorey thanks, having that reasoning helps understand. When you do the GitHub Actions CI/CD video, please demo how to set up pushing the code from the main (dev) branch, to the production branch (via staging, I guess, if there is one), and how that flows into the CI/CD pipeline.

  • @itorres008
    @itorres008 Před 9 měsíci

    Whenever I've tried to create a project named the same as an already existing folder with files in it, Visual Studio presents objection message and doesn't create it. VS insists it has to create the folder.

  • @user-nw8oi9vn9y
    @user-nw8oi9vn9y Před rokem +1

    If I delete a file in Visual Studio and then commit and push, the file still exists in GitHub. Do I need to manually delete the file in both places? One person said that I need to stage before I commit. Is that true? I don't know what staging does. That seems like an unnecessary extra step between my VS code and the origin. If I just commit and then push, does it skip staging? So then staging is out of sync with everything else? When I do a pull from the origin, does it automatically update staging, the local repo, and my local code all at the same time?

    • @IAmTimCorey
      @IAmTimCorey  Před rokem +2

      Git has three states for changes - the working directory, staging, and a commit. When you make a change, that change happens in the working directory. Then, you stage the changes you want to commit. Finally, you take the staged changes and bundle them all into a commit. That commit is now a bundle that can be passed around to other copies of your repository (such as GitHub). Every time you commit, you are pulling the changes from stage. Now it sounds like you aren't staging any changes, which means you probably told the tooling to just stage all changes if you don't specify any. That only works in the UI, not on the command line. However, you are still staging your changes. It is just being done for you. The reason why we have the staging step is because you don't always want to commit all of your changes. You may want to commit only some of your changes in one commit and then the rest in a second commit. This allows you to keep your commits small and focused, which allows for easier rollback and a better understanding of what all is in a particular version (which is a set of commits).
      If you delete a file locally that is a part of your repository and you commit that change (including the deletion - it should be listed as a change) then when you commit your changes and push that commit to GitHub, the file on GitHub will go away. If that is not happening, something is not correct. It may be that you aren't actually staging the deletion or it may be that the file wasn't a part of your repository. Another possibility is that you updated your .gitignore file to not track that particular file (or type of file) and then you deleted it. It would delete locally but it would not track the deletion so it would not commit the change. Therefore, it would not delete it from GitHub. In that case, the easiest thing to do would be to delete it on GitHub, which creates a commit. Then pull that commit down.

    • @user-nw8oi9vn9y
      @user-nw8oi9vn9y Před rokem

      @@IAmTimCorey Awesome response. Thanks a million!

  • @troymitchel4790
    @troymitchel4790 Před 2 lety +1

    Hi Tim, how do you untrack and ignore the appsettings.json file on initial commit of project files? Working with an existing project and pushing from the Git tool out of Visual Studio.

    • @IAmTimCorey
      @IAmTimCorey  Před 2 lety

      I would recommend against doing this. There are other places to put the settings besides appsettings.json file in the case where you have some type of secrets to protect. If you don't include the appsettings.json file in your repository, you would need to manually add it every time you cloned the repository, or your app would not work. I have a whole course on how to properly use appsettings.json: www.iamtimcorey.com/p/net-core-appsettings-in-depth

    • @troymitchel4790
      @troymitchel4790 Před 2 lety

      @@IAmTimCorey Hey Tim, thanks for getting back with me on this topic. You have a valid point. I have to look into your course. Cheers.

    • @troymitchel4790
      @troymitchel4790 Před 2 lety

      @@IAmTimCorey Would you suggest appsettings.json course with your GIT course as well?

  • @namkha2000
    @namkha2000 Před 3 měsíci

    Is there a way to download a git branch to your local machine? The clone is not working because it downloads the main hub

    • @IAmTimCorey
      @IAmTimCorey  Před 3 měsíci

      There’s lots of ways. Here is an article on some of your options: www.freecodecamp.org/news/git-pull-remote-branch-how-to-fetch-remote-branches-in-git/

  • @andywalter7426
    @andywalter7426 Před 2 lety

    One thing I would love covered is Packages.
    Would be nice if it was even possible for github to post to nuget for nuget packages as well for class libraries.

  • @BijouBakson
    @BijouBakson Před 8 měsíci

    thk u

  • @jeromehaaland8660
    @jeromehaaland8660 Před 2 lety

    Hi Tim... Great Job as Usual :-)
    I get the following error message below when using "git clone" in PowerShell
    git : The term 'git' is not recognized as the name of a cmdlet, function, script file, or operable program.

    • @IAmTimCorey
      @IAmTimCorey  Před 2 lety +1

      It sounds like you don't have git installed on your machine. Go to git-scm.com and install it.

  • @adityarane2880
    @adityarane2880 Před 2 lety

    How to fork the project and merge some codes from both forks?

    • @IAmTimCorey
      @IAmTimCorey  Před 2 lety

      You make a pull request, which I covered.

  • @andywalter7426
    @andywalter7426 Před rokem

    What happens if somebody is permanently locked out of their account. What happened was I lost my old email address. Then when I tried to log in, it sent a security code to the old email address that I don't have anymore. Is there a way around it? If not, then that means all the github projects are suddenly gone.

    • @IAmTimCorey
      @IAmTimCorey  Před rokem

      You can try contacting support, but if you didn't include a backup email, there probably isn't much they can do.

  • @swordblaster2596
    @swordblaster2596 Před 2 lety +1

    What are the advantages of using github over running your own git server?

    • @IAmTimCorey
      @IAmTimCorey  Před 2 lety +2

      It is backed up and maintained by GitHub (instead of you). It includes Issues, Actions, Projects, Wiki, and more (those are all additional systems that you would need to purchase if you hosted git yourself). It is the most common place to host source code, which means potential hires will probably be familiar with it (there are tons of videos and blog posts explaining the GitHub setup - there are none explaining your custom setup). The list goes on.

    • @swordblaster2596
      @swordblaster2596 Před 2 lety +1

      All very valid I agree. Do you have any particular concerns about your source assets being on a third party server? Obviously everyone using github would have in place their own independent backup strategy. ;) I admit to having some residual ickiness about having my code "on the cloud, somewhere" where I don't have total control over it. But convenience can win me over.

  • @MilosZarifovic
    @MilosZarifovic Před rokem

    @08:52 I don't have that option, what do I do?

    • @IAmTimCorey
      @IAmTimCorey  Před rokem

      Then open up a Terminal window by loading Terminal (or command prompt or PowerShell or Bash) and changing the directory to be the directory you are working with.

  • @adityarane2880
    @adityarane2880 Před 2 lety

    Use fork or branch for multiple developers contributing?

    • @IAmTimCorey
      @IAmTimCorey  Před 2 lety +2

      Branches. Forks are for contributing to someone else’s repo.

  • @flogginga_dead_horse4022
    @flogginga_dead_horse4022 Před 2 lety +1

    It never let's you create a folder that already exists especially if it already has git setup on that folder...

    • @IAmTimCorey
      @IAmTimCorey  Před 2 lety

      You can initialize an existing folder using "git init". However, if you are trying to connect an existing local git repo to a GitHub repo, you would do "git remote add origin ". The only tricky bit will be if you initialized the GitHub repo with a Readme and/or .gitignore file. If so, you will have commits on the GitHub side and commits locally and they don't have a common history. In that case, the easiest thing is to start over on GitHub and don't create those files so you don't have a commit on the server. If you absolutely need to keep both, you would probably need to merge the two doing "--allow-unrelated-histories", but that's not ideal.

    • @pierreplourde
      @pierreplourde Před 2 lety

      @@IAmTimCorey I think he meant in VS. I’ve seen that same error pop up before, even when the Project and Solution name were different, when trying to create a new solution in a folder that exists, and that was with VS2019 and the older templates that didn’t create a separate folder with the solution name inside the solution folder.

  • @andywalter7426
    @andywalter7426 Před rokem +1

    The strange thing is the command line for git does not work with windows 11. The only way I was able to get this to work is I had to use the feature to do through visual studio. Not sure why but somehow visual studio always magically works with github but if somebody tries without visual studio, it says does not even recognize the git command. I think its possible they want you to use visual studio for git stuff for now on. Should just work on a freshly installed windows 11 computer.

    • @IAmTimCorey
      @IAmTimCorey  Před rokem +3

      In order for git to work on a fresh installation of Windows 11, you need to install Git. Visual Studio installs some things for git, but if you want everything, you need to actually install git from www.git-scm.com I can verify that it works just fine on Windows 11.

    • @daniellukov
      @daniellukov Před rokem

      @@IAmTimCorey thanks

  • @henriquepalomo2653
    @henriquepalomo2653 Před 2 lety +1

    I'm still on minute 6, but I have a suggestion (it's more like a preference though), I think it's nice to see your face while you go through the explanation, like the streamers do when they are playing you know? So your face would be on a small window at the right bottom corner, for example. I don't know why but it keeps me focused when I see a video on CZcams like this.
    Good job, let me go back to the video :)

    • @IAmTimCorey
      @IAmTimCorey  Před 2 lety

      Thanks for the suggestion.

    • @maurotorres5675
      @maurotorres5675 Před rokem +1

      @@IAmTimCorey I just wanted to add my opinion. I think your videos are perfect they way they are. I really dont see the point of adding your face unless someone reads lips. To me it would just be distracting plus it might block something on the screen I need to see.

    • @torrvic1156
      @torrvic1156 Před rokem

      Tim doing things absolutely right and camera will be just a distracting factor. He is not a streamer. He is a tutor and he is great at it.

  • @christophem6373
    @christophem6373 Před 2 lety

    Could you chapterize please ?

    • @IAmTimCorey
      @IAmTimCorey  Před 2 lety +1

      Chapters come from my viewers. I don't have the time to go back through and add chapters, but if you would like to suggestion chapters, I will add them to the description.

  • @demps1bm1
    @demps1bm1 Před 8 měsíci

    GIT has a lot of problems.

    • @IAmTimCorey
      @IAmTimCorey  Před 8 měsíci

      Every piece of software has a lot of problems. If you evaluate software based upon if it has problems, you will never be able to use any software. You need to evaluate it in comparison to your other options. Right now, git is the most complete, most powerful, and most adopted source control on the planet. It would take a tremendous effort to change that.

    • @demps1bm1
      @demps1bm1 Před 8 měsíci

      ​@@IAmTimCorey I have worked with PanValet, Livrarian (ADR), and Vault. The thing about GITHUB is that it is built on GIT. Sometimes, especially with merge resolution, you need the ability to run GIT console commands. Most of the time I can fix these in GITHUB, but not always, and I do not have access to the GIT console commands on the GIT repository at work. I did appreciate your video -- it is an intro, as you state, but I have never used GIt to track and assign issues or to create releases. So I learned something valuable. Thanks for the video.
      GIT is a big area, harder in many ways than learning C#. A more advanced video on trouble shooting merge conflicts would be helpful.

    • @IAmTimCorey
      @IAmTimCorey  Před 8 měsíci

      I do have a video on Git itself: czcams.com/video/ugN-IYV1NTM/video.htmlsi=D86SXAzZseP7XqZp
      Also, you can get a console command by hitting the period key when on any GitHub repository. That will open up VS Code on the web for you.

    • @demps1bm1
      @demps1bm1 Před 8 měsíci

      @@IAmTimCorey Thanks for your response. Very kind of you. I tried the period but I still could not get the GIT console commands to work. I talked to the manager and he said those console commands are locked down.
      However, I was able to solve my problem. I had caused the problem by changing some class names by capitalizing the first character in an old application I was fixing up. This caused confusion in GIT as it thought there were twice as many distinct classes classes and tried to apply all updates to both the real classes and the fictitious classes differing by the capitalized first character. So I created all new classes with much better names, copied my code to the new classes and renamed the classes. (I had dependency injection on every class which made changing class names super easy.) Then I deleted all of the old classes and files -- I had to sync everything in VS. Then I republished the whole project to a different GIT repository and had the manager delete the first GIT repository. I lost some history, but in this case I don't really need it.
      My point is that GITHUB has problems, and it is more difficult than Vault, VSS, and others in some ways. But you are right -- it does work, and one can develop expertise in it if one is persistent and learns to solve issues with it. I've been confused by it a few times but fortunately never stumped.
      I love your videos. You are very kind to try to help others.

  • @hanjarake_taro
    @hanjarake_taro Před 2 lety

    The reasons why you must NOT use github:
    - Command line interface which is not intuitive except for people who haven't used graphical user interface
    - Weird naming just to make it look something special and smart but it's not, and just confusing (e.g. repository, local, remote, branch, push, pull, merge, pull request)
    - You cannot delete what you want to delete, which constantly makes your log messy and gets you confused

    • @IAmTimCorey
      @IAmTimCorey  Před 2 lety +4

      I understand your frustrations (I've felt them before as well), but they are misplaced. Let me explain. First, GitHub is not Git. The two are different things. GitHub uses Git. A close analogy would be that GitHub is like a garage and Git is the cars. Next, the command line is something you need to learn before you start using it. Trying to dive into it (or trying to use a GUI version) without understanding what Git is and what it does is a recipe for disaster. You say that the naming is "weird", but once you actually understand what Git is and what it does, the naming actually makes a lot of sense. For example, "repository" isn't a Git-specific word. The word repository means "a place where things are deposited". Since they needed a word for the place where you store your source code, repository (often shortened to repo) makes sense. "Local" means the repository on your machine (local to you). "Remote" means the repository away from you (not on your machine). Again, these are English words that are used appropriately. "Push" is when you send code from your local repo to your remote repo. "Pull" is the opposite - you are bringing code from your remote to your local. Again, these are English terms that are used outside of software development in the exact same way. Even doors are marked "Push" and "Pull". "Merge" means you have two different versions of your code and you want to combine them into one. "Pull Request" is probably the most complex to think about, but it also is extremely clear. When you make changes in your copy of a repo, and you want to put your changes into a version of the repo that you do not control (and have no permissions to), you bundle up your changes. You then go to the other repo and say "Hey, I have changes that I think you want. Can you put them into your repo?" You are asking the owner of the remote repo to pull your changes from your repo to their repo.
      You can delete whatever you want to delete in Git. It is as easy as saying "I'm deleting this" and committing that change. However, it sounds like you want to delete it in a way where it cannot be recovered or viewed. The problem there is that Git is not just about the code as it is today. It contains the complete history of the changes to your code. That's the point. Otherwise, you just need a file server. So if you want to delete the file and also erase all history that the file exists, you need to do more work. That should make sense. In terms of people, you aren't saying that a person died, you are saying that there should be no evidence that the person ever lived.
      I would recommend that you actually learn Git before judging it. You obviously don't have a lot of training in it, which makes judgements almost impossible to make. Learn it well, understand it, and use it a lot. Then see what you think. There is a reason why Git is the #1 source control on the planet and why GitHub is the most popular place to host Git repos.

    • @torrvic1156
      @torrvic1156 Před rokem

      @@IAmTimCorey what a brilliant explanation! For me also that was very important to understand those things as a non-native English speaker.