Git ohne GitHub im lokalen Netzwerk nutzen

Ist es auch, aber nicht mit deinem bzw. diesem Setup :).

Eigentlich musst Du jetzt nur noch auf der Linux VM arbeiten. Vergiss das Pushen per Windows Client in das Windows Repo.

Ich würde folgendes machen:

Den letzten Stand ins Windows Repo commiten und dann das Repo auf der Linux VM löschen oder woanders hin kopieren.

In der Linux VM dann folgendes:
git clone \\Pfad\zum\Windows\Repo

somit hat Du eine Kopie des Windows Repo auf Deiner Linux VM. Du kannst jetzt per console immer easy was ins Linux Repo einchecken, es macht an dieser stelle Sinn sich nen Bash Alias einzurichten, das nutze ich jedenfalls:

vi ~/.bash_profile

und dann irgendwo das hier einfügen:

alias gitadd='git add . -A'

ausloggen und neu einloggen, damit das bash profile geladen wird.

jetzt machst du änderungen an den dateien in dem linux repo. bevor du was einchecken kannst, musst du genau definieren, welche dateien bei diesem commit eingecheckt werden soll... mit "git status" siehst du die dateien, die geändert wurden und die können dann per "git add /pfad/zur/datei" oder mit dem neu angelegten bash alias (einfach "gitadd" im verzeichnis des linux repos machen) hinzugefügt werden, anschließend ein "git commit -m "mein toller commit"" und es ist in der linux vm eingecheckt.

wenn du das ganze nun in das windows repo pushen willst, dann musst du nur ein "git push" machen.
falls jemand änderungen ins windows repo commited hat, musst du auf deiner linux vm erstmal den stand mit "git pull" aktualisieren / mergen.

ich hoffe, dass das ganze halbwegs verständlich war :).
 
hedsht schrieb:
Ist es auch, aber nicht mit deinem bzw. diesem Setup :).

Eigentlich musst Du jetzt nur noch auf der Linux VM arbeiten. Vergiss das Pushen per Windows Client in das Windows Repo.
Also auf der Linux VM zu arbeiten ist nicht möglich. Ich brauche diverse Programme auf dem Windows Rechner (Lotus Notes, verschiedene Netzlaufwerke im Unternehmensnetzwerk an einer Domäne), und da ich auch an Projekten arbeite, die auf einem IIS laufen, müsste ich dann immer hin und her wechseln, was allerdings nicht wirklich produktiv ist ;) Alles in der Linux VM einzurichten ist leider auch keine Option.

hedsht schrieb:
Ich würde folgendes machen:

Den letzten Stand ins Windows Repo commiten und dann das Repo auf der Linux VM löschen oder woanders hin kopieren.

In der Linux VM dann folgendes:
git clone \\Pfad\zum\Windows\Repo

somit hat Du eine Kopie des Windows Repo auf Deiner Linux VM. Du kannst jetzt per console immer easy was ins Linux Repo einchecken, es macht an dieser stelle Sinn sich nen Bash Alias einzurichten, das nutze ich jedenfalls:

(...)

ich hoffe, dass das ganze halbwegs verständlich war :).
Ich denke schon ;)

Allerdings glaube ich, dass ich mich entweder falsch ausgedrückt hab, Du mein aktuelles Setup bei dem ganzen vorigem Durcheinander nicht überblickt hast oder ich es dann doch nicht richtig verstanden hab ;)

Ich habe und arbeite mit keinem Windows Repo. Mein Repo liegt einzig und allein in der Linux VM. Damit ich allerdings von meinem Windows Rechner aus mit Eclipse arbeiten kann, hab ich das Verzeichnis von der Linux VM auf meinem Windows Rechner als Netzlaufwerk eingebunden. Ein commit geht also immer von meinem Windows Rechner in das Linux Repo. Das einzige Windows Repo, was es dann gibt, ist das auf unserem Windows Server (erstellt mit --bare), wohin dann gepusht wird. Es ist dann denk ich eigentlich genau so, wie Du beschreibst.

Das ist jetzt alles vielleicht nicht das ideale Szenario, aber ich kann mir irgendwie nicht vorstellen, dass Git ein solches nicht unterstützt. Denn es läuft ja jetzt anscheinend auch alles problemlos. Mir ging es jetzt primär um das Vorgehen mit der .gitattribute Datei vs. den Einstellungen in der lokalen Konfigurationsdatei der Git-Installation.

Aber trotzdem vielen Dank für Deine tatkräftige Unterstützung :)
 
rephluX schrieb:
Also auf der Linux VM zu arbeiten ist nicht möglich. Ich brauche diverse Programme auf dem Windows Rechner (Lotus Notes, verschiedene Netzlaufwerke im Unternehmensnetzwerk an einer Domäne), und da ich auch an Projekten arbeite, die auf einem IIS laufen, müsste ich dann immer hin und her wechseln, was allerdings nicht wirklich produktiv ist ;) Alles in der Linux VM einzurichten ist leider auch keine Option.

Nee, das war von mir auch nicht so gemeint.

"Eigentlich musst Du jetzt nur noch auf der Linux VM arbeiten" hätte besser "Eigentlich musst Du jetzt nur noch mit den Dateien in dem Repo der Linux VM arbeiten" heißen sollen.
Ich bin davon ausgegangen, dass Du dich zb per Putty mit Deiner Linux VM verbindest, darüber hast Du dann ja auch vollen Zugriff auf die VM per Konsole. Und wenn man git schon auf einer Linux VM nutzt, sollte es auch für die Zukunft nicht verkehrt sein die Konsolen Befehlen einmal zu lernen, damit man weiß, wie git eigentlich funktioniert :).

Ich wollte Dir nur den Schritt (commiten per Arbeitsrechner auf den Windows Server, was für mich das "Windows Repo" ist) ersparen.
Windows Server Repo -> Linux VM -> Deine IDE - das wäre die vernünftigste Entwicklungsumgebung. IDE macht Änderungen an den Dateien in der Linux VM, Linux VM pusht ins Windows Server Repo, alle anderen holen sich die jeweils aktuellste Version aus dem Windows Server Repo.
 
hedsht schrieb:
Nee, das war von mir auch nicht so gemeint.

"Eigentlich musst Du jetzt nur noch auf der Linux VM arbeiten" hätte besser "Eigentlich musst Du jetzt nur noch mit den Dateien in dem Repo der Linux VM arbeiten" heißen sollen.

Ah ok! Dann hab ich das falsch verstanden. Aber genau so arbeite ich ja jetzt auch :)

hedsht schrieb:
Ich bin davon ausgegangen, dass Du dich zb per Putty mit Deiner Linux VM verbindest, darüber hast Du dann ja auch vollen Zugriff auf die VM per Konsole. Und wenn man git schon auf einer Linux VM nutzt, sollte es auch für die Zukunft nicht verkehrt sein die Konsolen Befehlen einmal zu lernen, damit man weiß, wie git eigentlich funktioniert :).
Als Windoskind bin ich zwar mit der Konsole noch nicht so ganz geübt, aber ein paar Linux und Git-Konsolenbefehle hab ich schon intus ;) Aber Dank TortoiseGit oder Egit Plugin für Eclipse muss man ja auch nicht zwangsweise mit der Konsole arbeiten. Aber Du hast natürlich Recht, dass man die wichtigsten Befehle auch über die Konsole eingeben können sollte.

hedsht schrieb:
Windows Server Repo -> Linux VM -> Deine IDE - das wäre die vernünftigste Entwicklungsumgebung. IDE macht Änderungen an den Dateien in der Linux VM, Linux VM pusht ins Windows Server Repo, alle anderen holen sich die jeweils aktuellste Version aus dem Windows Server Repo.
Genau so ist es jetzt auch aufgesetzt und funktioniert!
 
Zurück
Oben