Git erstellt einen Zweig auf einem Remote-Server. Wie füge ich ein leeres Verzeichnis zum Repository hinzu? Machen Sie alle Änderungen rückgängig, mit Ausnahme derjenigen, die bereits zum geplanten Commit hinzugefügt wurden

💖 Gefällt es dir? Teilen Sie den Link mit Ihren Freunden

Bei Verwendung der Passwortauthentifizierung:

  1. $ git clone https://username:password@gitsrv/opt/git/repository.git

Arbeiten mit Zweigen

Alle Filialen anzeigen:
  1. $git-Zweig
Erstellen Sie einen neuen Zweig:
  1. $git-Zweig
Gehe zu neuem Thread:
  1. $git-Kaufabwicklung
Erstellen Sie einen neuen Zweig und wechseln Sie dorthin:
  1. $ git checkout -b
Lokalen Zweig löschen:
  1. $ git branch -d
Löschen Sie einen Zweig aus einem Remote-Repository:
  1. $ git push origin --delete

Arbeiten mit Commits

Wie entferne ich das letzte Commit?

  1. $ git reset --soft HEAD^
Git How To. Kapitel 16: Commits rückgängig machen
Git How To. Kapitel 17. Commits aus einem Zweig entfernen
Offizielle Git-Dokumentation. Git-Grundlagen – Änderungen rückgängig machen

Wie ändere ich den letzten Commit?

  1. $ git new_file.txt hinzufügen
  2. $ git commit --amend

Wie ändere ich den Kommentar zum letzten Commit?

  1. $ git commit --amend
  2. $ git commit --amend -m "Neuer Kommentar"

Wie füge ich mehrere Commits zusammen?

  1. $ git rebase -i HEAD~3
Anstelle von HEAD~3 können Sie den Commit-Hash verwenden. Sie müssen den Hash des Commits übergeben, zu dem Sie alles zusammenführen (flachen) möchten.
Es öffnet sich ein Editor mit einer Liste von Commits, wobei der älteste Commit ganz oben steht.
  1. pick 1111111 Commit 1 Kommentar
  2. pick 2222222 2 Kommentare schreiben
  3. Wählen Sie 3333333. Geben Sie 3 Kommentare ein
Sie müssen die Spitzhacke durch Kürbis ersetzen, damit es so aussieht:
  1. pick 1111111 Commit 1 Kommentar
  2. squash 2222222 2 Kommentare schreiben
  3. Squash 3333333 3 Kommentare schreiben
Als nächstes müssen Sie die Datei speichern und beenden. Wird wieder geöffnet sein Texteditor mit allen Commit-Kommentaren. Sie müssen bearbeiten, speichern und beenden. Nach diesen Schritten werden die Commits zusammengeführt.

Wie kann ich Änderungen an einer bestimmten Datei rückgängig machen und sie in den Zustand zurückversetzen, in dem sie sich nach dem letzten Commit befand?

  1. $ git checkout – file.txt

Wie kann ich alle nicht festgeschriebenen (nicht festgeschriebenen) Änderungen rückgängig machen?

  1. $git-Kaufabwicklung

Wie halte ich einige Dateien für das nächste Commit bereit?

Nehmen wir an, Sie möchten Änderungen in einigen Dateien festschreiben und beim nächsten Festschreiben Änderungen in anderen Dateien festschreiben. Anschließend können Sie sie vorübergehend aus dem Repository entfernen (Dateien entladen) und dann wieder hinzufügen.
  1. $ git reset HEAD file.txt
Dieser Befehl entfernt die Datei aus dem Repository; sie verbleibt in den alten Commits. Head zeigt auf den letzten Commit im aktuellen Zweig.

Wenn Sie nicht in ein Remote-Repository pushen können, weil die aktuelle Version des Repositorys niedriger ist als die im Remote-Repository

In diesem Fall können Sie einen erzwungenen Push durchführen.
  1. $ git push -f origin master

Zweige zusammenführen

Wie kann ich nur einige Dateien aus einem anderen Zweig übernehmen?

  1. $ git checkout branchname -- path/to/file.file

Remote-Repositorys

Informationen zu einem Remote-Repository anzeigen

  1. $ git remote show origin
Auf dem Bildschirm wird etwa Folgendes angezeigt:
  1. *entfernter Ursprung
  2. Abruf-URL: git@gitsrv:/opt/git/test-project.git
  3. Push-URL: git@gitsrv:/opt/git/test-project.git
  4. HEAD-Zweig: Master
  5. Remote-Zweig:
  6. Master neu (nächster Abruf wird in Remotes/Origin gespeichert)
  7. Lokaler Verweis für „git push“ konfiguriert:
  8. Master drückt auf Master (lokal veraltet)

Hinzufügen eines Remote-Repositorys

  1. $ git remote add origin git@gitsrv:/opt/git/test-project.git

Remote-Branches sind Verweise auf den Status von Branches in Ihren Remote-Repositorys. Dies sind lokale Zweige, die nicht verschoben werden können. Sie verschieben sich automatisch, wenn Sie über das Netzwerk kommunizieren. Remote-Zweige fungieren als Lesezeichen, um Sie daran zu erinnern, wo sich Zweige in Remote-Repositorys befanden, als Sie das letzte Mal eine Verbindung zu ihnen hergestellt haben.

Wir verwenden den Hauptzweig als Quelle des Zweigs, den er enthält letzte Version. Um sofort loslegen zu können, wechseln wir in eine Filiale und aktivieren dort die Filiale „Zur Kasse“. Auf der Seite „Filialen“ wird die lokale Filiale angezeigt. Die fette Schriftart und die Ausgabe oben im Fenster zeigen, dass sich unsere Dateien auf dem gleichen Niveau befinden.

Hinzufügen eines Remote-Repositorys

Jetzt können wir die neue Funktion integrieren. Daher sollten Sie im Abschnitt „Nicht verfolgte Dateien“ prüfen, ob Dateien vorhanden sind, die sich auf das Projekt beziehen. Es erscheint eine Meldung mit dem wichtigen Hinweis, dass Änderungen nur lokal gespeichert werden und dennoch an den Server gesendet werden müssen. Jetzt ist es an der Zeit, die neue Funktion dem Rest des Teams bereitzustellen. Unser Ortsverband muss veröffentlicht werden. Klicken Sie auf der Seite „Zweige“ mit der rechten Maustaste auf einen unveröffentlichten Thread, um im Kontextmenü „Veröffentlichen“ auszuwählen.

Sie sehen aus wie (Name des Remote-Vertreters)/(Zweigstelle). Wenn Sie beispielsweise sehen möchten, wie der Master-Zweig auf dem Ursprungsserver aussah, als Sie das letzte Mal eine Verbindung hergestellt haben, sehen Sie sich den Ursprungs-/Master-Zweig an. Wenn Sie und Ihr Partner an demselben Problem arbeiten und er den iss53-Thread gepostet hat, haben Sie möglicherweise einen eigenen Lokale Niederlassung iss53 ; aber dieser Zweig auf dem Server zeigt auf das Commit in origin/iss53 .

Wie lassen sich Zusammenführungskonflikte lösen?

Während der Codeüberprüfung neue Funktion muss an den Hauptzweig übergeben werden. Zunächst werden der Quellzweig und der Zielzweig ausgewählt. Die Anfrage kann nun erstellt werden. Die als Prüfer ausgewählte Gruppe wird benachrichtigt und kann nun den Übertragungsantrag einsehen. Kommentare können gegen einen Pull Request ausgetauscht werden. Jeder Prüfer kann abstimmen: genehmigt, mit Anmerkungen genehmigt, abgelehnt usw. Besonders wichtig ist die Tatsache, dass es keine Zusammenführungskonflikte gibt. Wenn die eingereichten Änderungen nicht mit dem von der Community akzeptierten Status kompatibel sind, muss der Transferantragsteller seine Änderungen neu schreiben.

Das mag alles verwirrend sein, also schauen wir uns ein Beispiel an. Nehmen wir an, Sie haben Ihren eigenen Git-Server in Ihrem Netzwerk unter git.ourcompany.com. Wenn Sie etwas daraus klonen, nennt Git es automatisch origin , übernimmt alle Daten von dort, erstellt einen Zeiger auf das, worauf der Master-Zweig verweist, und nennt es lokal origin/master (Sie können es jedoch nicht verschieben). Git stellt Ihnen außerdem Ihren eigenen Master-Zweig zur Verfügung, der an derselben Stelle wie der Master-Zweig von Origin beginnt, sodass Sie etwas haben, mit dem Sie arbeiten können (siehe Abbildung 3-22).

In klassischen zentralen Versionskontrollsystemen liegt diese Arbeit beim Reviewer. Nach der Prüfung kann der Prüfer die Zusammenführung direkt im Browser durchführen. Die neu entwickelte Funktion ist somit integriert. Lokales Repository kennt die Zusammenführung im zentralen Repository noch nicht. Darüber hinaus gibt es möglicherweise weitere Commits, die wir ebenfalls vorantreiben möchten.

Die Dateien wurden nicht geändert. Die Liste dieser Commits für den Hauptzweig ist nun vollständig. Hier müssen Sie ggf. zunächst den Zug herausziehen Letzte Änderungen. Nur dann können Commits gepusht werden. Die hervorragende Synchronisierungstaste ist eine Push-and-Pull-Funktion in einem. Es lädt alle Änderungen vom Server herunter und sendet eine eigene Nachricht.

Abbildung 3-22. Durch das Klonen eines Git-Projekts erhalten Sie einen eigenen Master-Zweig und origin/master, der auf den Master-Zweig im Ursprung verweist.

Wenn Sie etwas in Ihrem lokalen Master-Zweig tun und in der Zwischenzeit jemand anderes Änderungen an git.ourcompany.com pusht und den Master-Zweig dort aktualisiert, werden Ihre Geschichten anders weitergehen. Außerdem wird sich Ihr Ursprungs-/Masterzeiger nicht bewegen, bis Sie den Ursprungsserver kontaktieren (siehe Abbildung 3-23).

Am Ende geht der Zustand des führenden Zweigs nun in den stabilen Zweig über. Hierzu wird eine Zusammenführung durchgeführt. Eine neue Version kann jetzt aus dem stabilen Zweigstatus gezogen werden. Sie benötigen kein Login und müssen sich nirgendwo registrieren. Irgendwann werden Sie es brauchen, wenn Sie an mehreren Projekten arbeiten.

Wählen Sie dazu „Extras → Optionen“. Geben Sie im nächsten Dialogfenster den gewünschten Namen und die gewünschte Adresse ein Email, die Sie zur Versionskontrolle verwenden möchten. Diese Informationen werden nur lokal gespeichert und nirgendwo im Internet verwendet.



Abbildung 3-23. Wenn lokal gearbeitet wird und jemand Änderungen auf einen Remote-Server überträgt, geht jede Geschichte anders weiter.

Um Ihre Arbeit synchron zu halten, führen Sie den Befehl git fetch origin aus. Dieser Befehl sucht nach dem Serverursprung (in unserem Fall ist es git.ourcompany.com). ruft alle Daten ab, die Sie noch nicht haben, und aktualisiert Ihren lokalen Datenspeicher; Verschiebt den Ursprungs-/Masterzeiger an eine neue Position (siehe Abbildung 3-24).

Und erstellen Sie jetzt genau ein solches Repository, indem Sie auf „Hinzufügen“ klicken. Wir gehen nun davon aus, dass Sie Ihre Masterarbeit bereits begonnen und in einem Verzeichnis namens „Masterarbeit“ abgelegt haben. Geben Sie die Repository-Namen an, die mit dem Namen des vorhandenen Verzeichnisses übereinstimmen müssen, sowie eine Beschreibung, wo sich das Verzeichnis befindet.

Wie füge ich ein leeres Verzeichnis zum Repository hinzu?

Sie sehen nun alle Dateien in Ihrem Verzeichnis in einer Ansicht, die Ihnen alle Änderungen anzeigt, die noch nicht synchronisiert sind. Konkret schauen Sie sich nun an, welche Dateien Sie versionieren möchten. Sie können Dateitypen ausschließen, um das Entfernen von Häkchen zu vermeiden unnötige Dateien, was Sie nicht jedes Mal im Repository haben möchten. Wählen Sie „Extras → Einstellungen“.


Abbildung 3-24. Der Befehl „git fetch“ aktualisiert Ihre Remote-Referenzen.

Um zu veranschaulichen, wie Remote-Branches in einer Situation mit mehreren Remote-Servern aussehen würden, gehen wir davon aus, dass Sie über einen weiteren internen Git-Server verfügen, der nur von einem Ihrer Entwicklungsteams für die Entwicklung verwendet wird. Dieser Server befindet sich unter git.team1.ourcompany.com. Sie können ihn als neuen Remote-Link zu dem Projekt hinzufügen, an dem Sie gerade arbeiten, indem Sie den Befehl git remote add auf die gleiche Weise wie in Kapitel 2 beschrieben verwenden. Benennen Sie diesen Remote-Server teamone , was die Abkürzung für die vollständige URL ist (siehe Abbildung). .3-25).

Arbeiten Sie weiter und nehmen Sie Änderungen vor

Sie sollten sie Ihrem Repository hinzufügen. Um sicherzustellen, dass Sie dies nicht jedes Mal neu konfigurieren müssen, machen Sie die Liste global bekannt. Wählen Sie nun „Extras → Shell hier öffnen“. Im sich öffnenden Fenster Befehlszeile Geben Sie den folgenden Befehl ein. Wenn Sie möchten, können Sie auch mehr hinzufügen detaillierte Beschreibung im Feld „Erweiterte Beschreibung“. Sie fügen zusätzliche Teile hinzu, es gibt einige Grafikdateien oder einige Rohdaten und Notizen, von denen Sie gerne Versionen haben würden.



Abbildung 3-25. Hinzufügen eines zusätzlichen Remote-Servers.

Jetzt können Sie git fetch teamone ausführen, um alles abzurufen, was sich auf dem Server befindet und nicht auf Ihrem. Seit in dieser Moment Dieser Server verfügt nur über einen Bruchteil der Daten des Ursprungsservers. Git ruft keine Daten ab, sondern pusht einen Remote-Zweig namens teamone/master , der auf denselben Commit verweist wie der Master-Zweig auf dem Teamone-Server (siehe Abbildung 3). -26).

Wenn Sie nicht in ein Remote-Repository pushen können, weil die aktuelle Version des Repositorys niedriger ist als die im Remote-Repository

Durch Klicken auf den Dateinamen oder das Häkchen links daneben können Sie diesen Commit auswählen oder die Auswahl aufheben. Entweder möchten Sie bestimmte Änderungen an einem Commit festschreiben, oder Sie möchten bestimmte Dateien nicht verwenden. Jetzt sehen Sie alle vorherigen Commits zusammen mit ihren kurze Beschreibungen, und deshalb sind sie so wichtig.

Wenn Sie aus dieser Liste auswählen, können Sie genau sehen, was sich geändert hat. Dadurch wird ein neues Commit erstellt, das Ihre letzten Aktionen rückgängig macht. Wenn Sie zu einem weiteren Commit-Status wechseln möchten, wählen Sie „Rollback zu diesem Commit“ mit dem entsprechenden Commit. Dadurch werden Ihre Dateien im Verzeichnis geändert. Stellen Sie daher sicher, dass Sie vorher alles, was Sie möglicherweise benötigen, in das Repository verschieben!



Abbildung 3-26. Sie haben jetzt einen lokalen Link zur Hauptniederlassung auf Teamone.

Änderungen einreichen

Wenn Sie einen Serverfix-Zweig haben, an dem Sie mit jemand anderem arbeiten möchten, können Sie ihn auf die gleiche Weise pushen, wie Sie Ihren ersten Zweig eingereicht haben. Führen Sie Git Push (Remote-Server) aus (Zweig):

Dann müssen Sie einen „Fork“ erstellen, der im Versionierungsjargon als „Zweig“ bezeichnet wird. Alles ist in Ordnung, denn Geet hilft später dabei, die Zweige wieder zusammenzuführen. In diesem Dialogfeld steuern Sie die Verzweigungszusammenführung. Wenn Sie in verschiedenen Zweigen an den gleichen Stellen und in den gleichen Zeilen etwas geändert haben, liegt natürlich ein Konflikt bei der Zusammenführung vor. Du musst es selbst reparieren.

In dieser Ansicht können Sie zwar das Durcheinander erkennen, es aber nicht beheben. Passen Sie die relevanten Abschnitte an Ihre Bedürfnisse an. Markierungslinien entfernen. Anschließend können Sie erneut festlegen und als entsprechenden Kommentar „Manuelle Zusammenführung“ angeben.

$ git push origin serverfix Objekte zählen: 20, fertig. Objekte komprimieren: 100 % (14/14), fertig. Schreibobjekte: 100 % (15/15), 1,74 KiB, fertig. Insgesamt 15 (Delta 5), ​​wiederverwendet 0 (Delta 0) Bis [email protected]:schacon/simplegit.git * serverfix -> serverfix

Es ist in gewisser Weise eine Abkürzung. Git erweitert den Namen des Serverfix-Zweigs automatisch zu refs/heads/serverfix:refs/heads/serverfix, was bedeutet: „Nimm meinen lokalen Serverfix-Zweig und aktualisiere den Remote-Serverfix-Zweig davon.“ Wir werden den refs/heads/-Teil ausführlich in Kapitel 9 besprechen, er kann jedoch normalerweise weggelassen werden. Sie können auch git push origin serverfix:serverfix ausführen – das Gleiche wird passieren – es heißt „Nehmen Sie meinen Serverfix und machen Sie ihn zu einem Remote-Serverfix“. Sie können dieses Format verwenden, um einen lokalen Zweig an einen Remote-Zweig mit einem anderen Namen zu übertragen. Wenn Sie nicht möchten, dass der Zweig auf dem Remote-Server den Namen serverfix erhält, führen Sie anstelle des vorherigen Befehls git push origin serverfix:awesomebranch aus. Dadurch wird Ihr lokaler Serverfix-Zweig an den awesomebranch-Zweig des Remote-Projekts gesendet.

Stellen wir uns ein einfaches Beispiel für Verzweigungen und Zusammenführungen mit einem Workflow vor, der in der Realität dargestellt werden kann. Stellen Sie sich vor, Sie würden diese Schritte befolgen.

  • Sie arbeiten an einer Website.
  • Sie erstellen einen Zweig für neues Thema an dem du arbeiten möchtest.
  • Du arbeitest gerade an diesem Thread.
An dieser Stelle erhalten Sie die Meldung, dass Sie das Problem kritisch lösen. Und Sie werden diese Schritte befolgen.

Grundlegende Verzweigungsverfahren

Stellen Sie sich vor, Sie arbeiten an einem Projekt und haben bereits mehrere Bestätigungen. Erfassen Sie einfache und kurze Bestätigungen. Sie beschließen, Problem Nr. 53 in dem System zu bearbeiten, das Ihr Unternehmen zur Problemverfolgung verwendet. Da es sich bei Problem Nr. 53 um ein spezifisches und aktuelles Problem handelt, an dem Sie arbeiten werden, erstellen Sie einen neuen Zweig dafür. Abbildung 3-11 zeigt das Ergebnis.

$ git fetch origin remote: Objekte zählen: 20, fertig. remote: Objekte komprimieren: 100 % (14/14), fertig. remote: Gesamt 15 (Delta 5), ​​wiederverwendet 0 (Delta 0) Objekte auspacken: 100 % (15/15), fertig. Von [email protected]:schacon/simplegit * serverfix -> origin/serverfix

Es ist wichtig zu beachten, dass Sie beim Abrufen neue Remote-Zweige nicht automatisch lokal bearbeitbare Kopien dafür erhalten. Mit anderen Worten: In unserem Fall erhalten Sie keinen neuen Serverfix-Zweig, sondern nur einen Origin-/Serverfix-Zeiger, den Sie nicht ändern können.

Erstellen Sie einen Zeiger auf einen neuen Zweig. Sie arbeiten an einer Website und bestätigen Änderungen. Dann erhalten Sie einen Anruf, der Sie über ein weiteres dringendes Problem mit der Website informiert. Ein Problem, das Sie sofort lösen müssen. Es ist am besten, immer für einen sauberen und sauberen Arbeitszustand zu sorgen, bevor Sie zwischen den Zweigen springen. Und dafür haben wir einige Verfahren, die wir später sehen werden.

Da wir alle Änderungen bestätigt haben, können wir vorerst problemlos in den Hauptzweig wechseln. Danach haben Sie Arbeitsordner Genau wie es war, bevor Sie mit der Arbeit an dem Problem begonnen haben. # Und Sie können sich auf das neue drängende Problem konzentrieren. Um sicherzustellen, dass Ihre Arbeitskopie genau mit dem Zweig im letzten Commit Ihrer Änderungen übereinstimmt. Kehren Sie zum unmittelbaren Problem zurück. Wir werden einen neuen Hotfix-Zweig erstellen, an dem wir bis zur Lösung arbeiten.

Um diese Entwicklungen in Ihrem aktuellen Arbeitszweig zusammenzuführen, führen Sie git merge origin/serverfix aus. Wenn Sie möchten, dass Ihr eigener Serverfix-Zweig funktioniert, können Sie ihn vom Remote-Zweig aus erstellen:

$ git checkout -b serverfix origin/serverfix Zweigstellen-Serverfix wurde eingerichtet, um Referenzen/Remotes/Origin/Serverfix der entfernten Zweigstelle zu verfolgen. Auf einen neuen Zweig „serverfix“ umgestellt

Dadurch erhalten Sie eine lokale Niederlassung, an der Sie arbeiten können. Es beginnt dort, wo sich origin/serverfix befindet.

Zweige auf einem Remote-Server löschen

Abbildung 3 ist ein Patch-Zweig, der auf dem ursprünglichen Master-Zweig basiert. Sie können Tests ausführen, überprüfen, ob die Lösung korrekt ist, und die Änderungen an den Hauptzweig übertragen, um sie live zu schalten. Dies nennt man „Schnellvorlauf“. Jetzt sind die vorgenommenen Änderungen bereits im Commit-Snapshot enthalten, der vom Master-Zweig markiert wurde. Und Sie können sie erweitern.

Nach der Zusammenführung verweist der Master-Zweig auf dieselbe Site wie der Patch-Zweig. Indem Sie das unmittelbare Problem lösen, das Ihre Arbeit unterbrochen hat, können Sie dorthin zurückkehren, wo Sie waren. Aber zuerst ist es interessant, den Hotfix-Zweig zu löschen. Weil wir dies nicht mehr benötigen, da es auf genau dieselbe Site verweist wie der Hauptzweig.

Filialverfolgung

Beim Auschecken eines lokalen Zweigs mithilfe von git checkout aus einem entfernten Zweig wird automatisch etwas namens „ verfolgter Zweig. Überwachte Zweige sind lokale Zweige, die direkt mit einem Remote-Zweig verbunden sind. Wenn Sie git push eingeben, während Sie sich in einem verfolgten Zweig befinden, weiß Git bereits, an welchen Server und Zweig Änderungen gepusht werden sollen. Wenn Sie einen Git-Pull auf einen dieser Zweige ausführen, werden in ähnlicher Weise zunächst alle Remote-Referenzen abgerufen und dann automatisch mit dem entsprechenden Remote-Zweig zusammengeführt.

Grundlegende Schmelzverfahren

Und damit sind Sie bereit, wieder an Problem Nr. 53 zu arbeiten. Nehmen wir an, dass Ihre Arbeit an Problem Nr. 53 nun abgeschlossen ist und in den Master-Zweig eingebunden werden kann. Dies unterscheidet sich geringfügig von der zuvor durchgeführten Hotfix-Zusammenführung. In diesem Fall divergierte die Entwicklung bereits zu einem früheren Zeitpunkt.

Große Konflikte, die bei Fusionen auftreten können

Wir betrachten diesen Prozess als „bestätigte Fusion“. Und der Unterschied besteht darin, dass er mehr als einen Vater hat. Es ist erwähnenswert, dass Git selbst automatisch den besten gemeinsamen Vorfahren für die Zusammenführung bestimmt. Und schließen Sie das Problem manuell im Issue-Tracker Ihres Unternehmens. In manchen Fällen sind Fusionsprozesse meist nicht fließend. Wenn Sie beispielsweise in Problem Nr. 53 denselben Teil geändert haben, der auch im Patch-Problem geändert wurde.

Beim Klonen eines Repositorys wird normalerweise automatisch ein Master-Zweig erstellt, der origin/master verfolgt, sodass git push und git pull sofort für diesen Zweig funktionieren und keine zusätzlichen Argumente erfordern. Sie können jedoch die Verfolgung anderer Zweige des Remote-Repositorys konfigurieren. Ein einfaches Beispiel dafür haben Sie gerade gesehen: git checkout -b [branch] [delete. server]/[branch] . Wenn Sie verwenden Git-Versionen 1.6.2 oder höher können Sie auch die Verknüpfung --track verwenden:

Möglicherweise kommt es zu einem Zusammenführungskonflikt. Vielmehr bleibt er in diesem Prozess stehen und wartet auf die Lösung des Konflikts. Alles, was widersprüchlich ist und nicht gelöst werden kann, wird als „nicht verschmelzend“ bezeichnet. Lesezeichen helfen Ihnen, wenn Sie Dateien manuell öffnen und bearbeiten, um sie zu reparieren.

Machen Sie alle Änderungen rückgängig, mit Ausnahme derjenigen, die bereits zum geplanten Commit hinzugefügt wurden

Die Konfliktdatei enthält. Um einen Konflikt zu lösen, müssen Sie Inhalte von der einen oder anderen Seite manuell auswählen. Sie können beispielsweise den Block so ändern, dass er so bleibt. Diese Korrektur enthält ein wenig von beiden Teilen. Dadurch wird das entsprechende Rendering-Tool gestartet und Sie können Konflikte damit lösen. Wenn Sie ein anderes als das Standardtool verwenden möchten, können Sie es aus der am Anfang angezeigten Liste der unterstützten Tools auswählen. Geben Sie einen Namen für das Werkzeug ein.

$ git checkout --track origin/serverfix Branch-Serverfix wurde eingerichtet, um Remote-Branch-Refs/Remotes/Origin/Serverfix zu verfolgen. Auf einen neuen Zweig „serverfix“ umgestellt

Um einen lokalen Zweig mit einem anderen Namen als den entfernten Zweig einzurichten, können Sie problemlos die erste Version mit einem anderen lokalen Zweignamen verwenden:

$ git checkout -b sf origin/serverfix Branch sf wurde eingerichtet, um Remote Branch refs/remotes/origin/serverfix zu verfolgen. Auf einen neuen Zweig „sf“ umgestellt

Jetzt wird Ihr lokaler SF-Zweig automatisch Änderungen von Origin/Serverfix übertragen und abrufen.

Zweige auf einem Remote-Server löschen

Nehmen wir an, Sie und Ihre Co-Autoren haben ein Feature fertiggestellt und es in den Master-Zweig auf einem Remote-Server (oder einen anderen Zweig, in dem stabiler Code gespeichert ist) eingefügt. Sie können einen Zweig auf einem Remote-Server löschen, indem Sie die etwas umständliche Syntax git push [delete. server] :[branch] . Gehen Sie wie folgt vor, um den Serverfix-Zweig auf dem Server zu entfernen:

$ git push origin:serverfix An [email protected]:schacon/simplegit.git - Serverfix

Klatschen. Auf Ihrem Server gibt es keinen Zweig mehr. Möglicherweise möchten Sie die aktuelle Seite mit einem Lesezeichen versehen, da Sie diesen Befehl benötigen und wahrscheinlich die Syntax vergessen. Sie können sich diesen Befehl merken, indem Sie zur Syntax git push [delete. Server] [lokal. Thread]:[gelöscht branch], den wir uns etwas früher angesehen haben. Teil weglassen [loc. thread] sagen Sie im Wesentlichen: „Nehmen Sie das Nichts in meinem Repository und machen Sie es so, dass es in [gelöscht. Zweig] es war das Gleiche.“



Freunden erzählen