![]() |
Git - SourceTree - alten Quelltext auschecken
Hallo Zusammen,
ich habe privat die Quellen von mir und einem gutem Kollegen per git & SourceTree verwaltet und habe nun einen Bug, der zwar nachvollziehbar ist, aber an einer Stelle passiert, wo es augenscheinlich keinen Sinn ergibt. Ich denke, dass ich irgendwo anderes was kaputt gemacht habe und das erst später Auswirkungen zeigt. Nun denke ich, dass ich doch einfach mal die Version des Quelltextes zurück stellen kann (auf die Version von Anno dazumal) und mal schauen, ab welcher Änderung das nicht mehr geht / der Fehler auftritt. Nun nutzen wir allerdings von Git/SourceTree gerade mal einen Bruchteil der Funktionen. Wir haben beide kaum eine Ahnung, wie das alles funktioniert und bisher ist das auch mehr so ein "das was wir brauchen kann es, mehr interessiert uns nicht". Daher wollte ich hier mal fragen, was genau ich machen muss, bevor ich da was kaputt mache. Ich möchte auf meinem Rechner die Quellen auf eine ältere Version zurück stellen ohne die Quellen auf dem Server (im Git-Repository) oder die meines Kollegen zu verändern. Ich denke (gefährliches Halbwissen) die richtige Funktion wäre "auschecken". Leider verwenden die Anleitungen, die ich so spontan gefunden habe Fachbegriffe, die wohl ein gewisses Basiswissen benötigen, was wir beide nicht haben. Bei dieser Gelegenheit vielleicht mal gefragt: Wisst ihr eine Stelle, wo man mit Null Vorwissen eine kinderleichte Erklärung für Git & SourceTree bekommt? Wobei: Ich wollte nun weniger auf der Konsole mit git rumwerkeln, sondern wirklich nur wie das Ganze in SourceTree funktioniert. Was machen die Funktionen? Einfache Beispiele. Was passiert warum? Vielen Dank schonmal für die Mühe! Ich weiß, das Ganze klingt etwas nach "bevor ich mir selbst Mühe gebe frage ich einfach", aber ich bin für die bisher gefundenen Anleitungen einfach zu doof und gerade in diesem Fall zu unsicher. [Edit: Ich sehe gerade: das hätte nach "Sprachen und Entwicklungsumgebungen" -> "Andere Werkzeuge" gemusst! Sorry!] Liebe Grüße Incocnito |
Dieses Thema wurde am "11. Feb 2020, 17:34 Uhr" von "Luckie" aus dem Forum "Programmieren allgemein" in das Forum "Sonstige Werkzeuge" verschoben.
|
AW: Git - SourceTree - alten Quelltext auschecken
Reset müsste die Funktion sein, um zu einer bestimmten Revision zurückzugehn. (im SVN nennt die sich netter Weise "update to revision")
Local Repository (alte Revisionen) -> Reset commit-id -> Working Directory (die gewählte Revision) Nja, wenn es ordentlich versioniert ist, dann kann ja nichts kaputt gehn, egal was du machst ... kannst ja immer wieder zu einem alten Stand zurück. Es gibt ein paar nette Kurzübersichten über die wichtigsten Funktionen. ![]() ![]() ![]() ![]() ![]() Es gibt auch GUIs ala Tortoise-Git, da kannst im Log auf auf was gegen und einfach im Kontextmenü rumstöbern, bis sich was Passendes findet, wie z.B.
Delphi-Quellcode:
.
reset "master" to this
Auch wenn viele Linux-Gurus dir sagen werden GUI böse ... Console gut. :stupid: |
AW: Git - SourceTree - alten Quelltext auschecken
Das wichtigste zuerst: Wenn es committed ist und sogar auf den Server gepusht wurde, dann kann nichts kaputt gehen.
SourceTree sagt in der englischen Version zu dem gewünschten Schritt (eine ältere Revision benutzen) "Update to...". Das ist meiner Meinung nach eine der Grundfunktionen. Gratuliere, daß Ihr das bisher nicht gebraucht habt, spricht für Euren Code. Ausgehend von hier ![]() Sherlock |
AW: Git - SourceTree - alten Quelltext auschecken
Und: Leg ein Testprojekt an + probier an dem die Funktionen aus. Dann kannst du auch mal was zerstören (ja, das geht auch mit einem VCS) + du musst dich nicht erschießen. :- )
|
AW: Git - SourceTree - alten Quelltext auschecken
|
AW: Git - SourceTree - alten Quelltext auschecken
Zitat:
Wenn ich z.B. den branch "master" habe und 10 commits und der master zeigt auf den letzten commit also #10. Wenn man dann einen reset auf commit #5 macht, dann zeigt der master auf #5. Commit #6 bis #10 sind dann weg. Zuerst nur optisch, wenn sie nirgendwo mehr gebraucht werden, also auch nicht im sogenannten ref log sind sie nach dem nächsten pack (git gc) wirklich weg. Ich schlage vor auf den alten Stand einen neuen branch zu erzeugen und diesen auszuchecken. |
AW: Git - SourceTree - alten Quelltext auschecken
Zitat:
|
AW: Git - SourceTree - alten Quelltext auschecken
Zitat:
Das ref log hat eine Verfallsdauer von 90 Tagen als Default. Da haut auch nen standard git gc nix weg von. Dafür musst schon explizit nen git reflog expire now aufrufen. Siehe ![]() |
AW: Git - SourceTree - alten Quelltext auschecken
Also wenn git es tatsächlich erlaubt, mit simplen Befehlen das Repository derart zu zerstören, daß Commits auch auf dem Server entfernt werden können, dann bin ich froh bei Mercurial geblieben zu sein. Wollte zwar wegen meinem lokalen BitBucket auf Git umsteigen, aber mit hg-git komme ich dann weiterhin bestens zurecht.
Bei der Entscheidungsfindung hg oder git kam mir immer wieder mal das Grausen, was die git-Entwickler so für notwendig hielten... Und was ist eigentlich dieses "auschecken"? Hg und git brauchen sowas doch gar nicht. Man Updatet auf einen Stand und wenn man fertig ist, wird gemerged und commite, oder meinetwegen ein Pull-Request geschickt. Sherlock |
Alle Zeitangaben in WEZ +1. Es ist jetzt 01:16 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz