webentwicklung-frage-antwort-db.com.de

VisualStudio: Ein Fehler wurde von libgit2 ausgelöst. Kategorie = Kasse

Ich verwende TFS mit Git, installierte Visual Studio Tools für Git.

Ich versuche alle Commits (insgesamt 5) von TFS zu ziehen, aber ich bekomme diese Fehlermeldung unten:

An error occurred. Detailed message: An error was raised by libgit2. 
Category = Checkout (MergeConflict).
2 conflicts prevent checkout

Wie löse ich das?

error

33
Null Reference

Leider zeigt das Visual Studio-Plugin für Git nicht die Fehlermeldungen an, die Sie zur Behebung dieses Problems benötigen. (Ich hoffe, dass sie diese Funktion für eine spätere Version planen.)

Versuchen Sie, die neuesten Commits mit Git Bash oder mit TortoiseGit zu ziehen. Mit jedem dieser Tools sollten Sie wissen, wo Ihre Konflikte liegen.

20
dthrasher

Um den Fehler zu sehen, müssen Sie die git-Befehlszeile ausführen Sie finden ihn unter Team Emplorer -> Unsynched commits -> Actions -> Open in Command Prompt.

Dann sollten Sie den Befehl git pull verwenden

Seien Sie vorsichtig mit dem Berechtigungsnachweis, wenn Sie visualstudio.com, Verwenden. In diesem Fall benötigen Sie ein alternatives Login und ein Kennwort für die Verbindung zu git über den Befehl Prompt.

Um das Problem zu lösen, folgen Sie den folgenden Schritten: -

1) Visual Studio schließen.
2) Jetzt Visual Studio öffnen, ohne eine Lösung zu öffnen.
3) Öffnen Sie den Team Viewer und gehen Sie zu git home-> changes.
4) Klicken Sie anschließend auf Festschreiben.
5) Jetzt erhalten Sie die ungelösten Konflikte.
6) Lösen Sie die Konflikte und verpflichten Sie sich ..

Problem gelöst :).
Prost

6
user3848772

Dieser Fehler tritt häufig auf, wenn:

  • Sie haben einen Proxy in Ihrem Netzwerk:

    Sehen Sie sich einige Lösungen zur Konfiguration Ihrer Git-Proxy-Einstellungen hier an.

  • oder ... Die Git-URL, mit der Sie sich verbinden möchten, besteht aus mehr als 256 Zeichen.

5
Blowsie

Visual Studio Tool for Git unterstützte die Remote-Repositorys nicht mit dem SSH-Protokoll. Es wurden nur HTTP und HTTPS unterstützt, jetzt wird jedoch auch SSH unterstützt.

Lesen Sie die URL zum Auflösen von this- https://github.com/libgit2/libgit2sharp/issues/255

1
Manik Arora

Dies geschieht, wenn Ihre eingehenden fetch - Dateien mit Ihren nicht festgeschriebenen Dateien in Konflikt stehen. Versuchen Sie zunächst, die vorgenommenen Änderungen zu übernehmen oder rückgängig zu machen. Und versuche noch einmal zu schieben. Wenn dies nicht funktioniert, sollte sich die Konfliktdatei in den Dateien Ungepflegte Dateien befinden. Versuchen Sie es zu finden und zu löschen. das sollte funktionieren.

0
Dayan

Ich konnte dieses Problem lösen, indem ich in VS 2013 aus dem Team Explorer zog, ohne dass eine Lösung geöffnet war. Mach das einfach einmal.

Das hat funktioniert, und seitdem habe ich den libgit-Fehler auch für keine andere Lösung gesehen.

Dies wird auch für VS 2012 getestet.

0
Tarun

Eingehende und ausgehende Commits in verschiedenen Branchen. Sie müssen sie vor der Synchronisierung marschieren. Ich mache es in Source Tree, da sieht man deutlich Verzweigungen.

0
Vitalik Demko

Zuerst müssen Sie lokale ausstehende Änderungen in der lokalen Niederlassung festschreiben. Konflikte gelöst und die lokalen Änderungen auf den Master-Zweig übertragen

0
Mihir

Bekam einen Hinweis von @Blowsie, in meinem Fall, das Fiddler-Capturing oder ein ähnliches Paket-Capture-Tool deaktiviert.

0
Youngjae