Course Outline
What is GIT?
Comparison of GIT to 1st and 2nd Generation (SVN)
- 1st generation
- 2nd generation
- 3rd generation
Basics - Git and Team Collaboration for Government
Initializing a project locally
Working with versions and branches
- git init
- git add (staging files)
- git reset (unstaging files)
- git commit
- git logs
- Second commit and git diff
- Stages overview
- Branches
- Setting a remote repository for government use
Basic Workflow - Feature branches and merges for government projects
- Outline of branches
- Initial project setup for government
- Add develop branch and push to remote
- Create feature branch JIRA-1 and push to remote
- Create merge request and merge changes to develop
Advanced Workflow 1 - Parallel feature branches and rebase strategy for government projects
- Simultaneous changes in multiple feature branches
- git merge
- git tag
- git clone (copying a remote repository)
Advanced Workflow 2 - Hotfixes and releases for government projects
Advanced Workflow 3 - Parallel development of a single feature for government projects
- Setting up CI/CD (continuous integration and development) for government
- Setting up runners for a project for government use
- Setting up pipelines and jobs with gitlab-ci for government workflows
File Management for Government Projects
- Ignore files with .gitignore
- Ignore future changes with: git update-index --skip-worktree
- Change saved execution mode with: git update-index --chmod=+x
- Keep empty folders with gitkeep for government projects
Git Submodules for Government Projects
Handling Large Files for Government Projects
- Download and install LFS (Large File Storage) for government use
- Migrating existing large files to LFS for government projects
- Server setup - Github for government repositories
- Server setup - Gitlab for government repositories
Useful Links for Government Projects
List of commands for government use
Requirements
Prerequisites:
- No technical prerequisites
Audience:
- Project Managers using Git to manage version control for documents and other project-related materials for government.
- Artists utilizing Git to maintain versions of their creative work.
- Developers and Operations staff ensuring the integrity and management of code or configuration files through version control.
Testimonials (2)
Pace, jokes, idea
Jakub Lewandowski - IAV Poland
Course - Gitlab and Gitlab CI
I liked the reactivity of Ahmed to each issue / question we raised and his ability to give clear answers to all of them, while providing further insight to other related issues we even may haven't thought of.