Getting Started with GitHub
github-learning-lab opened this issue ยท comments
๐ Welcome to GitHub Learning Lab's "Introduction to GitHub"
To get started, Iโll guide you through some important first steps in coding and collaborating on GitHub.
๐ This arrow means you can expand the window! Click on them throughout the course to find more information.
What is GitHub?
What is GitHub?
I'm glad you asked! Many people come to GitHub because they want to contribute to open source ๐ projects, or they're invited by teammates or classmates who use it for their projects. Why do people use GitHub for these projects?
At its heart, GitHub is a collaboration platform.
From software to legal documents, you can count on GitHub to help you do your best work with the collaboration and security tools your team needs. With GitHub, you can keep projects completely private, invite the world to collaborate, and streamline every step of your project.
GitHub is also a powerful version control tool.
GitHub uses Git ๐, the most popular open source version control software, to track every contribution and contributor ๐ to your project--so you know exactly where every line of code came from.
GitHub helps people do much more.
GitHub is used to build some of the most advanced technologies in the world. Whether you're visualizing data or building a new game, there's a whole community and set of tools on GitHub that can get you to the next step. This course starts with the basics, but we'll dig into the rest later!
Exploring a GitHub repository
Exploring a GitHub repository
๐บ Video: Exploring a repository
More features
The video covered some of the most commonly-used features. Here are a few other items you can find in GitHub repositories:
- Project boards: Create Kanban-style task tracking board within GitHub
- Wiki: Create and store relevant project documentation
- Insights: View a drop-down menu that contains links to analytics tools for your repository including:
- Pulse: Find information about the work that has been completed and the work thatโs in-progress in this project dashboard
- Graphs: Graphs provide a more granular view of the repository activity including who contributed to the repository, who forked it, and when they completed the work
Special Files
In the video you learned about a special file called the README.md. Here are a few other special files you can add to your repositories:
- CONTRIBUTING.md: The
CONTRIBUTING.md
is used to describe the process for contributing to the repository. A link to theCONTRIBUTING.md
file is shown anytime someone creates a new issue or pull request. - ISSUE_TEMPLATE.md: The
ISSUE_TEMPLATE.md
is another file you can use to pre-populate the body of an issue. For example, if you always need the same types of information for bug reports, include it in the issue template, and every new issue will be opened with your recommended starter text.
Using issues
This is an issue ๐: a place where you can have conversations about bugs in your code, code review, and just about anything else.
Issue titles are like email subject lines. They tell your collaborators what the issue is about at a glance. For example, the title of this issue is Getting Started with GitHub.
Using GitHub Issues
Using GitHub issues
Issues are used to discuss ideas, enhancements, tasks, and bugs. They make collaboration easier by:
- Providing everyone (even future team members) with the complete story in one place
- Allowing you to cross-link to other issues and pull requests ๐
- Creating a single, comprehensive record of how and why you made certain decisions
- Allowing you to easily pull the right people and teams into a conversation with @-mentions
๐บ Video: Using issues
Managing notifications
Managing notifications
๐บ Video: Watching, notifications, stars, and explore
Once you've commented on an issue or pull request, you'll start receiving email notifications when there's activity in the thread.
How to silence or unmute specific conversations
- Go to the issue or pull request
- Under "Notifications", click the Unsubscribe button on the right to silence notifications or Subscribe to unmute them
You'll see a short description that explains your current notification status.
How to customize notifications in Settings
- Click your profile icon
- Click Settings
- Click Notifications from the menu on the left and adjust your notification preferences
Repository notification options
- Watch: You'll receive a notification when a new issue, pull request or comment is posted, and when an issue is closed or a pull request is merged
- Not watching: You'll no longer receive notifications unless you're @-mentioned
- Ignore: You'll no longer receive any notifications from the repository
How to review notifications for the repositories you're watching
- Click your profile icon
- Click Settings
- Click Notification from the menu on the left
- Click on the repositories youโre watching link
- Select the Watching tab
- Click the Unwatch button to disable notifications, or Watch to enable them
Keep reading below to find your first task
Step 1: Assign yourself
Unassigned issues don't have owners to look after them. When youโre assigned to an issue or pull request, it tells repository visitors and contributors that you'll be facilitating the conversation or task ๐ช.
โจ๏ธ Activity
- On the right side of the screen, under the "Assignees" section, click the gear icon and select yourself
For a printable version of the steps in this course, check out the Quick Reference Guide.
I'll respond when I detect you've assigned yourself to this issue.
Sometimes I respond too fast for the page to update! If you perform an expected action and don't see a response from me, wait a few seconds and refresh the page for your next steps.
Step 2: Turn on GitHub Pages
๐ You're now the proud manager of this issue! Now that you've assigned yourself, people who drop by know that they're welcome to participate, but you'll be carrying this issue across the finish line. ๐.
Let's use GitHub Pages
Now, on to business! GitHub Pages allow you to serve a static site from a repository. We've filled this repository with some site content, but the rendered site isn't visible right now. Let's change that.
โจ๏ธ Activity: Enable GitHub Pages
- Click on the Settings tab in this repository
- Scroll down to the "GitHub Pages" section
- From the "Source" drop down, select master branch
Note: Even though you'll see an option to choose a theme, do not apply a theme at this point. We've protected the code so you can't make unintended changes. You'll have the opportunity to apply a theme when the course is completed.
I'll respond in this issue when I detect GitHub Pages has deployed your site.
Turning on GitHub Pages creates a deployment of your repository. I may take up to a minute to respond as I await the deployment.
Step 3: Close an issue
You turned on GitHub Pages!
Your site is now visible to the public. Check it out at https://akshitaggarwal.github.io/github-slideshow/.
Now that youโve completed the tasks in this issue, it's time to close it! Closing an issue tells other contributors that this particular conversation or task has come to an end.
โจ๏ธ Activity
- Click the Close issue button below