Comment exécuter des commandes Git directement depuis Python ?
Git est l'outil de terminal en ligne de commande pour gérer des projets tandis que Python est le langage de programmation le plus populaire. Créer et gérer les dépôts de programmation est une tâche facile en utilisant le terminal Git Bash.
Cependant, il est beaucoup plus intéressant et utile d'exécuter des commandes Git directement depuis Python. Utile en ce sens que vous n'avez pas besoin d'ouvrir le terminal Git Bash séparément. À cet effet, Python dispose de certaines fonctions intégrées spécifiquement pour les opérations Git à réaliser.
Ce post illustrera le guide pour exécuter les commandes Git directement depuis Python.
Comment exécuter des commandes Git directement depuis Python ?
Comme mentionné précédemment, Python vous permet d'exécuter des commandes Git directement à partir de Python. Effectuons les opérations de base de Git Bash telles que l'initialisation d'un dépôt, le clonage, la mise à jour des modifications et le transfert vers l'hôte distant depuis le code Python. Par exemple, nous utilisons l'environnement de développement Thonny pour exécuter et exécuter le code Python.
Étape 1 : Initialiser le dépôt local
Ouvrez Thonny, importez la bibliothèque Git, écrivez le nom de la variable, initialisez le dépôt en utilisant la fonction “Repo.init()” et définissez le chemin du dépôt à l'intérieur. Enfin, affichez le message à l'écran pour l'exécution réussie du code :
from git import Repo
new_repo = Repo.init('D:\Python')
print(f'Given directory is initialized')À partir de l'exécution ci-dessus du code, le répertoire particulier a été initialisé :
Étape 2 : Cloner le dépôt distant
Pour cloner le dépôt Git depuis l'hôte distant, stockez l'URL distante et le chemin du répertoire local dans des variables. Ensuite, utilisez la méthode git.repo.clone_from(), mettez les deux variables à l'intérieur et imprimez le message. Consultez le code ci-dessous :
import git
Clone a remote repository
repo_url = "https://github.com/Mateen900/perk"
local_path = "D:\Python\Clone"
repo = git.Repo.clone_from(repo_url, local_path)
print(f'Project Repository has been cloned: {local_path}')Après avoir exécuté le code ci-dessus, le dépôt distant sera cloné dans le chemin spécifié.
Pour la vérification, ouvrez le répertoire local et vérifiez-le :
Étape 3 : Suivre les modifications et valider
Après avoir cloné le dépôt, vous pouvez maintenant modifier/ajouter les fichiers/changements dans le projet cloné, les suivre et les engager. Par exemple :
- Nous avons ajouté deux fichiers « test1.txt » et « test2.txt » dans le projet cloné. Donc, pour ajouter les modifications à l'index de suivi, comme d'habitude, importez la bibliothèque Git, spécifiez le chemin du répertoire local dans la variable, et utilisez ces variables pour inclure les fichiers ajoutés en particulier.
- Ensuite, utilisez la fonction « repo.index.add() » et entrez les variables du fichier à l'intérieur.
- Enfin, affichez le message à l'écran :
Les fichiers ajoutés ont été suivis.
De même, pour valider les changements, utilisez la fonction “repo.index.commit() ” comme le montre le code suivant :
Pour vérifier si les fichiers ont été ajoutés et engagés ou non, ouvrez le répertoire local, et vous verrez le signe rouge sur ces fichiers :
Étape 4 : Poussez les modifications vers l'hôte distant
Enfin, poussez les modifications appliquées vers l'hôte distant. Pour ce faire :
- Importez la bibliothèque Git, incluez le chemin du répertoire et spécifiez le nom de l'hôte distant à l'intérieur de la fonction repo.remote().
- Ensuite, définissez une branche en utilisant la fonction « repo.heads[] » et appelez la fonction de checkout dessus.
- Enfin, poussez le code vers l'hôte distant à travers la fonction “origin.push() ” et affichez le message à l'écran :
import git
repo = git.Repo("D:\Python\clone")
origin = repo.remote(name='origin')
existing_branch = repo.heads['main']
existing_branch.checkout()
origin.push()
print('Changes pushed to the remote host')Le changement a été poussé vers l'hôte distant.
Étape 5 : Vérification
Vérifions notre hôte distant pour les changements mis à jour :
D'après l'image ci-dessus, il est clair que les changements ont été envoyés vers notre hôte distant.
Ce sont les instructions de base pour utiliser Git directement depuis le code Python.
Conclusion
Pour exécuter des commandes Git directement à partir de Python, ouvrez l'IDE Python (Thonny), importez la bibliothèque Git ; utilisez les fonctions de base telles que Repo.git(), git.repo.clone_from(), repo.index.add(), et repo.index.commit(). Ce guide a pratiquement exécuté les instructions pour exécuter des commandes Git directement depuis Python.








