Arich Infotech

GIT

Duration in Hours : 20

Duration in Days: 10

GIT

Course Code: DGT20CS

10 Hours of Theory

10 Hours Lab

  1. What is Version Control?
  2. Types of Version Control Systems (Centralized vs Distributed)
  3. Introduction to Git and GitHub/GitLab
  4. History and Benefits of Using Git
  5. Installing Git and Git Configuration
  1. Initializing a Git repository (`git init`)
  2. Git file lifecycle: Working Directory, Staging Area, Repository
  3. Creating snapshots with Git commits (`git commit`)
  4. Checking status and tracking changes (`git status`)
  5. Adding files to staging (`git add`)
  6. Viewing commit history (`git log`)
  7. Viewing differences between commits and working files (`git diff`)
  1. Introduction to Git branches
  2. Creating branches (`git branch`)
  3. Switching branches (`git checkout`)
  4. Merging branches (`git merge`)
  5. Fast-forward and 3-way merge
  6. Handling merge conflicts
  7. Deleting branches (`git branch -d`)
  8. Visualizing branches (`git log –graph`)
  1. Introduction to remote repositories
  2. Cloning a repository (`git clone`)
  3. Pushing and pulling changes (`git push`, `git pull`)
  4. Adding remote repositories (`git remote add`)
  5. Fetching and merging changes (`git fetch`, `git merge`)
  6. Working with GitHub/GitLab repositories
  1. Forking and cloning repositories
  2. Pull requests (PR) on GitHub/GitLab
  3. Code review and collaboration workflow
  4. Rebasing and resolving conflicts
  5. Stashing changes (`git stash`)
  6. Cherry-picking commits (`git cherry-pick`)
  7. Reverting commits (`git revert`)
  1. Resetting changes: Soft, Mixed, and Hard Reset (`git reset`)
  2. Rewriting history with `git rebase`
  3. Using `git reflog` to recover lost commits
  4. Interactive rebasing for clean history
  5. Using `git bisect` to identify bugs
  6. Tagging releases (`git tag`)
  7. Lightweight vs Annotated Tags
  8. Working with Submodules
  1. Feature branch workflow
  2. Gitflow Workflow
  3. Forking Workflow
  4. Trunk-based development
  5. Git strategies for scaling and managing large projects
  1. Aliases and Git shortcuts
  2. Setting up `.gitignore`
  3. Git hooks for automation
  4. Git Large File Storage (LFS)
  5. Git GUI tools (e.g., SourceTree, GitKraken)
  1. Using GitHub/GitLab for team collaboration
  2. Managing issues and project boards
  3. Creating and reviewing pull requests
  4. Continuous Integration (CI) with GitHub Actions / GitLab CI
  5. Using Wikis and GitHub Pages for documentation
  1. Writing good commit messages
  2. Commit early and often
  3. Using `.gitignore` effectively
  4. Squashing commits before merging
  5. Reviewing diffs before committing
  6. Avoiding rebasing in shared branches

    Enquire About Our Courses

    If you have any questions about our courses or need more information, please fill out the form below, and we'll get back to you shortly!