Git, Git-Annex and Git-LFS
Git is a free and open-source distributed version control system to manage evolving projects. Although git is an efficient tool, it has limited capabilities when dealing with very large files and repositories, and this is where systems like git-annex and git-LFS can be useful. These tools allow managing large binaries with Git without checking the contents into Git. Many tools and services which support open neuroscience use git and git-annex under the hood, such as GIN itself and DataLad. If you are interested, you can learn about these tools using the following resources:
- Software Carpentry: Version Control with Git lessons are a great resource to learn git by using it. Each lesson is modular with a clear set of objectives, questions and key points.
- Learn Git Branching- If you have already familiarized yourself with git through some workshops, YouTube videos or readings and still find the branching concepts to be a bit overwhelming, then this website could be helpful for you. It is a visual and interactive game-like website where you can learn the concepts of git branching to level up your understanding or even just use it as a sandbox to try different git commands and visualize them.
- YouTube Videos- There is a multitude of great videos available online, that explain git and git commands succulently and in a very short amount of time, some good mentions are: