Die Binärdateien sind, wenn sie in Git gespeichert sind, verpflichtet, eine neue Version zu erstellen (d.h. bei der nächsten Übergabe berücksichtigt zu werden).
Also: brauchen Sie diese Binärdateien, oder können Sie sie neu erstellen?
Was die Quellen betrifft, so ist in Git, SHA1 ist König y da das Datum der Datei (Zeitstempel) in die Berechnung einfließt Da die externen Dateien inhaltlich sehr unterschiedlich sein können (weitere Dateien, temporäre Dateien, Dateien, die ignoriert werden sollen, ...), wäre es am besten, wenn Sie dies tun:
- in ein separates Verzeichnis entpacken
- Verwenden Sie ein Tool wie WinMerge um Änderungen anhand des Inhalts zu erkennen, sie zusammenzuführen und dann nur die Dateien zu übertragen, die sich tatsächlich weiterentwickelt haben.
Sie vergleichen einfach die beiden Verzeichnisse und Dateien: dasjenige, in dem Sie die Entwicklung Ihres weit entfernten Kollegen entpackt haben, und dasjenige, in dem Sie gerade arbeiten.
Dank an rq für den Hinweis, dass Zeitstempel nicht Teil der SHA1-Berechnung sind. Nur die:
- Typ
- Größe
- Inhalt eines BLOBs
sind Teil von SHA1-Berechnung :
(Quelle: <a href="http://alexgirard.com/git-book/assets/images/figure/object-blob.png" rel="nofollow noreferrer">alexgirard.com </a>)
Wenn Sie jedoch große Mengen von Dateien, die extern verwaltet werden, in ein Git-Repository importieren, besteht die Gefahr, dass Sie neue Dateien in von Git verwaltete Verzeichnisse einfügen und deren Inhalt und damit ihren SHA1-Schlüssel ändern, obwohl sich die alten, von Git verwalteten Dateien nicht geändert haben.
Das bedeutet, dass viele Änderungen im Baum künstlich sind, wenn es sich bei den neuen Dateien nur um temporäre Dateien oder Dateien handelt, die ohnehin ignoriert/neu erstellt/regeneriert werden sollten.
(Quelle: <a href="http://alexgirard.com/git-book/assets/images/figure/object-tree.png" rel="nofollow noreferrer">alexgirard.com </a>)
Der oben beschriebene Prozess gewährleistet lediglich eine extern Möglichkeit zu erkennen, was sich zwischen einer extern Menge von Dateien und eine von Git verwaltete Menge von Dateien und entscheiden, ob sie Teil des Git-Arbeitsverzeichnisses sein müssen oder nicht.
1 Stimmen
Ist Git nicht genau dafür gedacht? Bringen Sie den Entwickler dazu, GIT zu benutzen :/
1 Stimmen
Ja, mir ist klar, dass dies trivial wäre, wenn er Git verwenden würde. Ich hoffe jedoch, dass ich einen Weg finden kann, die Vorteile für mich zu nutzen, ohne jemand anderen davon überzeugen zu müssen, seine Entwicklungspraktiken zu ändern.