Takto zdieľate svoju prácu na vzdialenom úložisku git



Zdieľajte svoju miestnu prácu s tímom na vzdialenom úložisku, naučte sa tiež spravovať ju pri sledovaní zmien a buďte synchronizovaní.

Vaša práca prináša väčšiu hodnotu, keď je publikovaná a zdieľaná so svetom (alebo s vašim tímom) !!!

Začíname

Choď , ako viete, je najpopulárnejším nástrojom na správu verzií, aký sa v súčasnosti používa obchod , stopa a verzia akýkoľvek druh údaje .
Niektoré z kľúčových vlastností gitu sú jeho rýchlosť , distribuované príroda, bezpečnosť , bezbolestné rozvetvenie a zlúčenie spolu s kolaboratívny pracovať medzi viacerými prispievateľmi.

Od tejto chvíle začnime našu diskusiu. Zamerajme sa preto na to, ako vám pomáha git spolupracovať a zdieľajte svoju prácu s rovesníkmi, aby všetci mohli pracovať na rovnakom kóde súčasne bez toho, aby si navzájom poškodili údaje.
To je miesto, kde koncept vzdialené úložiská prísť na obrázok.
Predpokladám, že ste zvládli umenie z tvojho pracovný adresár (súborový systém) do Pracovná oblasť a nakoniec to odovzdáš svojmu miestne úložisko (databáza).

Toto nás inšpiruje posunúť naše údaje na ďalšiu úroveň „Remote repo“ a zverejniť ich na vzdialenom úložisku.

základy servera sql pre začiatočníkov

Nie sú moje údaje už uložené v databáze git?

Áno, je! Ako však ukazuje nasledujúci diagram, vaše údaje sú stále v lokálna databáza po vás spáchať a ešte nie sú zdieľané so svojimi kolegami.
4-vrstvová architektúra
Tento článok vypĺňa medzeru medzi vyzvedaním našich údajov z vášho miestne úložisko a prenesením do ďalšej vrstvy nazývanej vzdialené úložisko .





Čo je to vzdialené úložisko

Databáza zhromaždených informácií uložených na danom mieste, ktoré môže byť zdieľané so svojimi spoluhráčmi tým, že im ich dáte prístup .
Ideálne je hostiť na a oblak alebo na a server (lokálne alebo vzdialené) na internete alebo v miestnej sieti.
Vzdialené úložisko je rovnaké ako vaše miestne úložisko git, až na to, že sa všeobecne deklaruje ako holé úložisko, aby ste nemali pracovnú kópiu ako váš miestny.
Toto sa robí s cieľom obmedziť priame zmeny vykonané vo vzdialenom úložisku.

Holé úložisko koncept je ďalšou výhodou pre vzdialené úložisko, aby si ho udržal chránené a používajú sa výlučne na účely zdieľania kódu medzi členmi tímu.
To sa dosiahne vyhlásením vzdialeného úložiska za holé pomocou príkazu „- spravodlivo„Príznak v čase jeho inicializácie ako úložiska git.
Týmto spôsobom sa vaše úložisko vytvorí pomocou metadát git alebo inými slovami git objektov uložených iba v skrytom adresári „.git“ a pre priame pridanie údajov nie je k dispozícii žiadna pracovná kópia.
Príkaz:git init --bare.

S ohľadom na to budeme v budúcnosti vidieť viac spôsobov, ako spravovať vzdialené repo a ako synchronizujeme našu miestnu prácu so vzdialeným.



Vytvorte vzdialené úložisko

Najdôležitejšie je, aby ste sa rozhodli pre umiestnenie, na ktoré chcete umiestniť svoje vzdialené repo.
Existuje pomerne veľa populárnych cloudových úložísk git hosting, ako napríklad - GitLab , BitBucket , GitHub , Perforce a CloudForge vymenovať zopár.
V tomto príspevku uvažujem o GitHube, pretože toto je miesto, kde som si prvýkrát začal uchovávať svoje úložiská git. Najprv sa musíte prihlásiť do účtu GitHub a potom vytvoriť nové úložisko , vytvorí sa URL smerujúca na toto vzdialené repo.


Git podporuje protokoly ssh, git, http a https na adresovanie adresy URL úložiska.

Prípadne môžete svoj projekt umiestniť aj inde, napríklad a Server Linux podľa nasledujúcich príkazov-
cd $ DOMOV
mkdir remote_repo
cd remote_repo
git init --bare.

Pripojte diaľkový ovládač k miestnemu zariadeniu

Pripojenie diaľkového ovládača k vašej pracovnej kópii jednoducho znamená vytvorenie súboru obslužný program ukazovateľa referencie na diaľkový ovládač alebo sa jednoducho nazýva „ diaľkový ovládač „.
Poďme na môj projekt, ktorý chcem zverejniť -cd learnRemotes
Syntax:git remote add
Príkaz:git remote add origin https://github.com/divyabhushan/learnRemotes.git

'Pôvod.' je predvolené referenčný názov diaľkového ovládača. “ (vzdialený názov musí byť nejaký relevantný názov)
Pozrime sa, či to fungovalo, pomocou príkazu:git remote

To robilo :)

Vytlačte si aj vzdialenú URL spolu s menom:
git remote -v

Výborne! Všetko je pripravené na nadviazanie pripojenia k vzdialenému úložisku z miestneho pracovného adresára.

Čas zverejniť

Syntax:git push --all --tags[-u | --set-upstream]
Príkaz:git push pôvodný majster

Takže toto čítate ako „Push the diff of revits to origin from local master“ .

Ak skontrolujete svoj účet GitHub, musia sa tam zobraziť vaše miestne potvrdenia (údaje) -



Sledovanie pobočiek

Úspešne ste teda publikovali svoju prácu na vzdialenom úložisku.
Je však dôležité, aby ste nastavili svoju miestnu pobočku na stopa zmeny na vzdialenej vetve automaticky.
Použi '--set upstreamalebo-u‘Príznak spolu s príkazom‘ git push ’
Príkaz:git push -u origin master

farebne odlíšené vetvy


Poďme ďalej vytvoriť nový záväzok na „hlavnej“ vetve a overiť, ako to git zistí -
Príkaz:stav git


Zobraziť sledovacie vetvy v podrobnom režime
Príkaz:vetva git -vv


Preto vždy existuje rozdiel v záväzkoch medzi miestnym a vzdialeným úložiskom na sledovanej vetve, Git vám to oznámi.
Nie je to super !!!

Ako by sa ostatní pripojili k vášmu diaľkovému ovládaniu?

Je to hračka, keď ty klon vzdialené úložisko !!!

Takže klonovanie zo vzdialeného úložiska urobí najskôr dve veci, vaše vzdialená referencia sa pridá automaticky a druhé predvolené pobočka je nastavený na stopa vzdialená pobočka automaticky.

Krok 1: Naklonujte svoje vzdialené repo ako iný užívateľ -
Príkaz:git klon https://github.com/divyabhushan/learnRemotes.git developer2
cd developer2

Krok 2: Zobraziť diaľkový ovládač a jeho adresu URL
Príkaz:git remote -v


Krok 3: Uveďte sledovacie vetvy
Príkaz:vetva git -vv


Zábava začína, keď program „developer2“ začne svoju vlastnú prácu a začne tlačiť na diaľkové ovládanie.

Môžete sa pripojiť a prispievať do viac ako jedno diaľkové ovládanie úložisko z a jediný projekt .

Zobraziť vzdialené pobočky

Príkaz:vetva git -r


Pomocou možnosti „-a“ môžete tlačiť miestne aj vzdialené pobočky. Po vytvorení niekoľkých miestnych pobočiek to vyskúšajte v miestnom úložisku.

Ako ostatní prispievajú do vášho diaľkového ovládača?

Pôvodné nastavenie
Developer2 sa rozhodne zmeniť niekoľko vecí, ako napríklad:
do. Vytvoriť novú „funkciu“ z posledného potvrdenia v „hlavnej“ vetve a urobte nový záväzok na pobočke „feature“
Príkazy:
funkcia git checkout -b
echo 'vylepšenia funkcií'> feature.txt
git pridať. && git commit -m 'vylepšenia funkcií'

b. Vytvoriť iná vetva ‘feature2’ ako staršia komitácia na vetve ‘master‘
Príkazy:
git checkout -b feature2 95651fb
echo 'feature2 added'> feature2.txt
git pridať. && git commit -m 'Pridanie zmien feature2'

Poďme si predstaviť vetvy na stroji developer2 spolu s informáciami o sledovaní:

Ako ste si určite všimli, nové pobočky nie sú nastavené na sledovanie vzdialených pobočiek.

Stlačenie zmien do diaľkového ovládača
Najskôr mi dovoľte stlačiť vetvu ‘feature‘ na diaľku s príznakom ‘–set-upstream alebo -u‘
Príkaz:funkcia pôvodu git push -u

ako nastaviť atóm pre python




Na diaľkovom ovládaní sa vytvorí nová pobočka, ak už neexistuje !!!

V tejto chvíli uveďte vzdialené pobočky pomocou príkazu: „git branch -r“




Ďalším spôsobom, ako sledovať vzdialenú vetvu
Ďalej nastavíme vetvu ‘feature2’ tiež tak, aby ukazovala na rovnakú vetvu ‘feature’ na diaľkovom ovládaní
Príkaz:git branch --set-upstream-to = origin / feature feature2



farebne odlíšená vetva


Krátky tip: Názov miestnej pobočky môžete vynechať, ak sa už na tejto pobočke nachádzate, inými slovami, miestna pobočka je už odhlásená.

Zoznam vetiev ešte raz v podrobnom režime, príkaz:vetva git -vv



Všimnite si, že lokálne pobočky „feature“ aj „feature2“ ukazujú na rovnakú vzdialenú vetvu „feature“.

Zostaňte synchronizovaný s diaľkovým ovládačom - načítanie, ťahanie a tlačenie

Uvažujme o časti, kde vzdialená pobočka sledovanie už bolo aktualizované, čo potom?
Jednoduchý 'stav git„Alebo“pokladňa git„Alebo dokonca„vetva git -vv„Velenie nás varuje pred takým nesúladom -



Program „Developer2“ musí najskôr aktualizovať miestne odkazy a objekty („ načítať git ‘) A potom zlúčiť vzdialené a miestne zmeny (‘ git merge ’).
Je zaujímavé, že tieto dva príkazy môžete nahradiť jediným príkazom „git pull“.
Syntax:choď ťahať

–Pre nesledovanú vetvu
Syntax: git pull [:]
Príkaz:funkcia pôvodu git pull: feature2

–Pre sledovanú vetvu
Syntax: git pull
Príkaz:git pull




=> V praxi môžu v tejto fáze vzniknúť konflikty, keď pre jednoduchosť vytiahnete z diaľkového ovládača, vygeneroval som zmenu bez konfliktu.

Po zatiahnutí (načítanie a zlúčenie) vývojára2 musia najnovšie vzdialené zmeny teraz zverejniť svoje vlastné dielo
Príkaz:git push origin HEAD: funkcia
Poznámka: funkcia „upstream branch“ sa nezhoduje s názvom miestnej pobočky „feature2“, musíte ju uviesť výslovne



Pripomienka : „HEAD“ je najnovší potvrdenie v miestnej pobočke „feature2“.

Kedy použiť ‘git fetch’?
V časoch, keď potrebujete aktualizovať svoje referenčné hlavy bez skutočného sťahovania (ťahania) z diaľkového ovládača.
Alebo keď budú vzdialené vetvy pri aktualizácii upravené / vymazané, budete musieť spustiť príkaz fetch s ‘--prun„Možnosť.
Osvedčeným postupom je, že príkaz „git fetch“ musíte spustiť zakaždým, keď začnete pracovať na miestnom úložisku.

Vzdialená správa

Na záver by ste chceli vykonať niektoré úlohy spojené s údržbou, ako je premenovanie alebo odstránenie diaľkových ovládačov a konárov.
Sú rovnako dôležité ako predchádzajúce príkazy.

Premenovať diaľkový ovládač

Syntax:git vzdialené premenovanie
Príkaz:git vzdialené premenovanie snv_repo svn
Zvážte napríklad projektového manažéra spojeného s 3 projektmi -


Odstrániť vzdialený odkaz

Predpokladajme, že už nebudete synchronizovať so vzdialeným úložiskom, pravdepodobne odstránite odkaz na tento ukazovateľ.
To však nebude mať vplyv na vzdialené úložisko a prácu ostatných.

Syntax:git remote remove
Príkaz:git remote remove proj1


Čo keby ste mali miestnu pobočku nastavenú na sledovanie pobočky z odstráneného úložiska „proj1“?
No tvoj miestna pobočka (a teda aj práca) je bezpečné a stále prítomný, iba jeho odkaz na vzdialené sledovanie a konfigurácia nastavenia budú automaticky odstránené

funkcie Java 9 s príkladmi

Odstrániť vzdialenú vetvu

Povedz ty náhodne tlačil svoje osobné hrubá práca na a vetva na dialkove ale nechcem, aby to ešte ostatní skontrolovali -
Odstráňte vetvu „unfinishedWork“ zo vzdialeného „svn“ -
Príkaz:vetva git -vv# Vymenujte vetvy vzdialeného sledovania



Syntax:git push - odstrániť
Príkaz:git push --delne svn nedokončenéPráca


Likvidácia

Týmto sa dostávame na koniec tohto článku. Ak ste našli toto Výukový program „Relevantné, pozrite sa na autor: Edureka, dôveryhodná online vzdelávacia spoločnosť so sieťou viac ako 250 000 spokojných študentov rozmiestnených po celom svete. Kurz certifikácie EdOkaka DevOps Certification Training pomáha študentom získať odborné znalosti v rôznych procesoch a nástrojoch DevOps, ako sú Puppet, Jenkins, Nagios a GIT na automatizáciu viacerých krokov v SDLC.