EPSC Abstracts
Vol. 19, EPSC2026-633, 2026, updated on 02 Jul 2026
https://doi.org/10.5194/epsc2026-633
Europlanet Science Congress 2026
© Author(s) 2026. This work is distributed under the Creative Commons Attribution 4.0 License.
Poster |
Thursday, 10 Sep, 18:00–19:30 (CEST), Display time Thursday, 10 Sep, 08:30–19:30| Foyer 3, F3.45
Version Control for Planetary Science: A Practical Guide to Git in Academic Software Development
- 1German Aerospace Center (DLR), Institute for Space Research, Berlin, Germany (william.byrne@dlr.de, Christian.Huettig@dlr.de, Mario.DAmore@dlr.de)
- 2Institute of Geological Sciences, Freie Universität Berlin, Berlin, Germany (byrnew02@zedat.fu-berlin.de)
- 3Laboratoire de Planétologie et Géosciences, Nantes Université, Nantes, France (quentin.betton@etu.univ-nantes.fr)
Planetary scientists increasingly write their own software. Most do so alone, without version control, and (especially those early in their careers) with the quiet anxiety that comes from knowing their software may not survive advisor scrutiny. Git [1], software developed specifically to manage version control, has been the standard tool for collaborative software development in industry for decades, yet its adoption in academic research remains inconsistent [2,3]. Not because researchers lack the ability to use it, but because no one has made a concrete case for how it fits into the academic workflow. This work attempts to decrease the ill-perceived barrier to entry by providing three Git-based workflows of increasing complexity, designed for planetary science teams ranging from a single student to a large collaborative group.
For a single programmer, the entry point should be deliberately minimal. This will promote adoption and prevent confusion through unnecessary complexity. A researcher working alone commits to a single branch, using a handful of commands in a repeatable loop: git fetch to check for remote changes without overwriting local work, git pull to synchronize with the remote repository, git add, git commit -m with an appropriate commit message, and git push to update the remote repository with the current changes. The payoff is immediate: a complete, recoverable history of every change made to a codebase, along with a growing record of why those changes were made. In practice, this habit also improves software quality. Following a standardized comment format clearly communicates changes between versions.
For groups of two to five, we suggest a branching workflow that introduces the core of what makes Git genuinely powerful. Development happens on short-lived feature branches, each tied to a single tracked issue, while a protected main branch holds only tested, stable software. Merging back into the main branch happens through a pull request; a structured, documented conversation about whether the work is ready. This is where the workflow earns its place in an academic context. The pull request stage is peer review applied to software. Merge conflicts, which have a reputation for being intimidating, are in practice a straightforward task. Git has found two competing versions of the same line and wants a human to decide which one is correct. They become rarer the more regularly a team commits. Teams that adopt this pattern consistently report that it reduces the fear of breaking things, distributes ownership across contributors, and creates a trail of technical decisions that survives student turnover [4].
One can extend this logic to groups of five or more by inserting a develop branch between active development and the stable main branch. Feature branches merge into the develop branch continuously. The develop branch merges into the main branch only after passing a test suite. The result is a clear, standardized pattern of open development, followed by deliberate consolidation. This maps naturally onto how research projects are actually structured. Collaborators and users always have access to a working version of the software, and the test suite acts as a lightweight, automated form of the same quality control that pull requests provide at the individual feature level.
The goal of this abstract is not to prescribe a single correct approach to scientific software development. Version control philosophy is heavily debated (especially in industry [5]), and any team, academic or otherwise, will make team-specific adjustments that fit their culture and project structure. The narrower claim is that the academic programming culture, in planetary science and beyond, loses significant value to undocumented software, unrecoverable changes, and the low-grade embarrassment that leads researchers to preface every software-sharing interaction with an apology. Structured version control does not solve all of that, but it is a concrete, teachable, and immediately applicable step toward software that researchers feel comfortable standing behind [6,7].
References
[1] Git Development Team, 2026, git-scm.com, [2] Blischak et al., 2016, PLoS Comput Biol, [3] Haaranen et al., 2015, ITiCSE '15, [4] Milliken et al., 2021, HICSS-54, [5] Driessen, 2010, nvie.com, [6] Ram, 2013, Source Code Biol Med, [7] Carver et al., 2022, PeerJ Comput Sci.
How to cite: Byrne, W., Betton, Q., Hüttig, C., and D'Amore, M.: Version Control for Planetary Science: A Practical Guide to Git in Academic Software Development, Europlanet Science Congress 2026, The Hague, The Netherlands, 7–11 Sep 2026, EPSC2026-633, https://doi.org/10.5194/epsc2026-633, 2026.