Team Working with Git
I've been using Git
for years, alone or in collaboration with my team. Over time, I developed habits that I present in this article.
What's Git?
When a programming project becomes more complex, you need to versionize it. Either a natural progression of the project over time or simply to add additional options. Managing these versions remains tedious as the project grows and even becomes risky when the project involves several collaborators.
Git
is the software that manages the versioning of files. More precisely, it forces users to version their files systematically. Finally, don't confuse Git with Gitlab, Github, or bitbucket, which are forges. A forge is a web-based collaborative software platform for both developing and sharing computer applications. it encompasses much more functionality than version management.
I defined two types of usage for Git
(front and back). The front part corresponds to a very basic use of Git
, adapted to work in turn. The back part is a more advanced use of Git
wich requires branches. This involves checking out a new branch, working on it, and then merging the changes into the main master branch into a single commit.


References
Pro Git
Scott Chacon and Ben Straub
Pro Git, 2nd edition, Apress, 2014. https://git-scm.com/book/
Relevant Tags
About the Author
Latest Articles
-
Chado: the GMOD Database Schema
Chado is a relational database schema that underlies many GMOD installations. It is capable of representing many of the general classes of data frequently encountered in modern biology such as sequence, sequence comparisons, phenotypes, genotypes, ontologies, publications, and phylogeny. It has been designed to handle complex representations of biological knowledge and is the most sophisticated relational schemas currently available in molecular biology.JAN 2025 · PIERRE-EDOUARD GUERIN -
Error Messages with a CLI
I am an anxious person. So error messages always makes my heart beat faster. Hopefully, following the Pareto Principle, 80% of error messages are mild while 20% are the really tough one. The point is to solve the first kind as quickly as possible and effortless. To do so, allow the user to solve the issue by himself with clear messages and hints (in the case of errors related to input files or parameters). Clear presentation of the context and precise localization of the error in the code will save a lot of useless and tedious work to the developer. The time spared on the easy errors just by having better messages, then can be reallocated to the second kind of errors, the troublemakers.NOV 2024 · PIERRE-EDOUARD GUERIN -
Generative AI: Integrate openAI API with Python
I was fortunate to follow the course of Sven Warris about software tools to integrate genAI into your own work and applications. The course is aimed at data scientists and bioinformaticians.MAY 2024 · PIERRE-EDOUARD GUERIN