Mens de jobber med Git, kloner utviklere av eksterne lagre slik at de kan få tilgang til prosjektets filer og gjøre endringene deres. Mer spesifikt oppretter Cloning en lokal kopi av et eksternt depot på brukerens lokale system og lar dem jobbe med prosjektet lokalt. Etter det kan de presse sine lokale endringer tilbake til GitHub -depotet for andre teammedlemmer å få tilgang til.
Denne oppskrivningen vil forklare:
Er det trygt å grunt klon/kopiere git repo med "-dypth 1", gjøre forpliktelser og få/trekke oppdateringer igjen?
Det er generelt trygt å grunt klone et depot med "-dybde 1”Alternativ, gjør forpliktelser og få/trekke oppdateringer. Imidlertid kan denne tilnærmingen føre til noen mindre problemer, for eksempel:
Totalt sett kan grunt kloning med -Dypte 1 være nyttig for raskt å få en kopi av depotet til å jobbe med, men det er kanskje ikke det beste alternativet hvis du trenger å få tilgang til hele historien til koden.
Hvordan gjør grunne kloner/kopier git repo med “-dybth 1”, gjør forpliktelser og får/trekk oppdateringer igjen?
For å grunt klone et bestemt Git -depot med dybde 1, opprette forpliktelser og trekke oppdateringer igjen, først, navigere til det lokale depotet. Klon deretter det eksterne depotet med dybde 1 ved bruk av “git klon -dybde 1 ”Kommando. Deretter, flytt til det klonede depotet, gjør endringer og forplikter dem. Etter det, utfør push- og pulloperasjoner.
Trinn 1: Bytt til lokalt depot
Først må du skrive ut følgende kommando og omdirigere til ønsket lokale depot:
$ CD "C: \ git \ local_repo
Trinn 2: KLONE Remote Repository
Deretter kloner eller kopierer det spesielle eksterne depotet ved å bruke "git klon”Kommando sammen med ønsket dybde og HTTP -URL i GitHub -depotet:
$ git klon -dybde 1 https: // github.com/laibayounas/demo.git
Her, "-dybde”Alternativ med et“1”Verdien får bare den siste forpliktelsen:
Trinn 3: Flytt til eksternt depot
Deretter bytter du til det klonede depotet gjennom “CD”Kommando:
$ CD -demo
Trinn 4: Sjekk referanselogg
Kontroller deretter referanseloggen for å se Commits -historien:
$ git reflog .
Det kan observeres at det eksterne depotet er klonet med bare den siste forpliktelsen:
Trinn 5: Opprett en ny fil
Lag nå en ny fil i det nåværende klonede depotet:
$ Touch Newfile.tekst
Trinn 6: Sporfil
Spore den nyopprettede filen ved hjelp av "git add”Kommando:
$ git Legg til Newfile.tekst
Trinn 7: Forplikt endringer
Etter det, utfør kommandoen under levert for å begå endringer:
$ git commit -m "newfile.txt lagt til "
Trinn 8: Sjekk begår historie
Kontroller deretter referanseloggen for å bekrefte endringene:
$ git reflog .
Det kan sees at den nye forpliktelsen er lagt til i forpliktelseshistorien:
Trinn 9: Skyv endringer til GitHub
Kjør kommandoen nedenfor for å skyve de nye endringene til GitHub-depotet:
$ git push
I følge det undervernede bildet har endringene blitt presset til det eksterne Git-depotet:
Trinn 10: Trekk eksterne endringer
Få nå eksterne oppdateringer til det klonede depotet ved å bruke følgende kommando:
$ git pull
Utgangen nedenfor viser at depotet allerede er oppdatert, noe som indikerer at det ikke er noen nye endringer i det eksterne depotet:
Anta at en annen bruker har gjort endringer i det eksterne depotet og at du vil utføre trekkoperasjonen, så får du bare de sist anvendte endringene:
$ git pull
Det kan vises i utdataene under levert, bare de sist lagt til endringene er lastet ned:
Trinn 11: Bekreft endringer
Til slutt, utfør kommandoen nedenfor for å sikre at bare nylig anvendte endringer trekkes inn i det lokalt klonede depotet:
$ git reflog .
Som du kan se, inneholder forpliktelseshistorien bare de siste endringene:
Det handlet om grunt kloning av et git -depot med dybde 1, opprette forpliktelser og trekke oppdateringer igjen.
Konklusjon
Det er generelt trygt å grunt klone et depot med "-dybde 1”Alternativ, opprette forpliktelser og trekke oppdateringer. Imidlertid kan denne tilnærmingen føre til problemer hvis depotets historie blir endret for å påvirke forpliktelsene brukere har gjort. I tillegg last ned de nyeste forpliktelsene og inkluderer i tillegg en depot med -Dypte 1. Dette betyr at brukere ikke har tilgang til depotets fulle kontekst. Denne oppskrivningen forklarte grunt kloning av et git-depot med dybde 1, opprette forpliktelser og trekke oppdateringer igjen.