69 votes

Existe-t-il un moyen de travailler avec git en utilisant l'application .NET ?

Comment puis-je extraire (peut - être pousser aussi) un dossier de GitHub ?

Je veux dire que j'ai besoin de l'API pour .NET pour accéder dans C#, pas de l'interface graphique pour git.

50voto

Pok Points 395

Ce que j'ai fait est cependant d'écrire une simple bibliothèque de classes pour appeler des commandes git en exécutant un processus enfant.

Tout d'abord, créez un ProcessStartInfo pour une configuration.

 ProcessStartInfo gitInfo = new ProcessStartInfo();
gitInfo.CreateNoWindow = true;
gitInfo.RedirectStandardError = true;
gitInfo.RedirectStandardOutput = true;
gitInfo.FileName = YOUR_GIT_INSTALLED_DIRECTORY + @"\bin\git.exe";

Créez ensuite un processus pour exécuter la commande.

 Process gitProcess = new Process();
gitInfo.Arguments = YOUR_GIT_COMMAND; // such as "fetch orign"
gitInfo.WorkingDirectory = YOUR_GIT_REPOSITORY_PATH;

gitProcess.StartInfo = gitInfo;
gitProcess.Start();

string stderr_str = gitProcess.StandardError.ReadToEnd();  // pick up STDERR
string stdout_str = gitProcess.StandardOutput.ReadToEnd(); // pick up STDOUT

gitProcess.WaitForExit();
gitProcess.Close();

C'est alors à vous d'appeler n'importe quelle commande maintenant.

44voto

Kenny Evitt Points 1876

Comme James Manning l'a mentionné dans un commentaire de la réponse actuellement acceptée, la bibliothèque libgit2sharp est un projet activement pris en charge fournissant une API .NET pour Git.

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X