1
Overview of Git
- Basic concepts of version control.
- Centralized or distributed management
- Different version management solutions: (Git, CVS, SVN, Mercurial, Bazaar, etc.).
- Benefits of decentralization. Operating principle.
2
Installation and configuration
- Installation on various systems: Unix/Windows.
- The Windows emulation system msysgit.
- Configuring the .gitconfig file. The console.
- Declaring a version differential analysis tool.
Hands-on work
Installing and configuring GIT in Windows.
3
Fundamentals of using Git
- The Git object model: Blob, tree, commit, and tag.
- The Git directory and working directory.
- The index or staging area.
- Creating and initializing a repository.
- The concepts of branches, tags, and repositories,
- Gitk visualization tool.
Hands-on work
Creating and initializing a repository. Using the Gitk visualization tool.
4
Local file management
- Checking the state of the working tree.
- Adding, ignoring, editing, deleting, and searching for files.
- Cancelling and viewing changes.
- Revision history trail.
- Logs (statistical, formating, etc.).
Hands-on work
Working with common Git commands to manage and edit files.
5
Branch management
- The "master" branch.
- Creating branches and sub-branches.
- Changing branches.
- Merging a branch and conflict management.
- Comparing two branches.
Hands-on work
Common Git commands to manage branches (create, merge, compare)
6
Work-sharing and collaboration
- Setting up a public or private remote repository
- Publishing edits (push operation).
- Retrieving the team's edits.
- Tracking branches. Failure management.
Hands-on work
Setting up a remote repository and simulating collaborative work.
7
Implementing Git tools
- Git-gui and TortoiseGIT, graphical browsing in Git.
- GitWeb, graphical browsing within the repositories.
- GitHub, BitBucket, GitLab, repository hosting and project management services.
Hands-on work
Working with several tools.