Ich habe gerade ein Projekt geöffnet, an dem ich vor zwei Wochen gearbeitet habe, und habe herausgefunden, dass meine Arbeitsversion mehrere Revisionen hinter sich hat (mit Mercurial über Bitbucket). Die neuesten kompilierten Assemblies auf meinem Rechner sind 100% up-to-date, aber meine lokalen und Remote-Code-Repositories fehlen alle neuen Code, den ich auf meinem Rechner in die neuesten Baugruppen kompiliert.Neuer Code ging AWOL, linke alte Revision. Wo ist es hin?
Zerlegen der letzten Kompilierung (einen Monat alt) mit Red Gate .NET Reflector, ich kann alle meine neuesten Code sehen, aber nichts davon ist jetzt irgendwo auf meinem Computer oder in einem meiner Repositories gefunden werden. Es ist wie alles mein Code ging zurück in die Zukunft. Ist es möglich, dass ich unbeabsichtigt einen Code aus meinem Remote-Repository zurückgesetzt und überschrieben habe und es keine Spur davon gibt?
Ich muss meine letzten Änderungen nicht übernommen haben, aber diese sollten immer noch in meiner Arbeitskopie sein? Mir sind keine System-Rollbacks bekannt. Ich führe Visual Studio 2010 auf meiner Windows 7 Dev Box aus und ich bin mir sicher, das ist nicht Mercurials Fehler, aber gibt es einige Funktionen, die mir nicht bekannt sind? Wie ist das möglich?
YYEEEEEEESS !!!! Meine neueren Versionen sind in den .orig-Dateien. Wie kann ich Mercurial mitteilen, meine aktuelle (veraltete) Version durch die (neueren) .orig-Dateien zu ersetzen? Ich werde Jon Skeet eine frische Kanne Kaffee bringen lassen. –
Nevermind, sortierte es mit 'für/f% i in ('dir/s/b * .orig') machen Sie @copy% i% ~ dpni', um die Arbeitskopie durch die .orig Dateien zu ersetzen. –
Froh, es hat geklappt. Sei vorsichtig mit dem Zurückkehren, wenn du nicht gewohnheitsmäßig verpflichtest. Oder besser noch zwanghaft. :) –