git

Git ist ein Open-Source-Versionskontrollsystem (DVCS). Verwenden Sie dieses Tag für Fragen zur Verwendung von Git und Workflows. Verwenden Sie dieses Tag nicht für allgemeine Programmierfragen, die ein Git-Repository betreffen.
2
Antworten

libgit2 hat einen Fehler gemeldet. Kategorie = 21 (MergeConflict)

Ich benutze VS 2013. Ich stecke fest. Alles ist meinem lokalen Repository zugewiesen. Ich versuche, aus der Ferne zu ziehen, und ich bekomme den folgenden Fehler: Ein Fehler ist aufgetreten. Detaillierte Nachricht: libgit2 hat einen Fehle...
27.03.2014, 19:19
1
Antwort

Bower installieren: Keine Versionen verfügbar

Ich habe meine eigene Bibliothek erfolgreich in bower registriert: %Vor% und ich kann es installieren mit: %Vor% Aber mit einfach: %Vor% oder %Vor% Ich bekomme " Keine Versionen verfügbar " Ausnahme und ich verstehe nicht warum,...
26.10.2014, 09:49
2
Antworten

Github - Pull Request, ignoriere Dateiänderungen

Wenn ich eine Pull-Anfrage auf GitHub (gegen Master-Zweig) mache, können wir einige Dateiänderungen ignorieren, wie wir haben eine Datei mit dem Namen 'DateiA' in der Zweigstelle 'release', und wir haben dieselbe Datei in 'master', aber wir...
24.02.2015, 18:10
3
Antworten

___ answer28979773 ___

Schauen wir uns ihre Bedeutungen nacheinander an ...

  

On-Zweig-Master Ihre Filiale ist vor 'Herkunft / Master' um 1 Commit.   (Verwenden Sie "git push", um Ihre lokalen Commits zu veröffentlichen)

Dies bedeutet, dass Sie etwas lokal festgelegt haben, aber nicht mit dem Ursprung synchronisiert haben.

Lokal: Das Repository, das Sie auf Ihrem Computer geklont haben und an dem Sie gearbeitet haben.

Herkunft: Das Haupt-Repository von , in dem jede Person klonen kann.

  

Sie sind mitten in einer Sitzung. (Konflikte beheben und dann ausführen   "git am --continue") (benutze "git am --skip" um diesen Patch zu überspringen) (benutze   "git am --abort", um den ursprünglichen Zweig wiederherzustellen)

Sie waren mitten in der Erstellung eines Patches und hatten Konflikte. Sie müssen entweder die Objekte in den ursprünglichen Zustand zurückversetzen (mit %code% ) oder die Konflikte lösen, indem Sie diese Schritte ausführen.

  1. Geben Sie %code%
  2. ein
  3. Überprüfen Sie den Status, wenn Sie Dateinamen sehen, die sagen ( %code% )

  4. Öffnen Sie diese Dateien, lösen Sie die Konflikte, indem Sie das behalten, was Sie wollen, und löschen Sie das, was Sie nicht haben.

  5. Fügen Sie nun die Dateien hinzu, in denen Sie die Konflikte gelöst haben, indem Sie %code%

  6. eingeben
  7. Jetzt ist es Zeit, die Sitzung fortzusetzen

  8. Geben Sie %code% ein

Falls Sie diesen Patch überspringen möchten, geben Sie

ein %Vor%
  

Sie hatten einige Änderungen und Sie waren mitten in der Herstellung eines Patches   es. Änderungen, die beim Commit nicht durchgeführt wurden: (Verwenden Sie "git add ..." zu   update was committed wird) (benutze "git checkout - ..." zu   Änderungen im Arbeitsverzeichnis verwerfen)

%Vor%      

Nicht gepackte Dateien: (Verwenden Sie "git add ...", um darin aufzunehmen, was sein wird   verpflichtet)

%Vor%      

Keine Änderungen zum Commit hinzugefügt (verwenden Sie "git add" und / oder "git commit -a")

Hier versucht git, Sie über die Dateien zu informieren, die seit dem letzten Commit geändert wurden. Diejenigen, die alte Dateien waren und du hast nur etwas verändert hier und da drin wird als das modifizierte angezeigt.

Dasjenige, das Sie unter den nicht gepackten Dateien sehen, sind diejenigen, die git früher unbekannt waren, weil sie neue Dateien sind.

  

Schritte zum Beheben dieses Schritts

1.) Für die nicht verfolgten Dateien

%Vor%

2.) Übergeben Sie die hinzugefügten Dateien an das Repository

%Vor%

Hinweis

Wie Sie bereits erwähnt haben, arbeiten Sie auch mit einem Review-System (gerrit). Vielleicht möchten Sie einfach einen neuen Patch zu einem vorhandenen Commit hinzufügen und nicht zu einem neuen Commit. Wenn dies der Fall ist, müssen Sie dies tun

%Vor%

3.) Jetzt ist es Zeit, den Code zu drücken (wenn Sie möchten)

%Vor%

Für gerrit tun Sie dies

%Vor%     
___ qstntxt ___
___ tag123git ___ Git ist ein Open-Source-Versionskontrollsystem (DVCS). Verwenden Sie dieses Tag für Fragen zur Verwendung von Git und Workflows. Verwenden Sie dieses Tag nicht für allgemeine Programmierfragen, die ein Git-Repository betreffen. ___ tag123gerrit ___ Gerrit ist ein webbasierter Code Review und Projektmanagement für Git basierte Projekte. Was bedeutet "Du bist mitten in einer Sitzung"? ___ answer28936716 ___
  

Konflikte beheben

Führen Sie %code% aus, um zu sehen, ob Sie einen Merge-Marker haben, wie:

%Vor%

Falls nicht, versuchen Sie %code% erneut mit der Option %code% : %code%

Wenn Sie zum Beispiel %code% (Windows oder Linux), %code% verwenden. Dadurch wird ein grafisches Tool gestartet, mit dem Sie zwischen lokal, Basis und Remote

wählen können %Vor%

Mit:

  • %code% : Eine temporäre Datei, die den Inhalt der Datei im aktuellen Zweig enthält.
  • %code% : Eine temporäre Datei, die die gemeinsame Basis für die Zusammenführung enthält.
  • %code% : Eine temporäre Datei, die den Inhalt der Datei enthält, die zusammengeführt werden soll.
  • %code% : Die Datei mit den Konfliktmarkierungen.

Das %code% sollte nur dann ausgeführt werden, wenn git status keine nicht gespeicherten Dateien meldet.

Weitere Informationen finden Sie unter Git Conflict Resolution von Ted Felix : Es hat diese handliche Zusammenfassung:

  
  1. Verwenden Sie immer " %code% " mit " %code% ", um sicherzustellen, dass Sie Konfliktmarker erhalten.
  2.   
  3. Benutze " %code% " und " %code% ", um herauszufinden, was falsch gelaufen ist.
  4.   
  5. Beheben Sie die Konflikte mit einer der folgenden Methoden:      
    • Bearbeiten Sie jede in Konflikt stehende Datei mit Ihrem bevorzugten Editor.
    •   
    • " %code% " oder " %code% ".
    •   
    • " %code% ", um die Konfliktlösung für bestimmte Dateien rückgängig zu machen. (Sei vorsichtig!)
    •   
    • " %code% " und ein entsprechendes Merge-GUI-Tool wie %code% .
    •   
  6.   
  7. " %code% " die aufgelösten Dateien.
  8.   
  9. " %code% ", um die am. fortzusetzen.
  10.   

Vergessen Sie bei Git 2.17 (Q2 2018) nicht, Ihre Git-Sitzung mit %code% zu starten, um im Konfliktfall den Pfad zum Bearbeiten besser zu sehen.
Weitere Informationen finden Sie unter " Aktuelle Git Interactive Rebase-Operation anzeigen ".

    
___ answer28935426 ___

Was passiert ist, dass eine Datei in der Arbeitsbaumstruktur geändert wurde und eine vorhergehende AM-Sitzung gestartet wurde (AM ist eine Möglichkeit, Patches aus E-Mail-Nachrichten anzuwenden, bei denen E-Mails in Änderungen und Autoreninformationen aufgeteilt und dann als Patch auf das Repository angewendet werden) .

Dies ist dasselbe, als ob Sie die Datei geändert, festgeschrieben und dann versucht hätten, die Änderung in derselben Datei in derselben Zeile basierend auf der alten Version zusammenzuführen. Git weiß einfach nicht, welche Version der Änderung gültig ist und endet daher in %code% state.

Diese Zeilen sagen Ihnen, dass Sie einen Konflikt haben:

%Vor%

Es gibt mehrere Möglichkeiten, diese Art von Konflikten zu lösen, und alle sind manuell. Sie benötigen ein 3-Wege-Merge-Tool (kann googeln), mit dem Sie Änderungen vergleichen und das auswählen können, das Sie behalten möchten. %code% editor AFAIK hat dieses Werkzeug eingebettet, aber ich habe es nie benutzt.

Es gibt auch grafische Werkzeuge, mit denen Sie Konflikte in Software wie SourceTree oder ähnlichem lösen können, aber alles hängt davon ab, wo sich das Repository befindet und ob diese grafischen Werkzeuge dort verfügbar sind.

UPD: Sie können diese Änderungen der AM-Sitzung auch rückgängig machen, indem Sie %code% ausführen, das in die Nachricht geschrieben wird. Dadurch wird die Verzweigung in den Status vor Beginn der AM-Sitzung zurückgesetzt, wodurch die Patch-Informationen effektiv gelöscht werden.

    
___

Wenn ich git status starte, sehe ich Folgendes: %Vor% Also, was "dieser Idiot versucht mir zu sagen und was ist der richtige Weg, es zu lösen? Ich weiß nicht, ob das relevant ist, aber wir verwenden gerrit und alle Änderungen durchla...
05.03.2015, 10:36
3
Antworten

Wie ignoriere ich Dateien in Git merge?

Ich arbeite an einer (Django) -Website mit zwei Zweigen: master und dev . master ist die Produktionsversion und hier sollte keine Arbeit direkt ausgeführt werden. Alle Änderungen sollten aus dem Zusammenführen von dev branch stamme...
28.09.2013, 16:36
1
Antwort

Fehler bei der Verwendung von SourceTree mit Git: 'Summary' ist mit Code 128 fehlgeschlagen: fatal: Baum kann nicht gelesen werden

Bei Verwendung von SourceTree mit einem bestimmten Git-Repository von uns wurde ein Popup-Fenster mit der folgenden Fehlermeldung angezeigt:    'Zusammenfassung' fehlgeschlagen mit Code 128: fatal: Baum kann nicht gelesen werden 152c27e57424d...
27.09.2013, 16:02
1
Antwort

Wie man eine Datei bequem zwischen zwei Git-Repositories synchronisiert

Ich habe zwei git lokale Repositories. Beide teilen eine identische Datei unter einem anderen Pfad und unter einem anderen Namen. Momentan, wenn ich Änderungen mache, muss ich die Datei von einem Verzeichnis in ein anderes kopieren. Gibt es e...
05.10.2013, 14:20
2
Antworten

Kann ich sehen, welche Befehle git-gui ausführt?

Gibt es eine Möglichkeit zu sehen, welche Befehle git-gui wird ausgeführt? Entweder in einer Statusleiste oder log vielleicht? Das wäre sehr nützlich, um die Befehlszeile besser zu lernen.     
27.08.2013, 19:01
1
Antwort

Ermitteln Sie die Beziehung zwischen den Commits

In einer linearen Historie können zwei Commits A und B einen von drei Zuständen haben: A und B sind die gleichen commit A streng vor B B streng vor A Git's nichtlinearer Verlauf erlaubt vier zusätzliche Optionen A und B teilen sic...
13.06.2013, 16:37
1
Antwort

Git Flow mit GitHub - Pushing zu zentralen Repo

Ich habe ein Repository auf Git Hub eingerichtet und ich benutze git flow. Ich weiß, wie man Features, Releases und Hotfixes erstellt, aber aus dem, was ich bisher gelesen habe, scheint nicht klar zu sein, wie man zum zentralen Repository (Githu...
16.11.2012, 11:47