wake-up-neo.com

Push schafft neue Remote-Köpfe! (Hast du vergessen zu verschmelzen? Mit Push -f for force)

Ok, ich hatte ein kleines Google und konnte keine Lösung finden, da ich über dieselbe Nachricht gestolpert bin, aber auf unterschiedliche Weise, wie die Leute sie bekommen haben. Ich bin neu bei Mecurial und möchte sichergehen, dass ich dies richtig mache.

Ich erhalte die Fehlermeldung wie oben. Ich habe eine Dev-Site und eine Live-Site und versuche, den Code in die Codebase zu verschieben.

Gestern habe ich aus Versehen hg add gemacht, der alle Medien hinzugefügt hat, die ich nicht machen wollte. Ich habe nachher zurückgezogen, um alle Mediendateien aus der Codebase zu entfernen, dann festzuschreiben und die Änderungen zu übernehmen. Heute habe ich also Änderungen an der CSS-Datei und einigen Vorlagen vorgenommen. Ich bin gegangen, um meine Änderungen festzuschreiben und zu drücken, aber wenn ich hg Push starte, erhalte ich den obigen Fehler.

Ich habe hg log ausgeführt und es gibt nur 6 Commits, da es sich um ein sauberes/neues Zweig-/Projekt handelt. Jede Hilfe wäre sehr dankbar und ich entschuldige mich, wenn ich nichts richtig erklärt habe!

64
JDavies

Dies ist keine Fehlermeldung. Es ist eine völlig normale Situation. Diese Botschaft besagt: "Hey, andere Leute haben neue Arbeit in dieses Repository gesteckt, während Sie Ihre Arbeit erledigten. Sie sollten wahrscheinlich ihre in Ihre integrieren, damit sie Ihre nicht in ihre integrieren muss?"

Also zuerst ein:

hg pull

und dann ein:

hg merge

Übrigens hat die revert, die Sie tatsächlich gemacht haben, wenn Sie den hg revert-Befehl tatsächlich verwendet haben, diese Dateien nicht aus dem Verlauf entfernt, so dass Ihr Verlauf wahrscheinlich ziemlich groß ist.

Lesen Sie die ersten Kapitel des Mercurial-Buches , in dem diese Situationen sehr gut behandelt werden.

63
Ry4an Brase

Wenn Sie Ihre widersprüchlichen Änderungen abbrechen möchten

hg outgoing

Es sollten Zeilen angezeigt werden, die Ihre festgeschriebenen/widersprüchlichen Änderungen enthalten, die nicht übertragen werden. Suchen Sie nach der Änderungssatzversion. Hier 64

searching for changes
changeset:   64:1830948c246e

Dann 

hg strip 64
16
Woody

Das hat bei mir funktioniert.

hg Push -f

Versuchen Sie es für weitere Befehle

hg help Push
12

Auf TortoiseHg können Sie Folgendes tun:

1 => Übertragen Sie Ihre Dateien 

2 => Gehen Sie zu Ihrem neuen Zweig, wo Sie Ihren Code verschieben möchten

3 => Führen Sie auf diesem Zweig Zusammenführen mit Entwickeln aus

4 => Drücken Sie Ihren Code ohne Fehler!

1
Kamil Naja

Wenn Sie die Workbench zum Übertragen der Änderungen verwenden, können Sie zuerst versuchen, ausgehende Änderungen zu erkennen. Weitere Informationen finden Sie im angehängten Bild

enter image description here

Dies gibt Ihnen Informationen darüber, was Sie pushen werden. Mein Problem war, dass ich ein altes draft hatte, das noch gepusht werden musste. Ich konnte mit dem Push fortfahren, nachdem ich strip für den alten Entwurf ausgeführt habe.

0
Akbar Badhusha

Der beste Weg, mit Mercurial zu arbeiten, ist, git init in seinem Ordner zu erstellen. Und dann mit Git vor Ort arbeiten. Verschmelze in Git und so weiter. Und dann einfach mit Mercurial zurückschieben. Das ist die einfachste Art, mit Mercurial zu arbeiten. Sonst funktioniert Mercurial einfach nicht.

0
Arkady