Usporede filer kan rote opp Git-arbeidstreet ditt og ødelegge ting oppover veien. Noen ganger kan disse usporede filene være tekst eller andre filer du ikke vil ha i det eksterne depotet, eller de du feilaktig opprettet på en eller annen måte etter å ha iscenesatt en forpliktelse.
Uansett hva det er, er det alltid nyttig å rengjøre Git-arbeidstreet ditt for å fjerne disse filene.
Hva er filer som ikke er sporet under en Git Commit?
Hvis du har oppdatert noen eksisterende filer i prosjektet, og også lagt til nye filer lokalt, og du vil skyv den oppdateringen til det eksterne depotet ditt på GitHub, Git krever at du utfører disse endringene for begå.
Bare en oppdatering du gjør til eksisterende filer du har begått, fjerner dem ikke fra sporede filer.
Når du arrangerer en oppdatering for forpliktelse, blir også nye filer iscenesatt med dem, og Git legger dem til sporede filer. Imidlertid spores ikke nye filer du legger til i prosjektet ditt etter at du har iscenesatt forpliktelsen.
Dette kan være uviktige eller gjenværende filer som du midlertidig brukte, eller de som dukker opp på en eller annen måte etter å ha slått sammen eller presset noen endringer. Følgelig lurer disse usporede filene fortsatt rundt treet ditt, og når du løper
git status, Git returnerer dem som usporede filer.Du kan slette disse filene ved å rengjøre Git-arbeidstreet. Ellers, hvis du fortsatt tror du trenger noen av dem lokalt, kan du legge dem til i .gitignore fil. Filer du legger til .gitignore vil ikke bli påvirket av oppryddingen, ikke hvis du bestemmer deg for å ta dem med.
Rengjøring av Git er like enkelt som slette en Git-filial lokalt eller eksternt. La oss se de forskjellige måtene du kan rense Git for å slette usporede filer eller mapper nedenfor.
Det er forskjellige grunner til at du kan slette en filial i GitHub. Heldigvis er det enkelt å slette en Git-gren.
Hvordan rense Git og fjerne usporede filer eller mapper
Før du fjerner usporede filer, bør du dobbeltsjekke for å sikre at du vil slette dem. For å gjøre det, kjør koden nedenfor:
git clean -d -n
Kommandoen returnerer alle usporede mapper og filer som Git vil fjerne fra arbeidstreet ditt.
For å fjerne disse filene og katalogene, kjør:
git clean -d -f
For å fjerne filer bare uten å slette mapper, bruk:
git clean -f
Selv om metodene ovenfor ikke fjerner filer som er oppført i .gitignore, kan du bruke kommandoen nedenfor for å rense elementene som er oppført i .gitignore fil også:
git clean -fx
For å fjerne bare ignorerte filer uten å inkludere andre filer, endrer du små bokstaver "x" til store bokstaver "X":
git clean -fX
For å sjekke om det fortsatt er ustagede filer i arbeidstreet ditt, kjør følgende kommando:
git status
Du kan også rense Git interaktivt ved å bruke:
git clean -i
Å inkludere filer i .gitignore i interaktiv rengjøringsmodus, bruk:
git clean -ix
Å rense filer oppført i .gitignore bare bruker den interaktive modusen, kjør følgende kommando. Forsikre deg om at du bruker store bokstaver "X" denne gangen:
git clean -ifX
Når den interaktive modusen kommer opp, kan du velge å filtrere filene etter antall eller strengmønstre. Du kan også velge spør om alternativet for å dobbeltsjekke hver fil før du sletter den. Hvis du vil, kan du velge ren alternativet for å fjerne filene med en gang.
Løping git status gir deg aktuell informasjon om iscenesettelse, og hvis det er ustagede filer eller mapper, kan du også vite det.
Ser du fortsatt fjernede filer som ikke-sporet etter å ha kjørt Git Clean?
Etter at du har sjekket Git-statusen, hvis filer du tidligere har fjernet, fremdeles vises under delen som ikke er sporet, bør du tømme Git-hurtigbufferen. Så løp git clean igjen for å fjerne filene.
I slekt: Hvordan klone et lager ved hjelp av GitHub Desktop
Slik tømmer du Git-hurtigbufferen:
git rm -r --cached [filnavn]
Hvis du fremdeles har mer enn én fil etter rengjøring av Git, bruker du følgende kommando for å tømme Git-hurtigbufferen for hver fil:
git rm -r --cached [filnavn1] [filnavn2] [filnavn3] ...
Sørg imidlertid for at du legger til filtypen for hver av filene, og husk å rense Git igjen for å fjerne dem.
Hvorfor trenger du å rense Git for å fjerne usporede filer?
Noen ganger vil du rydde opp i Git-arbeidstreet ditt før du forlater et prosjekt for en annen gang. Du vil da sannsynligvis presse eller slå sammen de siste endringene du har gjort i prosjektet for å sikre at du kan hente nøyaktig der du slapp neste gang.
Men mens du skyver eller slår sammen, kan noen filer du ikke vil ha i depotet ditt falle inn ved en feiltakelse.
Unnlatelse av å sjekke slike filer og fjerne dem kan ødelegge det eksterne depotet ditt, ettersom de blir presset neste gang du oppdaterer det eksterne depotet. I tillegg til det kan slike filer ødelegge ting når de distribueres til plattformer som Heroku som bruker git for distribusjon.
Så: hold Git ren!
Programmører skapte versjonskontrollsystemer (VCS) for å løse filversjonskontrollproblemer. La oss se på det grunnleggende om versjonskontroll ved å bruke det beste systemet i dag, Git.
- Programmering
- GitHub
Idowu brenner for alt smart teknologi og produktivitet. På fritiden leker han med koding og bytter til sjakkbrettet når han kjeder seg, men han elsker også å bryte seg fra rutinen en gang i blant. Hans lidenskap for å vise folk veien rundt moderne teknologi motiverer ham til å skrive mer.
Abonner på vårt nyhetsbrev
Bli med på nyhetsbrevet vårt for tekniske tips, anmeldelser, gratis e-bøker og eksklusive tilbud!
Ett steg til…!
Bekreft e-postadressen din i e-posten vi nettopp sendte deg.