22
What Git library to choose? (discuss.tchncs.de)

I happen to write a lot of python code dealing with git repositories. Currently I am calling the git command line tool from python and interpret the output.

This solution really doesn't scale well. Can you recommend a python library that wraps git functionality?

I have found three:

  • GitPython: Seems to work well, but it is in maintenance mode, unlikely to be improved. It also does not have any type hints making working with it annoying.
  • pygit2: Seems well supported and has type hints. But it also seems very low level and pretty tedious to use.
  • dulwich: Looks very promising feature wise but I'm unsure how well it is supported. It seems like an ambitious project being largely done by just one person.
you are viewing a single comment's thread
view the rest of the comments
[-] GammaGames@beehaw.org 1 points 5 months ago

Honestly if you already know all the git commands? I’d use sh

[-] wasabi@discuss.tchncs.de 6 points 5 months ago

You'd still only get strings as returns. No objects modeling git concepts.

[-] GammaGames@beehaw.org 1 points 5 months ago* (last edited 5 months ago)

Fair point, I usually use exit codes

[-] mundane@feddit.nu 1 points 5 months ago

We have historically used GitPython a lot, but in a recent project I tried git via sh instead. It works great. If you already know the git cli, this feels very ergonomic to use.

this post was submitted on 07 Jun 2024
22 points (89.3% liked)

Python

6368 readers
18 users here now

Welcome to the Python community on the programming.dev Lemmy instance!

📅 Events

PastNovember 2023

October 2023

July 2023

August 2023

September 2023

🐍 Python project:
💓 Python Community:
✨ Python Ecosystem:
🌌 Fediverse
Communities
Projects
Feeds

founded 1 year ago
MODERATORS