Course Outline
Introduction
- The importance of version control in software development
Overview of Git System Capabilities for Source Control
- Installing Git on your preferred operating system
- Introduction to fundamental Git attributes and components
- Defining Repositories, Commits, and Files
Understanding Git Workflows and Core System Processes
- Exploring the various states in Git
- Creating repositories and Git folders
Managing Existing Projects and File Handling with Git
- Working with Commits and Commit Messages
- Committing and reverting changes in a Git repository
- Viewing logs and accessing version history
Introduction to Branching and Merging in Git
- Understanding different Branching and Merging strategies
- Using special markers (tags) in Git
- Leveraging Git's Tagging and Stashing features
- Applying Reset and Reflog commands in Git
Overview of GitHub Features and Architecture
Setting Up a GitHub User Account and Profile Management
- Authentication with GitHub and credential updates
- SSH vs. HTTPS protocols
- Verifying authentication via SSH in GitHub
Creating GitHub Repositories and Linking Local Git Repositories
- Cloning or archiving a GitHub Repository
Initializing Repository Content in a Local Copy
Publishing Content Updates to the GitHub Repository
Exploring Intermediate Repository Features and Settings
Mastering GitHub Writing and Formatting Syntax
- Using tables and handling code blocks
- Automating links and references in GitHub
Managing Actions on GitHub Files and Folders
- Synchronizing file changes with the local repository
Creating, Editing, and Managing GitHub Commits
- Managing Commits and handling local repository clones
Reviewing Commits and Using Commit IDs in Local Copies
Understanding Fetch and Pull Commands in GitHub
Basic Concepts of Forking and Cloning in GitHub
Pushing Changes to GitHub and Verifying Push Requests
Working with Forks and Submitting Pull Requests
Reviewing Pull Requests and Integrating Proposed Changes
Resolving Merge Conflicts in GitHub and Using the CLI
Getting Started with GitHub Tags and Releases
- Using local Tags and updating GitHub Tags
- Creating, deleting, and managing GitHub Releases
Comparing GitHub Pull Requests, Commits, and Tags
Working with GitHub Gists and Snippet Features
Integrating Development Projects with GitHub Codespaces
Creating a GitHub Organization and Managing Teams
- Organizational vs. personal GitHub accounts
- Reviewing core GitHub functionalities
Managing GitHub Projects and Project Boards
Filtering Repository Data and Sharing GitHub Filters
Extending GitHub via APIs and Webhooks
- Automating GitHub workflows using OAuth tokens
Troubleshooting Common GitHub Issues
Summary and Conclusion
Requirements
- Familiarity with command-line interfaces and terminals (on Windows, Linux, or macOS)
- Working knowledge of at least one programming language
Audience
- Developers
- Software Engineers
- Project Managers
Testimonials (1)
Easy going trainer, very knowledgeable and approachable.