Get more out of your coding with GitHub
For today’s coders, GitHub is a must. The world’s largest software development platform, GitHub helps developers store, track, and collaborate on software projects. In this easy-to-follow Dummies guide, you’ll find insight into creating repositories, establishing projects, collaborating, incorporating open-source resources, and establishing yourself as a valued member of the GitHub community. With a working knowledge of GitHub, you’ll be a better, more employable programmer. The simple instructions and interactive examples in this book will get you there quickly.
• Get the instructions you need for using GitHub to collaborate on software projects
• Become more attractive to employers with knowledge and experience in the largest development platform
• Set up GitHub Desktop, create a repository, and launch your first project
• Use GitHub Skills courses to learn new tricks, for beginners to pros
You’ve learned how to write a little code―now learn how to share it with GitHub.
Author(s): Sarah Guthals
Edition: 2
Publisher: For Dummies
Year: 2023
Language: English
Commentary: Publisher's PDF
Pages: 355
Tags: For Dummies; Application Development; GitHub; Community; Git; Collaboration; FOSS; Workflow Automation
Title Page
Copyright Page
Table of Contents
Introduction
About This Book
Foolish Assumptions
Icons Used in This Book
Beyond the Book
Where to Go from Here
Part 1 Getting Started with GitHub.com
Chapter 1 Understanding the Git in GitHub
Introducing GitHub
Understanding Version Control
Git Version Control
Try simple Git on the terminal
Git branching by collaborator
Git branching by feature
Git branching for experimentation
Git’s Place on GitHub
Signing Up for GitHub.com
Personalizing Your GitHub.com Account
Account
Appearance
Accessibility
Notifications
Billing and plans
Emails
Passwords and authentication
SSH and GPG keys
Organizations
Moderation
Blocked users
Interaction limits
Code review limits
Repositories
Packages
GitHub Copilot
Pages
Saved replies
Code security and analysis
Applications
Scheduled reminders
Security log
Sponsorship log
Developer settings
Discovering Helpful Resources
Chapter 2 Setting Up Your Collaborative Coding Environment
Exploring GitHub.com
Understanding Your Profile
Getting to Know GitHub Desktop
Setting Up GitHub Desktop
Introducing Visual Studio Code
Part 2 Starting Your First Solo Project
Chapter 3 Introducing GitHub Repositories
Setting Up a Repository
Exploring Your Repository
Top information
Tabs
Code tab
Modifying README.md
Merging a Pull Request
Using Issues and Project Boards
Creating a project board and an issue
Closing an issue
Chapter 4 Setting Up a GitHub Website Repo
Introducing GitHub Pages
Turning a Project Repo into a Website
Setting Up a Personal Website Repo
Creating Issues for Your Website
Setting Up Your Local Environment
Cloning a repo in GitHub Desktop
Touring GitHub Desktop
Opening your repo in Visual Studio Code
Touring VS Code
Finding Resources for GitHub Pages
Chapter 5 Creating a Website with GitHub Pages
Jumping into an Existing GitHub Project
Accessing the GitHub.com repo
Verifying your permissions for the repo
Orienting yourself with the project
Preparing Your Contribution
Creating a branch for your contribution
Confirming your branch is published
Building Your Personal Website
Modifying the title and tagline
Adding sections to your website
Creating a blog
Linking project repos
Part 3 Contributing to Your First Project
Chapter 6 Forking GitHub Repositories
Introducing Forking
Cloning, Forking, and Duplicating
Cloning a Repository
Forking a Repository
Fetching changes from upstream
Contributing changes to upstream
Getting unstuck when cloning without forking
Chapter 7 Writing and Committing Code
Creating a Repository
Writing Code
Creating a Commit
Staging changes
Committing a file
Committing multiple files
Writing a Good Commit Message
Committing Code with GitHub Desktop
Tracking a repository in Desktop
Publishing a repository in Desktop
Committing in Desktop
Using GitHub Conventions in Commit Messages
Emojis
Issue references
Giving credit to coauthors
Committing Code from Your Editor
Chapter 8 Working with Pull Requests
Understanding a Pull Request
Pushing Code to GitHub
Opening a Pull Request
Describing the pull request
Adding reviewers
Specifying assignees
Specifying labels
Specifying projects and milestones
Writing a Great Pull Request
Knowing your audience
Making the purpose clear
Keeping it focused
Explaining the why
A picture is worth a thousand words
Including a call to action
Reviewing a Pull Request
Reviewing the Conversation tab
Reviewing the changed files
Commenting on code
Suggesting changes
Finishing the review
Reading More about Pull Requests
Part 4 Managing and Contributing to Large Projects
Chapter 9 Exploring and Contributing to OSS
Exploring GitHub
Exploring topics
Trending repositories
Exploring collections
Exploring events
Exploring GitHub Sponsors
Getting by with help from your friends
Finding Places to Contribute
Surveying a Project for Contribution
Reading the contributing guide
Reading the contributing code guide
Reading the code of conduct
Setting Contributor Expectations
They won’t fix every issue
They won’t merge every pull request
They don’t owe you anything
Keeping Tabs on a Project
Chapter 10 Starting Your Own OSS
Creating an Open Source Repository
Adding a license
Adding contributor guidelines
Adding a code of conduct
Making a Repository Public
Enforcing a Code of Conduct
Responding with kindness
Leveraging the ban hammer
Blocking users
Writing a README.md File
Writing Good Documentation
Managing Issues
Labeling issues
Triaging issues
Issue templates
Saved replies
Ending Your Project
Archiving a project
Transferring ownership
Chapter 11 Inner-Source Your Code on GitHub
Why Code in Private?
Using GitHub Organizations
Creating a GitHub organization
Inviting members to your GitHub organization
Viewing repositories for your organization
Managing members of your organization
Creating teams within your organization
Setting organization settings
Making the Most of Your Teams
Creating parent/child teams
Discussing teams
Assigning code owners
Best Practices for Inner-Sourcing
Repository insights
Milestones for larger projects
Part 5 Making GitHub Work for You
Chapter 12 Collaborating Outside of GitHub
Chatting It Up
Installing the GitHub app for Slack
Subscribing to a repository in a Slack channel
Trying out the GitHub Slack integration
Getting Trello and GitHub Integrated
Installing the GitHub power-up
Using the GitHub power-up
Managing Notifications with Octobox
Chapter 13 GitHub Workflow Integrations
Using GitHub for Visual Studio Code
Interacting with pull requests in VS Code
Following the GitHub for VS Code pull requests extension
Using GitHub for Visual Studio
Viewing, creating, and reviewing pull requests in Visual Studio
Following the GitHub for Visual Studio extension
Using GitHub for XCode
Using GitHub for IntelliJ
Chapter 14 Personalizing GitHub
Using Browser Extensions
Refining GitHub
Taking a GitHub selfie
GitHub Apps and Probot
Introducing Probot
Hosting the app
Introducing Glitch
Creating a Probot app
Pushing the Probot app to GitHub
Hosting your Probot app on Glitch
Taking Action with GitHub Actions
Part 6 The GitHub Ecosystem
Chapter 15 Exploring the GitHub Marketplace
Introducing the GitHub Marketplace
Billing made easy
The Marketplace vetting process
Listing Your App on the Marketplace
Considering Common Apps to Install
Continuous integration
Code quality
Localization
Monitoring
Dependency management
Testing
Learning
Chapter 16 GitHub and You
Understanding Your GitHub Profile
Profile picture
Status message
Personal info and bio
Pinned repositories
Contribution graph
Contribution activity
Starring Repositories
Following Users
Chapter 17 Attending Events
Exploring Types of Events
Meet-ups and user groups
Regional conferences
Hackathons
Major conferences
Knowing What to Expect at Events
Keynotes
Conference session tracks
Hallway tracks
After-hour conference events
A respectful professional environment
Becoming Familiar with GitHub Events
GitHub Universe
GitHub Satellite
GitHub Constellation
Git Merge
Speaking at Events
Everyone has a story to tell
Benefits of being a speaker
Finding Funding for Events
Part 7 The Part of Tens
Chapter 18 Ten Ways to Level Up on GitHub
Trial and Error
GitHub Help Docs
GitHub Skills
GitHub In-Person Training
Project-Specific Documentation
External Community Places
Online Coding Tutorials
Online Courses and Tutorials
Blogs, YouTube, Twitter, TikTok, and Other Social Media
Community Forum
Chapter 19 Ten Ways to Improve Your Development Workflow
Drafting Pull Requests
Git Aliases
Run Tests Automatically
Take Breaks
Prototype User Interfaces
Scaffold Apps with Yeoman
Chrome Web Developer Tools
StackOverflow
Code Analysis Tools
Project Boards
Chapter 20 Ten Tips for Being an Effective Community Member
Be Respectful and Kind
Report Bad Behavior
Write Good Bug Reports
Be Responsive
Submit Pull Requests to Correct Documentation
Document Your Own Code
Give Credit Where It’s Due
Help Get the Word Out
Be Proactive and Mentor Others
Contribute Outside of GitHub
Index
EULA