Ich würde vorschlagen, dass Sie zunächst einen Zweig erstellen, der mit dem Commit beginnt, der definitiv älter ist als der, auf dem die Vendor-Version basiert.
Dann sollten Sie in diesen neuen Zweig auschecken und die Arbeitskopie mit den Quellen Ihrer Lieferanten synchronisieren. Um dies zu tun, sollten Sie alle Quelldateien aus der Arbeitskopie löschen (stellen Sie sicher, dass Sie die .git
y .gitignore
Dateien!), und kopieren Sie dann Ihren Code dorthin. Sie könnten versuchen, mit rsync
dafür.
Danach können Sie mit git diff
um zu sehen, welche Änderungen vorgenommen wurden.
Übertragen Sie diese Änderungen in den neuen Zweig mit git commit
.
Wechseln Sie nun zum Master-Zweig ( git checkout master
), und legen Sie Ihren neuen Zweig auf diesen um ( git rebase new-branch
). Die Änderungen, die in beiden Zweigen waren (sie erscheinen, da Sie den genauen Commit, auf dem der Kernel des Herstellers basiert, nicht kennen), werden automatisch zusammengeführt und verursachen keine Konflikte. Andere Konflikte müssen aufgelöst werden.
Nach einem erfolgreichen Rebase enthält Ihr HEAD-Commit die von Ihrem Anbieter vorgenommenen Änderungen.
Ich hoffe, dass dies bei einer so alten Version funktioniert.