Setup and Config
Getting and Creating Projects
Basic Snapshotting
Branching and Merging
Sharing and Updating Projects
Inspection and Comparison
Patching
Debugging
External Systems
Server Admin
Guides
- gitattributes
- Command-line interface conventions
- Everyday Git
- Frequently Asked Questions (FAQ)
- Glossary
- Hooks
- gitignore
- gitmodules
- Revisions
- Submodules
- Tutorial
- Workflows
- All guides...
Administration
Plumbing Commands
- 2.46.2 → 2.53.0 no changes
-
2.46.1
2024-09-13
- 2.44.1 → 2.46.0 no changes
-
2.44.0
2024-02-23
- 2.43.1 → 2.43.7 no changes
-
2.43.0
2023-11-20
- 2.42.1 → 2.42.4 no changes
-
2.42.0
2023-08-21
- 2.40.1 → 2.41.3 no changes
-
2.40.0
2023-03-12
- 2.39.1 → 2.39.5 no changes
-
2.39.0
2022-12-12
- 2.38.1 → 2.38.5 no changes
-
2.38.0
2022-10-02
- 2.36.1 → 2.37.7 no changes
-
2.36.0
2022-04-18
- 2.35.1 → 2.35.8 no changes
-
2.35.0
2022-01-24
- 2.31.1 → 2.34.8 no changes
-
2.31.0
2021-03-15
- 2.30.2 → 2.30.9 no changes
-
2.30.1
2021-02-08
-
2.30.0
2020-12-27
- 2.27.1 → 2.29.3 no changes
-
2.27.0
2020-06-01
- 2.22.1 → 2.26.3 no changes
-
2.22.0
2019-06-07
- 2.18.1 → 2.21.4 no changes
-
2.18.0
2018-06-21
- 2.17.0 → 2.17.6 no changes
-
2.16.6
2019-12-06
- 2.14.6 → 2.15.4 no changes
-
2.13.7
2018-05-22
- 2.12.5 no changes
-
2.11.4
2017-09-22
-
2.10.5
2017-09-22
-
2.9.5
2017-07-30
-
2.8.6
2017-07-30
- 2.2.3 → 2.7.6 no changes
-
2.1.4
2014-12-17
-
2.0.5
2014-12-17
SYNOPSIS
git ls-files [-z] [-t] [-v] [-f] [-c|--cached] [-d|--deleted] [-o|--others] [-i|--ignored] [-s|--stage] [-u|--unmerged] [-k|--killed] [-m|--modified] [--resolve-undo] [--directory [--no-empty-directory]] [--eol] [--deduplicate] [-x <mönster>|--exclude=<mönster>] [-X <fil>|--exclude-from=<fil>] [--exclude-per-directory=<fil>] [--exclude-standard] [--error-unmatch] [--with-tree=<träd-igt>] [--full-name] [--recurse-submodules] [--abbrev[=<n>]] [--format=<format>] [--] [<fil>…]
BESKRIVNING
Det här kommandot sammanslår fillistan i indexet med den faktiska arbetskatalogs-listan och visar olika kombinationer av de två.
Flera flaggor kan användas för att avgöra vilka filer som visas, och varje fil kan skrivas ut flera gånger om det finns flera poster i indexet eller om flera statusar är tillämpliga för de relevanta filvalsalternativen.
ALTERNATIV
- -c
- --cached
-
Visa alla filer som cachas i Gits index, dvs. alla spårade filer. (Detta är standardinställningen om inga -c/-s/-d/-o/-u/-k/-m/--resolve-undo-alternativ är angivna.)
- -d
- --deleted
-
Visa filer med en ej köad borttagning
- -m
- --modified
-
Visa filer med en ej köad modifiering (observera att en ej köad borttagning också räknas som en ej köad modifiering)
- -o
- --others
-
Visa andra (dvs. ospårade) filer i utdata
- -i
- --ignored
-
Visa endast ignorerade filer i utdata. Måste användas med antingen ett explicit -c eller -o. När filer visas i indexet (dvs. när de används med -c), skriv endast ut de filer som matchar ett uteslutnings-mönster. När "andra" filer visas (dvs. när de används med -o), visa endast de som matchas av ett uteslutnings-mönster. Standardregler för ignorering aktiveras inte automatiskt; därför krävs minst ett av alternativen
--exclude*. - -s
- --stage
-
Visa det köade innehållets läges bitar, objektnamn och stegnummer i utdatat.
- --directory
-
Om en hel katalog klassificeras som "annan", visa bara dess namn (med ett avslutande snedstreck) och inte hela dess innehåll. Har ingen effekt utan -o/--others.
- --no-empty-directory
-
Lista inte tomma kataloger. Har ingen effekt utan --directory.
- -u
- --unmerged
-
Visa information om ej sammanslagna filer i utdata, men visa inga andra spårade filer (tvingar --stage, overrides --cached).
- -k
- --killed
-
Visar ospårade filer i filsystemet som behöver tas bort på grund av fil-/katalog-konflikter för att spårade filer ska kunna skrivas till filsystemet.
- --resolve-undo
-
Visa filer som har information om ångra-lösning i indexet tillsammans med deras information om ångra-lösning. (Informationen om ångra-lösning används för att implementera "git checkout -m $PATH", dvs. för att återskapa sammanslagningskonflikter som löstes av misstag)
- -z
-
\0 radavslutning vid utdata och citera inte filnamn. Se UTMATNING nedan för mer information.
- --deduplicate
-
När endast filnamn visas, undertryck dubbletter som kan komma från att ha flera steg under en sammanslagning, eller genom att ge alternativen
--deletedoch--modifiedsamtidigt. När något av alternativen-t,--unmergedeller--stageanvänds har detta alternativ ingen effekt. - -x <mönster>
- --exclude=<mönster>
-
Hoppa över ospårade filer som matchar mönster. Observera att mönstret är ett jokerteckensmönster. Se UTSLUTNINGS MÖNSTER nedan för mer information.
- -X <fil>
- --exclude-from=<fil>
-
Läs uteslutnings-mönster från <fil>; 1 per rad.
- --exclude-per-directory=<fil>
-
Läs ytterligare uteslutnings-mönster som endast gäller för katalogen och dess underkataloger i <fil>. Om du försöker emulera hur Porslin-kommandon fungerar är det enklare och mer noggrant att använda alternativet
--exclude-standardistället. - --exclude-standard
-
Lägg till standard Git-exkluderingar: .git/info/exclude, .gitignore i varje katalog och användarens globala exkluderingsfil.
- --error-unmatch
-
Om någon <fil> inte visas i indexet, behandla detta som ett fel (retur 1).
- --with-tree=<träd-igt>
-
När man använder --error-unmatch för att utöka användardefinierade <fil>-argument (dvs. sökvägsmönster) till sökvägar, låtsas att sökvägar som togs bort i indexet eftersom den namngivna <träd-igt> fortfarande finns. Att använda detta alternativ med
-s- eller-u-alternativen är meningslöst. - -t
-
Visa statustaggar tillsammans med filnamn. Observera att för skriptändamål är git-status[1]
--porcelainoch git-diff-files[1]--name-statusnästan alltid bättre alternativ; användare bör titta på git-status[1]--shorteller git-diff[1]--name-statusför mer användarvänliga alternativ.Det här alternativet anger en anledning till att varje filnamn visas, i form av en statustagg (som följs av ett mellanslag och sedan filnamnet). Statustaggarna är alla enstaka tecken från följande lista:
- H
-
spårad fil som inte är antingen osammanslagen eller hoppaöver-arbetsträd
- S
-
spårad fil som är hoppaöver-arbetsträd
- M
-
spårad fil som inte är sammanslagen
- R
-
spårad fil med ej köad borttagning/radering
- C
-
spårad fil med ej köad modifiering/ändring
- K
-
ospårade sökvägar som är en del av fil-/katalog-konflikter som förhindrar utcheckning av spårade filer
- ?
-
ospårad fil
- U
-
fil med ångra-lösnings information
- -v
-
Liknar
-t, men använd gemener för filer som är markerade som antas oförändrade (se git-update-index[1]). - -f
-
Liknar
-t, men använd gemener för filer som är markerade som fsmonitor valid (se git-update-index[1]). - --full-name
-
När kommandot körs från en underkatalog, matar det vanligtvis ut sökvägar i förhållande till den aktuella katalogen. Det här alternativet tvingar att sökvägar matas ut i förhållande till projektets översta katalog.
- --recurse-submodules
-
Anropar rekursivt ls-filer på varje aktiv undermodul i kodförrådet. För närvarande finns det endast stöd för lägena --cached och --stage.
- --abbrev[=<n>]
-
I stället för att visa hela 40-byte hexadecimala objektraderna, visa det kortaste prefixet som är minst <n> hexdigits långt och som unikt refererar till objektet. Antal siffror som inte är standard kan anges med --abbrev=<n>.
- --debug
-
Efter varje rad som beskriver en fil, lägg till mer data om dess cachepost. Detta är avsett att visa så mycket information som möjligt för manuell inspektion; det exakta formatet kan ändras när som helst.
- --eol
-
Visa <eolinfo> och <eolattr> för filer. <eolinfo> är den filinnehållsidentifiering som används av Git när attributet "text" är "auto" (eller inte angivet och core.autocrlf inte är falskt). <eolinfo> är antingen "-text", "none", "lf", "crlf", "mixed" eller "".
"" betyder att filen inte är en vanlig fil, att den inte finns i indexet eller inte är tillgänglig i arbetskatalogen.
<eolattr> är attributet som används vid utcheckning eller incheckning, det är antingen "", "-text", "text", "text=auto", "text eol=lf", "text eol=crlf". Sedan Git 2.10 stöds "text=auto eol=lf" och "text=auto eol=crlf".
Både <eolinfo> i indexet ("i/<eolinfo>") och i arbetskatalogen ("w/<eolinfo>") visas för vanliga filer, följt av ("attr/<eolinfo>").
- --sparse
-
Om indexet är glest, visa de glesa katalogerna utan att expandera till de filer som finns. Glesa kataloger visas med ett avslutande snedstreck, till exempel "x/" för en gles katalog "x".
- --format=<format>
-
En sträng som interpolerar %(fältnamn) från resultatet som visas. Den interpolerar också
%%till%, och%xXXdärXXär hexagonala siffror interpolerar till tecken med hexagonalkodXX; till exempel interpolerar%x00till \0 (NUL),%x09till \t (TAB) och %x0a till \n (LF). --format kan inte kombineras med-s,-o,-k,-t,--resolve-undooch--eol. - --
-
Tolka inte fler argument som alternativ.
- <fil>
-
Filer att visa. Om inga filer anges visas alla filer som matchar de andra angivna kriterierna.
UTMATNING
git ls-files matar bara ut filnamnen om inte --stage anges, i vilket fall det matar ut:
[<tagg> ]<läge> <objekt> <steg> <fil>
git ls-files --eol will show i/<eolinfo><SPACES>w/<eolinfo><SPACES>attr/<eolattr><SPACE*><TAB><fil>
git ls-files --unmerged och git ls-files --stage kan användas för att undersöka detaljerad information om ej sammanslagna sökvägar.
För en osammanslagen sökväg, istället för att registrera ett enda mod/SHA-1-par, registrerar indexet upp till tre sådana par; ett från träd O i steg 1, A i steg 2 och B i steg 3. Denna information kan användas av användaren (eller porslinet) för att se vad som så småningom ska registreras vid sökvägen. (se git-read-tree[1] för mer information om tillstånd)
Utan -z-alternativet citeras sökvägar med "ovanliga" tecken enligt beskrivningen för konfigurationsvariabeln core.quotePath (se git-config[1]). Med -z matas filnamnet ut ordagrant och raden avslutas med en NUL-byte.
Det är möjligt att skriva ut i ett anpassat format genom att använda alternativet --format, vilket kan interpolera olika fält med hjälp av notationen %(fältnamn). Om du till exempel bara bryr dig om fälten "objektnamn" och "sökväg" kan du köra med ett specifikt "--format" som
git ls-files --format='%(objectname) %(path)'
FÄLTNAMN
Hur varje sökväg visas kan anpassas med hjälp av alternativet --format=<format>, där %(fältnamn) i <format>-strängen för olika aspekter av indexposten interpoleras. Följande "fältnamn" avses:
- objectmode
-
Filläget som är registrerat i indexet.
- objecttype
-
Objekttypen för filen som är registrerad i indexet.
- objectname
-
Namnet på filen som är registrerad i indexet.
- objectsize[:padded]
-
Objektstorleken för filen som registreras i indexet ("-" om objektet är en
commiteller etttree). Den stöder även ett utfyllt format med storleken "%(objectsize:padded)". - stage
-
Det steg av filen som är registrerat i indexet.
- eolinfo:index
- eolinfo:worktree
-
<eolinfo> (se beskrivningen av
--eol-alternativet) för innehållet i indexet eller i arbetsträdet för sökvägen. - eolattr
-
Den <eolattr> (se beskrivningen av
--eol-alternativet) som gäller för sökvägen. - sökväg
-
Sökvägen till filen som är registrerad i indexet.
EXCLUDERINGS MÖNSTER
git ls-files kan använda en lista med "exkluderings mönster" när man navigerar i katalogträdet och hittar filer för att visa när flaggorna --others eller --ignored anges. gitignore[5] anger formatet för exkluderings mönster.
Dessa uteslutnings-mönster kan anges från följande platser, i ordning:
-
Kommandoradsflaggan --exclude=<mönster> anger ett enda mönster. Mönster är ordnade i samma ordning som de visas i kommandoraden.
-
Kommandoradsflaggan --exclude-from=<fil> anger en fil som innehåller en lista med mönster. Mönster är ordnade i samma ordning som de visas i filen.
-
Kommandoradsflaggan --exclude-per-directory=<namn> anger namnet på filen i varje katalog som git ls-files undersöker, normalt
.gitignore. Filer i djupare kataloger har företräde. Mönster är ordnade i samma ordning som de visas i filerna.
Ett mönster som anges på kommandoraden med --exclude eller läst från filen som anges med --exclude-from är relativt till toppen av katalogträdet. Ett mönster som lästs från en fil som anges med --exclude-per-directory är relativt till katalogen där mönsterfilen visas.
Generellt sett bör du kunna använda --exclude-standard när du vill att undantagsreglerna ska tillämpas på samma sätt som Porslins-kommandon gör. För att emulera vad --exclude-standard specificerar kan du ange --exclude-per-directory=.gitignore och sedan ange:
-
Filen som anges av konfigurationsvariabeln
core.excludesfile, om den finns, eller filen$XDG_CONFIG_HOME/git/ignore. -
Filen
$GIT_DIR/info/exclude.
via alternativet --exclude-from=.
GIT
En del av git[1]-sviten