git-check-ref-format(1): Skillnad mellan sidversioner
Admin (diskussion | bidrag) (Skapade sidan med '== NAMN == git-check-ref-format - Säkerställer att ett referensnamn är välformat == SYNOPSIS == '''git check-ref-format''' [--normalize] [--[no-]allow-onelevel] [--refspec-pattern] <refname> '''git check-ref-format''' --branch <grennamn-kortform> == BESKRIVNING == Kontrollerar om ett givet ''refname'' är acceptabelt och avslutar med status nollskild om det inte är det. En referens används i Git för att specificera grenar och taggar. E...') |
Admin (diskussion | bidrag) |
||
Rad 80: | Rad 80: | ||
* --[no-]allow-onelevel | * --[no-]allow-onelevel | ||
:: Styr om referensnamn på en nivå accepteras (dvs. referensnamn som | :: Styr om referensnamn på en nivå accepteras (dvs. referensnamn som | ||
inte innehåller flera '''/'''-separerade komponenter). Standard är | |||
'''--no-allow-onelevel'''. | |||
* --refspec-pattern | * --refspec-pattern | ||
:: Tolka <refname> som ett referensnamnsmönster för en refspec (som | :: Tolka <refname> som ett referensnamnsmönster för en refspec (som | ||
används med fjärrarkiv). Om detta alternativ är aktiverat får | |||
<refname> innehålla en enda * i refspecen (t.ex. '''foo/bar'''*/baz | |||
eller '''foo/bar'''*baz/ men inte '''foo/bar'''*/baz*). | |||
* --normalize | * --normalize | ||
:: Normalisera ''refname'' genom att ta bort eventuella inledande | :: Normalisera ''refname'' genom att ta bort eventuella inledande | ||
snedstreck ('''/''') och reducera sekvenser av angränsande snedstreck | |||
mellan namnkomponenter till ett enda snedstreck. Om det normaliserade | |||
referensnamnet är giltigt skrivs det ut till standardutmatningen och | |||
avslutas med status 0, annars avslutas med status nollskild. | |||
('''--print''' är ett föråldrat sätt att stava '''--normalize'''). | |||
== EXEMPEL == | == EXEMPEL == |
Nuvarande version från 10 april 2025 kl. 06.24
NAMN
git-check-ref-format - Säkerställer att ett referensnamn är välformat
SYNOPSIS
git check-ref-format [--normalize]
[--[no-]allow-onelevel] [--refspec-pattern] <refname>
git check-ref-format --branch <grennamn-kortform>
BESKRIVNING
Kontrollerar om ett givet refname är acceptabelt och avslutar med status nollskild om det inte är det.
En referens används i Git för att specificera grenar och taggar. Ett grenhuvud lagras i hierarkin refs/heads medan en tagg lagras i hierarkin refs/tags i referensnamnrymden (vanligtvis i katalogerna $GIT_DIR/refs/heads och $GIT_DIR/refs/tags eller som poster i filen $GIT_DIR/packed-refs om referenser är packade med git gc).
Git ålägger följande regler för hur referenser namnges:
1. De kan inkludera snedstreck / för hierarkisk (katalog) gruppering, men ingen snedstrecksseparerad komponent får börja med en punkt . eller sluta med sekvensen .lock. 2. De måste innehålla minst ett /. Detta tvingar fram närvaron av en kategori som heads/, tags/ etc. men de faktiska namnen är inte begränsade. Om alternativet --allow-onelevel används upphävs denna regel. 3. De får inte ha två på varandra följande punkter .. någonstans. 4. De får inte ha ASCII-kontrolltecken (dvs. byte vars värden är lägre än \040 eller \177 DEL), blanksteg, tilde ~, cirkumflex ^ eller kolon : någonstans. 5. De får inte ha frågetecken ?, asterisk * eller vänster hakparentes [ någonstans. Se alternativet --refspec-pattern nedan för ett undantag från denna regel. 6. De får inte börja eller sluta med ett snedstreck / eller innehålla flera på varandra följande snedstreck (se alternativet --normalize nedan för ett undantag från denna regel). 7. De får inte sluta med en punkt ... 8. De får inte innehålla sekvensen @{. 9. De får inte vara det enstaka tecknet @.
10. De får inte innehålla ett omvänt snedstreck \\.
Dessa regler gör det enkelt för skalskriptbaserade verktyg att parsa referensnamn, sökvägsexpansion av skalet när ett referensnamn används utan citattecken (av misstag) och undviker också tvetydigheter i vissa referensnamnsuttryck (se gitrevisions(7)):
1. Två punkter .. används ofta som i ref1..ref2, och i vissa kontexter betyder denna notation ^ref1 ref2 (dvs. inte i ref1 och i ref2). 2. En tilde ~ och cirkumflex ^ används för att införa postfixoperationerna nth parent och peel onion. 3. Ett kolon : används som i srcref:dstref för att betyda "använd srcrefs värde och lagra det i dstref" i fetch- och push-operationer. Det kan också användas för att välja ett specifikt objekt, t.ex. med git cat-file: "git cat-file blob v1.3.3:refs.c". 4. At-öppen-klammer @{ används som en notation för att komma åt en reflog-post.
Med alternativet --branch tar kommandot ett namn och kontrollerar om det kan användas som ett giltigt grennamn (t.ex. vid skapande av en ny gren). Men var försiktig när du använder den tidigare utcheckningssyntaxen som kan referera till ett frånkopplat HEAD-läge. Regeln som git check-ref-format --branch $name implementerar kan vara striktare än vad git check-ref-format refs/heads/$name säger (t.ex. ett bindestreck kan förekomma i början av en referenskomponent, men det är uttryckligen förbjudet i början av ett grennamn). När det körs med alternativet --branch i ett arkiv expanderas inmatningen först för "tidigare utcheckningssyntax" @{-n}. Till exempel är @{-1} ett sätt att referera till det senaste som checkades ut med "git switch" eller "git checkout". Detta alternativ bör användas av porcelains för att acceptera denna syntax varhelst ett grennamn förväntas, så att de kan agera som om du skrev in grennamnet. Som ett undantag noteras att "tidigare utcheckningsoperation" kan resultera i ett commit-objektnamn när det N:te senaste som checkades ut inte var en gren.
ALTERNATIV
- --[no-]allow-onelevel
- Styr om referensnamn på en nivå accepteras (dvs. referensnamn som
inte innehåller flera /-separerade komponenter). Standard är --no-allow-onelevel.
- --refspec-pattern
- Tolka <refname> som ett referensnamnsmönster för en refspec (som
används med fjärrarkiv). Om detta alternativ är aktiverat får <refname> innehålla en enda * i refspecen (t.ex. foo/bar*/baz eller foo/bar*baz/ men inte foo/bar*/baz*).
- --normalize
- Normalisera refname genom att ta bort eventuella inledande
snedstreck (/) och reducera sekvenser av angränsande snedstreck mellan namnkomponenter till ett enda snedstreck. Om det normaliserade referensnamnet är giltigt skrivs det ut till standardutmatningen och avslutas med status 0, annars avslutas med status nollskild. (--print är ett föråldrat sätt att stava --normalize).
EXEMPEL
- Skriv ut namnet på det föregående som checkades ut:
$ git check-ref-format --branch @{-1}
- Fastställ referensnamnet som ska användas för en ny gren:
$ ref=$(git check-ref-format --normalize "refs/heads/$newbranch")|| { echo "vi gillar inte '$newbranch' som ett grennamn." >&2 ; exit 1 ; }
GIT
Del av git(1)-sviten
KOLOFON
Den här sidan är en del av projektet git (Git distribuerat versionshanteringssystem). Information om projektet finns på <⟨http://git-scm.com/⟩>. Om du har en felrapport för den här manualsidan, se <⟨http://git-scm.com/community⟩>. Den här sidan hämtades från projektets uppströms Git-arkiv <⟨https://github.com/git/git.git⟩> den 2025-02-02. (Vid den tidpunkten var datumet för den senast hittade commiten i arkivet 2025-01-31.) Om du upptäcker några renderingsproblem i den här HTML-versionen av sidan, eller om du tror att det finns en bättre eller mer aktuell källa för sidan, eller om du har korrigeringar eller förbättringar av informationen i den här KOLOFONEN (som *inte* är en del av den ursprungliga manualsidan), skicka ett e-postmeddelande till man-pages@man7.org
Sidslut
Orginalhemsidan på Engelska https://man7.org/linux/man-pages/man1/git-check-ref-format.1.html
Det här är en maskinöversättning av Linux man sidor till svenska. Om du hittar fel är vi tacksamma om du rapporterar dem via formuläret som finns på
https://www.linux.se/kontaka-linux-se/
Tack till Datorhjälp som har sponsrat Linux.se med webbhotell.