![]() |
Verständnisfrage zu Tortoisegit
Liste der Anhänge anzeigen (Anzahl: 2)
Hi zusammen
Wie arbeitet Git? Ich habe ein neues Repository auf meiner neueen externen Platte angelegt, dieses anschlieesend in mein Arbeitsverzeichnis (auf einer internen Partition) geclont und schliesslich das Arbeitsverzeichnis markiert und einen Comit auf das oben erwähnte Repository durchgeführt und nach einer Kontrolle der beteilgten Unterverzeichnisse und Dateien gepusht. Dabei habe ich mich nach ![]() Wie da beschrieben, erhielt ich eine erfolgreiche Rückmeldung, und als ich das Logeinsah, wurden mir alle beteiligten Dateien angezeigt. Nur - das Repository, in das ich commitet hatte, enthält nach wie vor keine meiner Projekt-Dateien... Was macht Tortoisegit, bzw. Git damit? Die jpegs im Anhang zeigen das Log und das von mir angelegte Repository. Gruss Delbor |
AW: Verständnisfrage zu Tortoisegit
Deine committeten Daten liegen verschlüsselt in den Unterordnern des Unterordners Objects des Git Repositories.
Deine eigentlichen Source Dateien werden ja eine Ebene über den ".git" Ordner gespeichert. Die Daten sind also schon vorhanden. Allerdings in einem Zustand, mit dem Du ohne GIT nichts mehr anfangen kannst. |
AW: Verständnisfrage zu Tortoisegit
Hi Aviator
Danke für Deine Antwort! Dieser Unterordner 'objects' ist nach wie vor wenige kb gross. Das bedeutet, das der hauptsächlich ein Zeiger auf die eigentlichen Daten ist. Andrerseits - ich hab das Repository gerade mal angelegt, aber noch keine Änderungen am Original vorgenommen. Und wenn nun Git gerademal die Änderungen im Repository speichert, ist da noch nichts, das gespeichert werden müsste. Was für mich zum jetzigen Zeitpunkt ziemlich spannend ist: Git speichert vieles auf C:\. Ich kann nur hoffen, dass die Versionsgeschichten nicht physisch da landen, sondern in den Repositorys, die von mir angelegt wurden, bleiben. Mein C:\ ist nicht beliebig gross... Gruss Delbor |
AW: Verständnisfrage zu Tortoisegit
Was ich von Zeit zu Zeit mal mache ist, ich clone das Projekt in ein neues Verzeichnis,
und synchronisiere diese zum Vergleich (ohne die .git Verzeichnisse natürlich). Man ist ja Paranoid :stupid: Du kannst natürlich über .gitignore Files steuern was überhaupt gespeichert werden soll und was nicht. Bisher war das immer 1:1 OK, also wird es GIT sauber speichern. Es ist schon ziemlich eingeschrumpft, mit der Historie, also da mache ich mir mittlerweile keine Sorgen mehr. Rollo |
AW: Verständnisfrage zu Tortoisegit
Hi Rollo
Zitat:
Gruss Delbor |
AW: Verständnisfrage zu Tortoisegit
Das bläht aber den GIT-Commit unnötig auf.
Ich weiss auch nicht ob diese History auch funktioniert wenn du auf einem 2ten Rechner arbeitest. Ich mache vor jedem Commit noch ein Clean per Batch-Datei, damit diese "Leichen" nicht aus Versehen mitgesichert werden. Rollo |
AW: Verständnisfrage zu Tortoisegit
Zitat:
Blind alles reinwerfen macht nicht viel Sinn. Denn dann weißt du ja gar nicht was wirklich zu dem Beschreibungstext gehört, den du angegeben hast und was nur "zufällig" mit drin ist. ;-) Du kannst dir ja mal meine kleine History anschauen als Beispiel: ![]() |
AW: Verständnisfrage zu Tortoisegit
Ich könnte mir vorstellen, dass Du auf der externen Platte ein "bare" Repository angelegt hast. Dann ist dort nicht der aktuelle Stand einsehbar, sondern das komplette Repository ist nur in der Verwaltungsstruktur. Das passt auch zum ".git" als Endung des Pfadnamens.
Wechsle doch mal in ein Terminal, dort in das Verzeichnis auf der externen Platte, und gebe dort
Code:
ein. Dann siehst Du alle Dateien, die darin gespeichert sind.
git rev-list --objects --all
Ein bare repo ist eben nicht dafür da, um drin zu arbeiten, also spart es sich die direkten Dateien und beinhaltet sie nur in seinen Datenbanken. |
AW: Verständnisfrage zu Tortoisegit
Zitat:
Für Delphi gibt's da diese Vorlage hier: ![]() Wenn diese .gitignore Datei in Deinem Repo liegt (am besten als erstes committen), dann wird Git den Historie-Folder sowie alles was nicht ins Repo gehört automatisch ignorieren. Da braucht man keine Batchfiles zum Aufräumen laufen lassen ;-) |
AW: Verständnisfrage zu Tortoisegit
Zitat:
Zitat:
hat man in quasi jedem Commit noch DFM-Dateien drin die man eigentlich gar nicht geändert hat. Bei C++ ist das wesentlich einfacher und sauberer. Bei Delphi muss man je nach Projekt seine eigene gitignore-Regeln erstellen. |
AW: Verständnisfrage zu Tortoisegit
Die DFM werden in meinem Berlin auch ständig geändert...
Sherlock |
AW: Verständnisfrage zu Tortoisegit
Zitat:
Die Explicit Werte und Imagelisten werden ja bei Formularen auch ohne diesen zusätzlichen Bug modifiziert. Deshalb macht das ohnehin Sinn. |
AW: Verständnisfrage zu Tortoisegit
Ich verbringe jeden Tag mehrere Minuten damit ungewollte Änderungen (hauptsächlich DFM und DPROJ) rückgängig zu machen bzw. die Änderungen explizit abzuwählen. Daran muss man sich wohl gewöhnen 8-)
|
AW: Verständnisfrage zu Tortoisegit
Ein paar der Änderungen bekommt man z.B. mit dem IDE-Fix-Pack weg, direkt beim Speichern.
Im Prinzip müsste man solche Ändernungen auch beim DFM-Diff rausfiltern lassen können. Für XML gibt es doch auch sowas. |
AW: Verständnisfrage zu Tortoisegit
Und wenn man dann einmal solch eine Änderung explizit macht? :P
|
AW: Verständnisfrage zu Tortoisegit
Das macht man nicht. :stupid:
Wenn sowas nur beim Vergleich gefilter wird, dann wird es beim nächsten Einchecken alles mit hochgeladen. Nur beim Vergleich, würde es heißen "keine Änderung", wenn sonst nichts Anderes geändert wurde. Der IDE-Fix-Pack schmeißt nur solche Property raus, die sonst kein Mensch verwendet. Aber nee, ExplicitWidth war in den DDevExtensions und nicht im IDE-Fix-Pack. ![]() ![]() Und nur weil man z.B. eine Datei-Endung auf ignore gesetzt hat, heißt es nicht, dass man soeine Datei nicht dennoch explizit aufnehmen kann. Diese Datei wird nur "standardmäßig" nicht als unversioniert aufgeliestet. |
Alle Zeitangaben in WEZ +1. Es ist jetzt 07:41 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