Hallo, wir erstellen ein Projekt in qt in einer VM (ubuntu) auf einem Windows rechner. Von der VM aus können wir nicht auf unser repo pushen (dürfen wir nicht). Also ist der Ablauf so, git in windows und rest in VM. Da sind mir jetzt ein paar sachen aufgefallen, die ich mir nicht erklären kann bzw. weiß. 1) Wenn ich in Windows git Dateien stashe oder branch Wechsel oder ähnliches, wird die Änderung in der VM nicht übernommen. Erst wenn ich die Datei in qt schließe und neu öffne, sehe ich die Änderung. - Gibt es eine möglichkeit, dass qt sich automatisch synchronisiert? 2) in der VM haben wir auch git. Diese sieht auch eigentlich unser repo. Ich war automatisch auf meinem Branch, wie auch unter windows. Wenn ich log mache, sehe ich auch alle commits. - Jetzt haben wir unter windows mit git schon einige Dateien hinzugefügt. Diese stehen in der VM als modified. Wenn ich mir die Änderung ansehe, sehe ich, dass es die Komplette datei ist, welche neu hinzugefügt worden ist. Warum sind diese nicht schon drinn? - In der VM werden mir dateien angezeigt, welche eigentlich auf der .gitignore sind. Diese werden mir unter windows auch nicht angezeigt. Muss man da auch noch was beachten? Ziel wäre es dann, nur in der VM zu arbeiten, also push und pulls unter Windows (oder wir bekommen dann doch irgendwann die rechte)
Johannes schrieb: > - Jetzt haben wir unter windows mit git schon einige Dateien > hinzugefügt. Diese stehen in der VM als modified. Wenn ich mir die > Änderung ansehe, sehe ich, dass es die Komplette datei ist, welche neu > hinzugefügt worden ist. > Warum sind diese nicht schon drinn? Vermutlich CR+LF <-> LF Problem. Schau Dir mal die Zeilenenden in 'nem Hexeditor genau an. Johannes schrieb: > - In der VM werden mir dateien angezeigt, welche eigentlich auf der > .gitignore sind Groß- und Kleinschreibung der Dateinamen prüfen. Unter Windoof wird das ignoriert, unter Linux aber nicht. Wo liegen die Dateien? In der VM oder auf einem Host-Share?
Johannes schrieb: > Erst wenn ich > die Datei in qt schließe du meinst den QtCreator? Qt ist die Bibliothek nutzt du aus der VM das selbe lokale Repo wie unter Windows (geshared oder so) oder ist das ein weiterer Repo-Clone in der VM?
Jim M. schrieb: > Vermutlich CR+LF <-> LF Problem. Schau Dir mal die Zeilenenden in 'nem > Hexeditor genau an. Ja, genau das war es. Die Dateien wurden auch nicht wie ich gesagt habe neu hinzugefügt, sondern nur die Zeilenenden geändert. Wenn man sich auch die ganze Datei angesehen hätte und nicht nur den anfang, hätte man es auch vorher gesehen. Jim M. schrieb: >> - In der VM werden mir dateien angezeigt, welche eigentlich auf der >> .gitignore sind > > Groß- und Kleinschreibung der Dateinamen prüfen. Unter Windoof wird das > ignoriert, unter Linux aber nicht. Das hat sich mit dem oberen punkt auch erledigt. Aber das mit der groß- kleinschreibung werde ich mir merken. cppbert schrieb: > du meinst den QtCreator? Qt ist die Bibliothek > > nutzt du aus der VM das selbe lokale Repo wie unter Windows (geshared > oder so) oder ist das ein weiterer Repo-Clone in der VM? Genau, meinte QtCreator. in der VM habe ich das repo geshared. Was aufgefallen ist, wenn ich jetzt in der VM dateien z.B. stashe oder ändere, wird es in Windows sofort gemerkt (getestet in einer in notepad++ geöffneten Datei). Anders herum ist das allerdings nicht. Also Änderungen unter Windows werden nicht in offenen Dateien synchronisiert
Man kann dem Windows-git abgewöhnen, die Zeilenenden zu versauen: https://help.github.com/en/github/using-git/configuring-git-to-handle-line-endings > git in windows und rest in VM Nach viel schlechten Erfahrungen mit der gleichen Arbeitsweise würde ich nach Möglichkeit vermeiden, auf einem Repo im shared folder zu arbeiten. Kannst du ein lokales Repo als Zwischenstation im shared folder deponieren und den Code, auf dem du arbeitest, im Dateisystem der VM?
Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.