
Vorab: Ich habe nicht viel Erfahrung mit Windows und kaum mit Firmennetzwerken.
Ich versuche, Git zur Versionskontrolle während der Entwicklung meiner Software zu verwenden. Das Unternehmen, für das ich arbeite, arbeitet hauptsächlich mit Hardware, daher scheint dieser Anwendungsfall dort nicht sehr häufig zu sein. Ich muss Windows 7 verwenden, also habe ich die Windows-Version von Git installiert und „Git über Git Bash verfügbar machen“ ausgewählt, wodurch die Git-Binärdateien nicht zum Windows-PATH hinzugefügt werden, sondern eine emulierte UNIX-Umgebung (ich glaube Cygwin) und Shell vorhanden sind. Das ist, was ich verwenden wollte.
Das Unternehmen verwendet außerdem OES (Open Enterprise Server) von Novell zur Verwaltung von Benutzerkonten. Das bedeutet, dass wir generische Windows-Anmeldungen haben, uns aber nach der Windows-Anmeldung erneut beim OES-Server anmelden müssen. Dadurch werden einige Netzwerkfreigaben bereitgestellt, darunter auch unsere eigenen persönlichen Speicher- und Proxyserver usw.
Da ich meinen Code auf dem Netzlaufwerk speichern muss, möchte ich auch das Git dort behalten. Das Git auf dem lokalen Rechner zu verwalten und den Code auf das Netzlaufwerk zu kopieren, ist keine Option, da ich manchmal die Rechner wechseln muss und es im Allgemeinen umständlich und fehleranfällig ist. Wenn ich es vergesse, wird es nicht gesichert.
Das Hinzufügen von Dateien zum Staging in Git funktioniert einwandfrei, aber beim Commit erhalte ich die Fehlermeldung
fatal: cannot update the ref 'HEAD': unable to append to '.git/logs/HEAD': Bad file descriptor
was meiner Meinung nach mit der Art und Weise zu tun hat, wie Git Bash Pfade zuordnet und wie die Netzwerkfreigaben in diesem Prozess zugeordnet werden.
Ein Kollege behauptet, dass er erfolgreich ein Commit auf einer Netzwerkfreigabe durchgeführt hat, aber er verwendet Windows 10. Ich bin nicht sicher, ob Git dann die neue native Bash-Emulation verwendet.
Gibt es in diesem Szenario eine Möglichkeit, Git zu verwenden?