Kedasha: So you just created your first GitHub account. Now what? Well, it���s time to create your very first repository. Today, we���re diving into the heart of GitHub repositories. Whether you���re a developer, a writer, or just curious about version control, understanding repositories is your first step into the world of GitHub. I���m Kedasha and I���m so happy you���re here with me today. Welcome to GitHub for beginners. Today we���re chatting all about GitHub repositories. What they are, how you create one, their varying features, settings, and a lot more. I���m going to ask my good friend and colleague, Christina, to join me today on this one so we can chat all about repositories together. Hey, Christina. Christina: Hey, Kedasha. Thank you so much for having me on. I���m super excited to talk about repositories with you. Kedasha: Yeah. I���m so happy you���re here with me today. So, let���s get right into it and start from the very beginning. What is a repository? Christina: Great question. So, a repository, or a ���repo,��� is a fundamental element of GitHub. And actually of git, and it���s a space where project files live. And this allows for version control and collaboration. And so, you can think of a repo as a project folder that���s going to track changes, store history, and let multiple people work together at the same time. Kedasha: Oh, okay. Gotcha. So, a repo is essentially where I would store all the code for the projects that I work on. Christina: That���s exactly it. Kedasha: Nice. So, when I signed up for GitHub last month, I was taken to this very random page, but I���m not sure what to do next. I do see this big green button here, and I���m guessing I should click it to create a repository. So, do I just click this button right here? Christina: Yeah, that���s exactly it. So actually let���s go ahead and let���s go through this together. So, let���s create your first repository right now. So, when you click on that green button it���s going to take you to this new repository page. And then you���re going to enter in a repo name. And I���m just going to call this, ���first-repo���. And then I can give this a description. You can also select the owner��� in this case, this is going to be me. I can put in a description��� ���I���m the best.��� (laughs) And then you can choose if you want to be public or private. Do you want to be public or private? Kedasha: Public is the way. Christina: All right, let���s do that. And from here you���re going to want to initialize your project with a README file. And so a README is essentially a document that���s going to tell people what your project is about and why it���s useful. And so for now we���re just going to check this box. Okay, so we don���t need a .gitignore file for this project, but I will talk to you about that later. And, I���m going to go ahead and the MIT License from this list. And then once those are done, I���m going to click on the green ���Create repository��� button. And, voil��! You have just created your first repository on GitHub. Kedasha: Wow. That was actually kind of fun. Christina: Right? Kedasha: Creating a repository on GitHub seems pretty straightforward. As long as you understand what each button does... Christina: Yes. Kedasha: Okay, so now can you tell me more about licensing? How do I know which license to choose when creating my repo? And why did you choose the MIT license? I see that MIT license here on this tab on the repository page. What does it mean? Lots of questions. Christina: And these are great questions. we actually could have a whole episode just on licenses. If people want that, let us know. But a license is basically going to tell others what they can and can���t do with your source code. And so this is typically used to share code with others and we call that open source. And that means that based on the license that you���re choosing, anyone on the internet can take your code and use it. But how they can use it is going to be dependent on what license you use. So for example, the MIT license, which we chose, we created that, this is what���s known as a permissive license. And this provides code as-is. And it���s going to give anybody the ability to use your code and do almost anything they want with it, as long as they keep that license file in check. And as long as they don���t change that license. So, choosing the right license is essential for setting the terms under which others can use, modify, and share your projects. So, it���s really important to take the time to choose the right one. You can actually learn more about licenses and how to choose the right one by going to choosealicense.com. Kedasha: Nice. So, right now anything that I add to my public repo is up for grabs... Christina: Yeah. Kedasha: And anyone can use it. But how are they going to use it? Are they going to clone it to their machine? And when they add changes, will that change my original content? Christina: These are great questions. And so, that���s going to first bring me into the idea of forking our repo. So, many times when you contribute to an open source project, what you���re actually going to do first is you���re going to fork the repository, into your own system, make the changes, and then go from there. And so, forking is another way to create a repo, but this time you���re not starting from scratch. You���re going to be using preexisting code. Kedasha: Gotcha. So when I fork a repo, I���m pretty much saying, ���Thanks for doing all the hard work, now I���m going to build on top of it to create something that���s to my liking.��� Christina: That���s exactly it. That���s exactly it. And that���s honestly the beauty of GitHub and open source software. We have this notion of, standing on the shoulders of giants. Kedasha: Nice Christina: And this is why, again, it���s really important to choose the correct license so that others know the limitations of what they can do with your code, because most of the time it���s pretty straightforward, but there can be some some differences. So be careful on that. Kedasha: Gotcha. And you heard it here first folks. Make sure you visit choosealicense.com to learn all about licensing and which one to use for your particular project. Now Christina, can you tell me more about the .gitignore file? What is it and why is it important? Christina: Sure thing. So, that file is going to be used in certain projects. You don���t have to use it. But it���s one of those things that can make things a little bit cleaner. And basically, if you want git to ignore a certain file type, or not to track certain files in a repository, that���s where you use a .gitignore file. So for instance, on macOS, it defaults to��� folders include a hidden file type that is used by Finder to show thumbnails on the side. And so, every single folder will have this .DS_Store file. And there���s nothing wrong with that file. But you might not just want to have it included in your source code. So, file exclusion can sometimes be based on a language framework or what operating system you���re using or other technologies. One great tip is if you go to gitignore.io, you can actually use this to create .gitignore templates to set up for your project. So for instance, if I type in macOS, this can create a .gitignore file for me that will automatically make sure that those hidden files aren���t included to keep things clean. Kedasha: Gotcha, gotcha, gotcha. So, thanks for all the resources and for all those wonderful explanations. And I hope you���re finding this as helpful as I do. And if you have questions, be sure to drop them below in the comments. Now, Christina, let���s go back to the repository for a minute, because... What are all these tabs? I see Issues, I see Projects, Actions. What are these? Christina: Great question, great question. So GitHub repositories come packed with features to enhance collaboration and also do some project management stuff. And so, things like Issues��� this is where you could track bugs or tasks. Projects���this is where you could organize tasks in like a Kanban-style board. Pull requests��� this is where you���re going to be able to merge changes from different branches or forks. So, remember when we forked code before, if someone forked code and then wanted to submit a change, that could be submitted through a pull request. And Wikis��� this is where if you wanted to have some documentation, answers for frequently asked questions for your repository, you could do that there. Kedasha: Nice. And what about Settings? What���s the most important thing to know about Settings? Christina: So, I think probably the first thing you want to know about Settings is look at your collaborators and who has access to this. So, for instance, if I wanted to invite��� oh, I���m going to invite you... Kedasha: Oh, there I am. Christina: I���m going to invite you to be able to collaborate on my repository. I can do that. You can also use this to set up automation, like through GitHub Actions. And this is for continuous integration and continuous deployment. And then you have Security, which will basically help you configure security settings and access controls over who has access to your repositories. One of the other things you can do is you can enable or disable repository features. So for instance, I���m never going to use this Wiki tab. The syntax is really confusing. I���m not going to use it. So, I can just turn that off. Kedasha: Nice. Christina: And then it disappears. Now, I know there���s a whole lot more you can do in the repository settings. And these are all things you can learn in the GitHub Foundations Exam Certification. I highly recommend that you take the certification to learn about these features to maximize your usage of GitHub. We���ll be sure to leave a link below in the show notes for you to take a look at it. Before we wrap up, Christina, there���s one more question I wanted to ask you. Christina: Yes. Kedasha: So, what was your very first repository on GitHub? Christina: This is funny. I had to look this up. So, my very first repo was a collection of themes for what was, at the time, a very popular text editor called TextMate. And I���d collected a bunch of themes over the years, but it was kind of annoying to have to manually migrate them to every computer I could use. So, I put them on GitHub and the repository actually became fairly popular. So, yeah, that was my first repo. Kedasha: Awesome, that���s pretty cool. Christina: What about you? Kedasha: I think for me, when I was learning to code, I wanted to create a blog. And so, my very first repository was Lady-Minimal repository. The blog still isn���t created, so don���t even don���t even ask me about it. (laughs) But thanks so much for coming on the show today and chatting with me about repositories. It���s been so fun having you on. Christina: Thank you so much for having me. This is a blast!
Thanks very informative. I have a question about .gitinore. What are some of the files that I should include to the gitignore file when working on a django project collaboratively?Also what should not be included?
step 1. push button to create NEW repo and add name to repo
step 2. git init
step 3. git add .
step 4. git commit -m "feat: oh my god im gunna commit one"
step 5. git push -u master
step 6. git push origin master
=====
bill your first commit on invoice #1
💥
Great knowledge, thanks for that
And I think apache 2.0 could be the best one for patent protection! Because github contains a huge amount of codes in repos. so it necessary to keep your projects and codes safe for distribution and ethical use
Can you tell me how to get.
How to get to Sesame St.
Is this for real.
Children's presenters for adults?
Personal observation only.
Thank you.
Informative though condescending in the extreme.
Terry.
master limited partnership MLP oneok Magellan midstream partners MLP Harold Butler acquired by oneok single unit holders of us oil fund corp single unit holder BBL2.6MILLION BBL2.6m 361 253 4374 Tulsa Oklahoma box 871
master limited partnership MLP oneok Magellan midstream partners MLP Harold Butler acquired by oneok single unit holders of us oil fund corp single unit holder BBL2.6MILLION BBL2.6m 361 253 4374 Tulsa Oklahoma box 871
Senior Software Engineer | Full Stack & Backend Specialist | Polyglot (Elixir, PHP, Java, JavaScript/TypeScript, Go, Ruby) | Learning Gleam & Rust | Fintech and AI Enthusiast (It's a tool not a people replacer)
Tea Time Tech Tips #6 - On Debugging
When facing a stubborn bug, remember: sometimes, the best way forward is to step back and gain a fresh perspective. Take a break, clear your mind, and revisit the problem with renewed focus. Often, the answer lies in the details we overlook in haste.
New tutorial dropped! here's how you can create some lines to a character from some points, perfect for a tether effect check it out here https://lnkd.in/gxhPhkJY
Here's a clip from last night's session
'Improve your focus & memory simply with JSJ magic'
Did you miss it?
Would you like access to the recording and resources?
Send me a message and I'll add you to the list for replays.
Computer Scientist | Python | Javascript | HTML | CSS | Software Engineer | Book Lover| Love everything software development.
2moThanks very informative. I have a question about .gitinore. What are some of the files that I should include to the gitignore file when working on a django project collaboratively?Also what should not be included?