Tas ir tas, kā jūs kopīgojat savu darbu git tālvadības krātuvē



Dalieties lokālajā darbā ar komandu attālā krātuvē, iemācieties to pārvaldīt, vienlaikus izsekojot izmaiņām, un saglabājiet sinhronizāciju.

Jūsu darbs piešķir lielāku vērtību, kad tas tiek publicēts un dalīts ar pasauli (vai komandu) !!!

Darba sākšana

Ej , kā jūs zināt, ir vispopulārākais versiju veidošanas rīks, ko šodien izmanto veikalā , trase un versija jebkura veida dati .
Dažas no git galvenajām iezīmēm ir tās ātrums , izplatīts daba, drošība , nesāpīgs atzarošana un apvienošana kopā ar sadarbības strādāt starp vairākiem ieguldītājiem.

Sākot diskusiju no šejienes, ļaujiet mums koncentrēties uz to, kā git jums palīdz sadarboties un dalieties savā darbā ar vienaudžiem, lai visi varētu vienlaikus strādāt ar vienu un to pašu kodu, nebojājot viens otra datus.
Šeit ir jēdziens attālās krātuves ienāc bildē.
Es pieņemu, ka esat apguvis mākslu no jūsu darba direktorijs (failu sistēma) uz Iestudēšanas zona un beidzot nododot to savam vietējā repozitorija (datu bāze).

Tas mūs iedvesmo virzīt savus datus uz nākamo līmeni “Remote repo”, lai tos publicētu attālajā repozitorijā.

Vai mani dati jau nav saglabāti git datu bāzē?

Jā, tā ir! Tomēr, kā norādīts zemāk redzamajā diagrammā, jūsu dati joprojām atrodas vietējā datu bāze pēc tevis apņemties to vēl nedala ar saviem kolēģiem.
4 līmeņu arhitektūra
Šis raksts aizpilda plaisu starp mūsu datu iegūšanu no jūsu vietējā repozitorija un novirzot to uz nākamo slāni, ko sauc par attālā krātuve .





pitona klases un objektu piemēri

Kas ir attālā krātuve

Apkopotās informācijas datu bāze, kas tiek glabāta vietā, kas var būt dalīts ar komandas biedriem, dodot viņiem piekļuvi .
Tas ir ideāli izvietots vietnē mākonis vai uz a serveris (vietējais vai attālais) internetā vai lokālajā tīklā.
Attālā krātuve ir gluži tāpat kā jūsu vietējā git krātuve, izņemot to, ka tā parasti tiek deklarēta kā tukša krātuve, lai nebūtu darba kopijas, piemēram, vietējās.
Tas tiek darīts, lai ierobežotu tiešās izmaiņas, kas veiktas attālajā repozitorijā.

Plika krātuve koncepcija ir papildu priekšrocība attālajai repozitorijam, lai to saglabātu aizsargāts un to var izmantot tikai un vienīgi koda koplietošanai komandas dalībnieku starpā.
Tas tiek panākts, pasludinot attālo repozitoriju par tukšu, izmantojot- tikai‘Karodziņš, to inicializējot kā git repozitoriju.
To darot, jūsu repo tiek izveidots, izmantojot git metadatus vai, citiem vārdiem sakot, git objektus, kas glabājas tikai slēptā ‘.git’ direktorijā, un neviena darba kopija nav pieejama, lai tieši pievienotu datus.
Komanda:git init - kails.

Paturot to prātā, virzoties uz priekšu, mēs redzēsim vairāk iespēju pārvaldīt attālo repo un kā sinhronizēt vietējo darbu ar tālvadības pulti.



Izveidojiet attālo krātuvi

Pirmkārt, jums ir jāizlemj par vietu, kurā vēlaties izvietot savu attālo repo.
Ir diezgan daudz populāru git hostinga krātuvju, piemēram, - GitLab , BitBucket , GitHub , Piespiedu spēks un CloudForge nosaukt dažus.
Šajā amatā es apsveru GitHub, jo šī ir vieta, kur es pirmo reizi sāku glabāt savus git krātuves. Lai sāktu, viss, kas jums jādara, ir jāpierakstās GitHub kontā un pēc tam izveidot jaunu krātuvi , tas izveido URL, kas norāda uz šo attālo repo.


Git atbalsta ssh, git, http un https protokolus, lai adresētu repozitorija URL.

Alternatīvi, jūs varat arī ievietot savu projektu citur, piemēram, a Linux serveris izpildot zemāk minētās komandas-
cd $ HOME
mkdir remote_repo
CD remote_repo
git init - kails.

Pievienojiet tālvadības pulti vietējai mašīnai

Tālvadības pults pievienošana darba kopijai nozīmē vienkārši izveidot rādītāja atsauces apstrādātājs tālvadības pultim vai vienkārši saukts par “ attālais apstrādātājs '.
Pārejam pie mana projekta, kuru es vēlos publicēt,cd learnRemotes
Sintakse:git tālvadības pievienošana
Komanda:git tālvadības pievienojiet izcelsmi https://github.com/divyabhushan/learnRemotes.git

“Izcelsme ir noklusējums attālā apstrādātāja atsauces nosaukums. ” (attālajam vārdam jābūt kādam atbilstošam nosaukumam)
Apskatīsim, vai tas darbojas, izmantojot komandu:git tālvadības pults

Tā arī notika :)

Izdrukājiet arī attālo URL kopā ar nosaukumu:
git tālvadība -v

Labi padarīts! Jums ir gatavs izveidot savienojumu ar attālo repozitoriju no vietējā darba direktorija.

Laiks publicēt

Sintakse:git push - visi - tagi[-u | - set-upstream]
Komanda:git push izcelsmes meistars

Tātad, jūs to lasījāt kā “Nospiest atšķirību no apņemšanās iegūt izcelsmi no vietējā meistara” .

Ja pārbaudīsit savu GitHub kontu, tajā būs jāparāda vietējās saistības (dati).



Sekošanas filiāles

Tātad, jūs esat veiksmīgi publicējis savu darbu attālajā repozitorijā.
Tomēr ir svarīgi, lai jūs izveidotu vietējo filiāli trase izmaiņas attālajā filiālē automātiski.
Izmantojiet ‘- iestatīt augšupvai-u‘Karogs kopā ar komandu‘ git push ’
Komanda:git push -u izcelsmes meistars

ar krāsu kodētiem zariem


Izveidosim jaunu saistību ‘galvenā’ filiālē un pārbaudīsim, kā git to atklāj-
Komanda:git statuss


Parādiet izsekošanas zarus detalizētā režīmā
Komanda:git filiāle -vv


Līdz ar to katru reizi izsekošanas starp vietējo un attālo repozitoriju izsekotajā filiālē ir atšķirības, Git jums to paziņos.
Vai nav tik forši !!!

Kā citi izveidotu savienojumu ar jūsu tālvadības pulti?

Tas ir kūkas gabals, kad tu klons attālā krātuve !!!

Tātad, klonēšana no attālās krātuves vispirms veic divas lietas, jūsu attālā atsauce tiek pievienots automātiski, un otrais noklusējums zars ir iestatīts uz trase attālā filiāle automātiski.

1. solis: Klonējiet savu attālo repo kā citu lietotāju -
Komanda:git klons https://github.com/divyabhushan/learnRemotes.git developer2
CD izstrādātājs2

2. solis: Parādiet tālvadības pulti un tā URL
Komanda:git tālvadība -v


3. solis: Uzskaitiet izsekošanas filiāles
Komanda:git filiāle -vv


Jautrība sākas, kad ‘attīstītājs2’ sāks pats savu darbu un virzīsies uz tālvadības pulti.

Jūs varat izveidot savienojumu un dot savu ieguldījumu vairāk nekā viens tālvadības pults repozitorijs no a viens projekts .

Skatiet attālās filiāles

Komanda:git filiāle -r


Izmantojiet opciju ‘-a’, lai drukātu gan vietējās, gan attālās filiāles. Pēc dažu vietējo filiāļu izveidošanas izmēģiniet to vietējā repo.

Kā citi sniedz ieguldījumu jūsu tālvadības pultī?

Sākotnējā iestatīšana
Developer2 nolemj mainīt dažas lietas, piemēram:
uz. Izveidot jauna ‘funkcija’ no pēdējās saistības ‘master’ filiālē un veikt a jauna apņemšanās uz ‘iezīme’ atzara
Komandas:
git checkout -b funkcija
echo 'feature enhancements'> feature.txt
git pievienot. && git saistīt -m 'funkciju uzlabojumi'

b. Izveidot atšķirīga ‘feature2’ filiāle no vecākas saistās ar ‘master’ filiāli
Komandas:
git checkout -b feature2 95651fb
echo 'feature2 added'> feature2.txt
git pievienot. && git saistīt -m 'Pievienot iezīmes2 izmaiņas'

Vizualizēsim filiāles developer2 mašīnā kopā ar izsekošanas informāciju:

Kā jūs noteikti pamanījāt, jaunās filiāles nav izveidotas, lai izsekotu attālās filiāles.

Pārvietojot izmaiņas uz tālvadības pulti
Vispirms ļaujiet man nospiest atzīmi ‘feature’ uz tālvadību ar karodziņu ‘–set-upstream vai -u’
Komanda:git push -u izcelsmes iezīme




Ja tas vēl nepastāv, uz tālvadības pults tiks izveidota jauna filiāle !!!

Šajā brīdī uzskaitiet attālās filiāles ar komandu: ‘git branch -r’




Vēl viens veids, kā izsekot attālajai filiālei
Pieņemsim, ka filiāle ‘feature2’ norāda arī uz to pašu ‘feature’ atzari tālvadības pultī
Komanda:git branch - set-upstream-to = origin / feature feature2



ar krāsu kodēts zars


Īss padoms: Jūs varat izlaist vietējās filiāles nosaukumu, ja jau atrodaties šajā filiālē, citiem vārdiem sakot, vietējā filiāle jau ir izrakstīta.

Vēlreiz uzskaitiet filiāles verbozā režīmā, komanda:git filiāle -vv



Ievērojiet, ka gan vietējie filiāles ‘feature’, gan ‘feature2’ norāda uz to pašu attālās filiāles ‘feature’.

Palieciet sinhronizēts ar tālvadības pulti - ievelciet, velciet un nospiediet

Apskatīsim daļu, kur attālā filiāle jūsu izsekošana jau ir atjaunināta, kā tad?
Vienkāršsgit statuss“Vai a”git kase'Vai pat'git filiāle -vv‘Komanda mūs brīdina ar šādu neatbilstību-



“Developer2” vispirms jāatjaunina vietējās atsauces un objekti (“ git atnest ‘) Un pēc tam sapludiniet attālās un lokālās izmaiņas (‘ git sapludināšana ’).
Interesanti, ka šīs divas komandas varat aizstāt ar vienu komandu “git pull”.
Sintakse:aiziet vilkt

–Neaizsekotam zaram
Sintakse: git pull [:]
Komanda:git pull izcelsmes iezīme: feature2

– Kāpurķēžu atzarojumam
Sintakse: git pull
Komanda:git pull




=> Praksē šajā posmā var rasties konflikti, kad vienkāršības labad izvēlaties tālvadības pulti. Esmu radījis izmaiņas bez konfliktiem.

Pēc tam, kad ‘izstrādātājs2’ ir izvilcis (ielādējis un sapludinājis), jaunākajām attālinātajām izmaiņām tagad jāpublicē pats savs
Komanda:git push izcelsmes GALVA: iezīme
Piezīme: augšteces filiāles ‘feature’ neatbilst vietējās filiāles ‘feature2’ nosaukumam, jums tas ir skaidri jānorāda



Atgādinājums : ‘HEAD’ ir jaunākā saistība vietējā ‘feature2’ filiālē.

Kad lietot ‘git fetch’?
Reizēm, kad jums ir nepieciešams tikai atjaunināt savu atsauces galviņas faktiski nenolādējot (nevelkot) no tālvadības pults.
Vai arī tad, kad attālās filiāles ir modificētas / dzēstas atjauninot, jums būs jāpalaiž fetch komanda ar ‘--griezt‘Variants.
Kā paraugpraksi jums ir jāizpilda komanda “git fetch” katru reizi, kad sākat strādāt ar vietējo repo.

Attālā vadība

Visbeidzot, jūs vēlētos veikt dažus mājturības uzdevumus, piemēram, pultu un filiāļu pārdēvēšanu vai noņemšanu.
Tās ir tikpat svarīgas kā iepriekšējās komandas.

Pārdēvēt tālvadības pulti

Sintakse:git attālā pārdēvēšana
Komanda:git attālā pārdēvēt snv_repo svn
Piemēram, ņemiet vērā projektu vadītāju, kas saistīts ar 3 projektiem -


Dzēst attālo atsauci

Pieņemsim, ka jūs vairs nesinhronizējat ar attālo repozitoriju, iespējams, izdzēsīsit norādes atsauci uz to.
Tomēr tas neietekmēs attālo krātuvi un citu darbu.

Sintakse:git tālvadības noņemt
Komanda:git tālvadība noņemt proj1


Ko darīt, ja vietējā filiāle būtu iestatīta, lai izsekotu filiāli no noņemtā ‘proj1’ repozitorija?
Nu, jūsu vietējā filiāle (un līdz ar to arī darbs) ir drošs un joprojām ir klāt, tikai tā attālās izsekošanas atsauce un konfigurācija iestatījumi būs automātiski noņemts

Dzēst attālo filiāli

Saka tev nejauši pastūma tavu personisks rupjš darbs pie atzarojums uz tālvadības pulti bet nevēlaties, lai citi to vēl pārbauda -
Noņemiet filiāli ‘unfinishedWork’ no tālvadības pogas ‘svn ’-
Komanda:git filiāle -vv# Sarakstiet attālās izsekošanas zarus

kā izmantot kursoru CSS



Sintakse:git push - dzēst
Komanda:git push - dzēst svn nepabeigts darbs


Likvidācija

Ar to mēs esam nonākuši pie šī raksta beigām. Ja atradāt šo “ Apmācība ”Attiecīgs, pārbaudiet Autors: Edureka, uzticams tiešsaistes mācību uzņēmums ar vairāk nekā 250 000 apmierinātu izglītojamo tīklu visā pasaulē. Edureka DevOps sertifikācijas apmācības kurss palīdz izglītojamajiem iegūt zināšanas par dažādiem DevOps procesiem un rīkiem, piemēram, Leļļu, Jenkins, Nagios un GIT, lai automatizētu vairākus SDLC soļus.