Version Control with Git
This course will help you get started using Git for version control. It is good for people who have used other version control tools and also for people who have never used any version control system. This course provides the necessary knowledge to get started using Git. To make sure one is not afraid of the tool and can use it to her/his advantage.Target Audience
- Teams of software developers and programmers who need to work cooperatively on projects.
Prerequisites
- An understanding of the source code-management issues in team-based software development.
Objectives
- Daily work as developer (checkout/add/commit/diff/etc...)
- Setup branches and merge them together
- Be able to create a local Git repository
Course Format
- Duration of the course is typically 8 academic hours. Usually 1 full day or two half-days.
- The course includes approximately 40% hands-on lab work.
Syllabus
- About Git
- The concepts of Git
- Basic concepts of Git
- Git Internals
- Copy-Modify-Merge vs Lock-Modify-Unlock
- Why use Git?
- Who uses Git?
- The basics
- Installing Git on Windows, Linux and Mac
- Setting up your profile (configuring git)
- Creating a local repository
- Daily use of Git
- status
- add (Adding files, directories to staging)
- rm (Removing files, directories)
- mv (Renaming files and directories)
- checkout
- commit (checking in changes)
- diff (Viewing changes)
- log (Viewing the log, Finding out what you, and others did)
- Making a change
- Working with branches
- Branching
- Merging
- Conflict resolution
- Tagging
- Working with a remote repository
- Cloning a remote repository
- pull
- push
- Peer networks
- Star networks
- Other
- Ignoring generated and other unwanted files
- Using gitk to explore history
- Stashing files while doing something else
- Finding out who did what (browsing log messages)
- reset (Removing commits from the repository)
- revert (Examining and reverting changes)
- Binary files
- Getting snapshots (dates and tagging)
Contact
Contact: Gabor Szabo gabor@hostlocal.com
Phone: +972-54-4624648