Git (FREE)
Git is a free and open source distributed version control system designed to handle everything from small to large projects with speed and efficiency.
GitLab is a Git-based fully integrated platform for software development. Besides Git's functionalities, GitLab has a lot of powerful features to enhance your workflow.
We've gathered some resources to help you to get the best from Git with GitLab.
More information is also available on the Git website.
Getting started
The following resources can help you get started with Git:
- Git-ing started with Git, a video introduction to Git.
- Git Basics
- Git on the Server - GitLab
- How to install Git
- Git terminology
- Start using Git on the command line
- Edit files through the command line
- GitLab Git Cheat Sheet (download)
- Commits:
- Git stash
- Git file blame
- Git file history
- Git tags
Concepts
The following are resources on version control concepts:
- Why Git is Worth the Learning Curve
- The future of SaaS hosted Git repository pricing
- Git website on version control
- GitLab University presentation about Version Control
Work with Git on the command line
You can do many Git tasks from the command line:
- Bisect.
- Cherry pick.
- Feature branching.
- Getting started with Git.
- Git add.
- Git log.
- Git stash.
- Merge conflicts.
- Rollback commits.
- Subtree.
- Unstage.
Git tips
The following resources may help you become more efficient at using Git:
- Useful Git commands collected by the GitLab support team.
- Git Tips & Tricks
- Eight Tips to help you work better with Git
Troubleshooting Git
If you have problems with Git, the following may help:
- Numerous undo possibilities in Git
- Learn a few Git troubleshooting techniques
Branching strategies
- Feature branch workflow
- Develop on a feature branch
- GitLab Flow
- Git Branching - Branches in a Nutshell
- Git Branching - Branching Workflows
Advanced use
The following are advanced topics for those who want to get the most out of Git:
- Introduction to Git rebase, force-push, and merge conflicts
- Server Hooks
- Git Attributes
- Git Submodules: Using Git submodules with GitLab CI
- Partial Clone
API
Gitignore templates API allow for Git-related queries from GitLab.
Git Large File Storage (LFS)
The following relate to Git Large File Storage: