Windows git "schlechte Dateideskriptor" beim Festschreiben auf OES Network Share

543
Ps0ke

Upfront: Ich habe nicht viel Erfahrung mit Windows und kaum mit Unternehmensnetzwerken.

Ich versuche, git zur Versionskontrolle während der Entwicklung meiner Software zu verwenden. Die Firma, für die ich arbeite, ist meistens hardwarebasiert, daher scheinen sie diese Anwendung nicht sehr oft zu haben. Ich muss Windows 7 verwenden, also installierte ich die Windows-Version von git und wählte "Git durch Git Bash verfügbar machen", wodurch die Git-Binärdateien nicht zum Windows-PATH hinzugefügt werden, sondern eine emulierte UNIX-Umgebung (ich glaube cygwin) ) und Schale. Das wollte ich verwenden.

Das Unternehmen verwendet außerdem OES (Open Enterprise Server) von Novell zur Verwaltung von Benutzerkonten. Das heißt, wir verfügen über generische Windows-Anmeldungen, müssen sich jedoch nach dem Windows-Anmelden erneut am OES-Server anmelden. Dies beinhaltet ein paar Netzwerkfreigaben, einschließlich unserer eigenen Speicher- und Proxyserver usw.

Da ich meinen Code auf dem Netzlaufwerk speichern muss, möchte ich auch den Git dort behalten. Das Verwalten des Git auf dem lokalen Computer und das Kopieren des Codes auf das Netzlaufwerk ist keine Option, da ich manchmal den Computer wechseln muss und im Allgemeinen unbequem und fehleranfällig ist. Wenn ich es vergesse, würde es nicht gesichert werden.

Das Hinzufügen von Dateien zum Staging in git funktioniert gut, aber wenn ich versuche zu übergeben, erhalte ich die Fehlermeldung

fatal: cannot update the ref 'HEAD': unable to append to '.git/logs/HEAD': Bad file descriptor 

was ich denke, hat mit der Art und Weise zu tun, wie Git Bash Pfade abbildet und wie die Netzwerkfreigaben in diesem Prozess abgebildet werden.

Ein Mitarbeiter behauptet, dass er sich erfolgreich auf einer Netzwerkfreigabe festgelegt hat, aber er verwendet Windows 10. Ich bin nicht sicher, ob git dann die neue native Bash-Emulation verwendet.

Gibt es eine Möglichkeit, git in diesem Szenario zu verwenden?

0
Welchen Benutzer betreiben Sie als Git-bash? Der Benutzer, mit dem Sie sich anmelden oder der Novell-Benutzer? Es könnte sich um eine Erlaubnisfrage handeln. Seth vor 5 Jahren 0
Das hört sich plausibel an. `whoami` gibt den Windows-Benutzer zurück. Wie kann ich mich mit dem Novell-Benutzer bei git bash anmelden? Ps0ke vor 5 Jahren 0
Sie können wahrscheinlich nicht von innen git. Sie müssten die git bash als diesen Benutzer starten. Windows hat eine Standardfunktion "Ausführen als", aber ich bin mir nicht sicher, wann dies mit Novell funktioniert oder nicht. Es ist etwas ungewöhnlich, dass Sie es nicht einfach anstelle einer AD verwenden würden. Es ist interessant, dass andere Software gut funktioniert. Ein schlechter Dateideskriptor kann auch bedeuten, dass der Deskriptor aus irgendeinem Grund verworfen wurde. Seth vor 5 Jahren 0

0 Antworten auf die Frage