Wie liest man das Modusfeld der git-ls-tree-Ausgabe?

81
%Vor%

Ich weiß, dass die letzten 3 Stellen im Dateimodus sind, aber wofür sind die ersten 3 Ziffern? Ich kann es nicht in git Benutzerhandbuch finden.

    
an0 10.04.2009, 13:53
quelle

2 Antworten

53

Die 6 Ziffern zeigen den Dateimodus unter Verwendung der klassischen UNIX-Notationen. Die ersten zwei Ziffern zeigen den Dateityp an, der dritte ist über set-uid / set-gid / sticky Bits, und Sie kennen die letzten drei.

Hier ist, wie man 2 stat es auf meinem GNU / Linux-System dokumentiert:

%Vor%     
adl 10.04.2009, 14:52
quelle
100

Von der Git index-format.txt -Datei bezüglich des Modus :

%Vor%

Auch eine reguläre Datei des Verzeichnisobjekttyps (binär 0100) und der Gruppe schreibbar (0664 Berechtigungen) ist zulässig, wie in fsck.c fsck_tree Methode. Die reguläre nicht ausführbare, in Gruppen schreibbare Datei ist ein nicht standardmäßiger Modus, der in früheren Versionen von Git unterstützt wurde.

Dies macht gültige Modi (als binär und oktal):

  • 0100000000000000 ( 040000 ): Verzeichnis
  • 1000000110100100 ( 100644 ): Reguläre nicht ausführbare Datei
  • 1000000110110100 ( 100664 ): Reguläre nicht ausführbare Gruppe schreibbare Datei
  • 1000000111101101 ( 100755 ): Regelmäßige ausführbare Datei
  • 1010000000000000 ( 120000 ): Symbolischer Link
  • 1110000000000000 ( 160000 ): Gitlink
Dan Cruz 01.12.2011 19:44
quelle