Így oszthatja meg munkáját egy git távoli adattáron



Ossza meg helyi munkáját a távoli adattár csapatával, tanulja meg azt is kezelni, miközben nyomon követi a változásokat, és szinkronban marad.

Munkád nagyobb hozzáadott értéket jelent, amikor közzéteszik és megosztják a világgal (vagy a csapatoddal) !!!

Elkezdeni

Megy , mint tudják, a legnépszerűbb verziókészítő eszköz, amelyet ma használnak bolt , vágány és változat bármilyen adat .
A git néhány fő jellemzője annak sebesség , megosztott természet, Biztonság , fájdalommentes elágazás és egyesülés együtt együttműködő munka több közreműködő között.

Innen kezdve a beszélgetést, összpontosítsunk arra, hogy a git hogyan segít együttműködik és ossza meg munkáját a társaival, hogy mindenki ugyanazon a kódon dolgozzon egyszerre anélkül, hogy megrontanák egymás adatait.
Itt jön létre a távoli adattárak jöjjön a képbe.
Feltételezem, hogy elsajátította a művészetet a te munka könyvtár (fájlrendszer) a Összpontosítási körlet és végül elkötelezem az önnek helyi adattár (adatbázis).

Ez arra ösztönöz minket, hogy adatainkat a következő távoli „Távoli repóba” tegyük, hogy távoli adattárban tegyük közzé.

Az adataimat már nem tárolják egy git adatbázisban?

Igen, ez az! Azonban, amint azt az alábbi ábra mutatja, adatai továbbra is a helyi adatbázis Ön után elkövetni és még nem osztotta meg kollégáival.
4 szintes architektúra
Ez a cikk kitölti az űrt az adatainak az Ön általi felvétele között helyi adattár és a következő rétegnek viszi távoli adattár .





Mi a távoli adattár

Az összegyűjtött információk egy olyan helyen tárolt adatbázisa, amely lehet megosztva csapattársaival azzal, hogy megadod nekik hozzáférés .
Ideális esetben a felhő vagy a szerver (helyi vagy távoli) az interneten vagy a helyi hálózaton.
A távoli adattár ugyanolyan, mint a helyi git-adattár, azzal a különbséggel, hogy általában puszta adattárként van deklarálva, hogy ne legyen olyan munkapéldánya, mint a helyi.
Ez a távoli adattáron végrehajtott közvetlen változtatások korlátozása érdekében történik.

Csupasz tárház a koncepció egy további előnye a távoli adattárnak annak megőrzésében védett és kizárólag arra használható, hogy megossza a kódot a csapattagok között.
Ezt úgy érhetjük el, hogy a távoli adattárat csupasznak nyilvánítjuk a--éppen‘Zászló a git-adattárként való inicializálásakor.
Ezzel a repo csak a rejtett ‘.git’ könyvtár alatt tárolt git metaadatokkal vagy más szavakkal létrehozott git objektumokkal jön létre, és senki számára nem áll rendelkezésre munkapéldány az adatok közvetlen hozzáadásához.
Parancs:git init - csupasz.

Ezt szem előtt tartva, a továbblépés során megismerjük a távoli repo kezelésének további módjait, és hogyan szinkronizálhatjuk helyi munkánkat a távvezérlővel.



Hozzon létre egy távoli adattárat

Először is el kell döntenie, hogy melyik helyre szeretné helyezni a távoli repót.
Van néhány népszerű felhő alapú git tárhely, például - GitLab , BitBucket , GitHub , Szükségképpen és CloudForge hogy csak néhányat említsünk.
Ebben a bejegyzésben a GitHubra gondolok, mivel ez az a hely, ahol először kezdtem el tárolni a git tárhelyeimet. Először csak annyit kell tennie, hogy bejelentkezik egy GitHub-fiókba, majd hozzon létre egy új adattárat , ez létrehoz egy URL-t, amely erre a távoli repóra mutat.


A Git támogatja az ssh, git, http és https protokollokat a lerakat URL címzéséhez.

Alternatív megoldásként elhelyezheti a projektjét máshol is, mondjuk a Linux szerver az alábbi parancsok követésével-
cd $ HOME
mkdir remote_repo
cd remote_repo
git init - csupasz.

Csatlakoztassa a távirányítót a helyi géphez

A távirányító csatolása a munkamásolathoz egyszerűen azt jelenti, hogy a pointer referenciakezelő a távirányítóhoz, vagy egyszerűen „ távkezelő '.
Ugrás a projektemre, amelyet közzé akarok tenni-cd learnRemotes
Szintaxis:git remote add
Parancs:git távoli eredet hozzáadása https://github.com/divyabhushan/learnRemotes.git

'Eredet az a alapértelmezett a távkezelő hivatkozási neve. ” (a távoli névnek valamilyen releváns névnek kell lennie)
Nézzük meg, hogy ez működött-e a következő paranccsal:git távirányító

Tette :)

Nyomtassa ki a távoli URL-t a névvel együtt:
git távirányító -v

Szép munka! Minden készen áll arra, hogy kapcsolatot létesítsen a távoli adattárral a helyi munkakönyvtárból.

jobtracker és feladattracker a hadoopban

Ideje közzétenni

Szintaxis:git push - minden - címkék[-u | - set-upstream]
Parancs:git push origó mester

Tehát ezt olvassa „Nyomja meg a különbséget a helyi mestertől való származásért” .

Ha ellenőrzi GitHub-fiókját, akkor a helyi kötelezettségvállalásokat (adatokat) meg kell jeleníteni



Ágak követése

Tehát sikeresen közzétette munkáját a távoli adattáron.
Fontos azonban, hogy a helyi fiókot a következőhöz hozzák létre: vágány a távoli ág változásai automatikusan.
Használja a '- felfelévagy-u‘Zászló a’ git push ’paranccsal együtt
Parancs:git push -u eredetű mester

színkódolt ágak


Hozzunk létre egy új elkötelezettséget a „master” ágon, és ellenőrizzük, hogy a git hogyan érzékeli
Parancs:git státusz


Mutassa meg a követési ágakat részletes módban
Parancs:git ág -vv


Ezért minden alkalommal eltérés van a helyi és a távoli adattár között a követett ágon, a Git értesíteni fogja.
Hát nem klassz !!!

Hogyan csatlakoznának mások a távvezérlőhöz?

Ez egy darab sütemény, amikor te klón egy távoli adattár !!!

Tehát, egy távoli adattárból történő klónozás először két dolgot végez, az Önét távoli referencia automatikusan hozzáadódik, és a második alapértelmezett ág értékre van állítva vágány távoli ág automatikusan.

1. lépés: Klónozza a távoli repót más felhasználóként -
Parancs:git klón https://github.com/divyabhushan/learnRemotes.git developer2
cd fejlesztő2

2. lépés: Mutassa meg a távvezérlőt és annak URL-jét
Parancs:git távirányító -v


3. lépés: Sorolja fel a követési ágakat
Parancs:git ág -vv


A móka akkor kezdődik, amikor a „fejlesztő2” megkezdi saját munkáját, és a távirányítóra nyomja.

Csatlakozhat és hozzájárulhat ehhez több távirányító adattár a egyetlen projekt .

Tekintse meg a távoli ágakat

Parancs:git ág -r


Az ‘-a’ opcióval nyomtathat helyi és távoli fiókokat is, néhány helyi fiók létrehozása után próbálkozzon a helyi repóban.

Hogyan járulnak hozzá mások a távvezérlőhöz?

Kezdeti beállítás
A Developer2 úgy dönt, hogy megváltoztat néhány dolgot, például:
nak nek. Teremt egy új „funkciót” a „master” ág legutóbbi elkötelezettségéből, és készítsen egy új elkötelezettség „jellemző” ágon
Parancsok:
git checkout -b funkció
echo 'feature enhancements'> feature.txt
git add. && git pühend -m 'funkciójavítások'

b. Teremt egy régebbi „feature2” elágazás a „master” ágon kötődik
Parancsok:
git checkout -b feature2 95651fb
echo 'feature2 added'> feature2.txt
git add. && git kötelezettség -m 'A 2. jellemző változásainak hozzáadása'

Vizualizáljuk az ágakat a developer2 gépen a nyomkövetési információkkal együtt:

Amint biztosan észrevette, az új ágak nem a távoli ágak nyomon követésére vannak felállítva.

A változtatásokat távvezérlőre tolja
Először hadd toljam a „feature” ágat a „–set-upstream vagy -u” jelzővel távoli irányba
Parancs:git push -u eredetű funkció




Új ág jön létre a távvezérlőn, ha még nem létezik !!!

Ebben a pillanatban sorolja fel a távoli ágakat a következő paranccsal: ‘git branch -r’




A távoli elágazás követésének másik módja
Továbbá állítsuk be a „feature2” elágazást arra is, hogy a távvezérlő ugyanazon „feature” elágazására mutasson
Parancs:git elágazás - set-upstream-to = origó / jellemző jellemző2



színkódolt ág


Gyors tipp: Elhagyhatja a helyi fiók nevét, ha már azon az ágon tartózkodik, más szóval, a helyi fiók már kijelentkezik.

Sorolja fel ismét az ágakat bőbeszédű módban, parancs:git ág -vv



Figyeljük meg, mind a helyi ágak „feature”, mind a „feature2” ugyanarra a távoli elágazásra mutatnak.

A távvezérlővel szinkronban maradva - húzza, húzza és tolja

Vegyük fontolóra azt a részt, ahol a távoli ág a nyomon követését már frissítettük, akkor mi van?
Egy egyszerűgit státuszVagy egygit pénztárVagy akár agit ág -vv„A parancs ilyen eltéréssel figyelmeztet bennünket-

hogyan lehet a táblában paramétert létrehozni



A „Developer2” -nek először frissítenie kell a helyi referenciákat és objektumokat („ git letöltés ’), Majd egyesítse a távoli és a helyi változásokat (’ git merge ’).
Érdekes módon ezt a két parancsot egyetlen „git pull” paranccsal helyettesítheti.
Szintaxis:megy Húzni

–Pályázatlan ághoz
Szintaxis: git pull [:]
Parancs:git pull origó jellemző: feature2

–Lánctalpas ághoz
Szintaxis: git pull
Parancs:git húzás




=> A gyakorlatban konfliktusok merülhetnek fel ebben a szakaszban, amikor az egyszerűség kedvéért a távirányítóból választasz, konfliktus nélküli változtatást generáltam.

A „fejlesztő2” húzása (beolvasása és egyesítése) után a távoli legújabb változtatásoknak most közzé kell tenniük saját
Parancs:git push origó HEAD: jellemző
Megjegyzés: az upstream ág „feature” nem egyezik meg a „branch2” helyi ág nevével, ezt kifejezetten meg kell adnia



Emlékeztető : A „HEAD” a helyi „feature2” ág legújabb elkötelezettsége.

Mikor kell használni a „git fetch” szolgáltatást?
Olyankor, amikor csak frissítenie kell referencia fejek anélkül, hogy ténylegesen letöltene (húzna) a távirányítóról.
Vagy ha a távoli ágakat módosították / törölték a frissítéskor, akkor a fetch parancsot a ’--aszalt szilva' választási lehetőség.
Bevált gyakorlatként minden alkalommal el kell futtatnia a „git fetch” parancsot, amikor a helyi repóval foglalkozik.

Távoli kezelés

Végül néhány háztartási feladatot szeretne végrehajtani, például átnevezni vagy eltávolítani a távirányítókat és az ágakat.
Ezek ugyanolyan fontosak, mint az előző parancsok.

egyszerű bevezetés az adattudományba

Nevezze át a távvezérlőt

Szintaxis:git távoli átnevezés
Parancs:git távoli átnevezése snv_repo svn
Vegyünk például egy 3 projekthez kapcsolódó projektmenedzsert -


Távoli referencia törlése

Tegyük fel, hogy nincs többé szinkronizálva egy távoli adattárral, valószínűleg törli a mutató hivatkozását.
Ez azonban nem fogja befolyásolni a távoli adattárat és mások munkáját.

Szintaxis:git távoli eltávolítás
Parancs:git távoli eltávolítás proj1


Mi lenne, ha beállítana egy helyi fiókot, hogy nyomon követhessen egy ágat az eltávolított ‘proj1’ adattárból?
Nos, a te helyi fiók (és ezért a mű) az biztonságos és még mindig jelen van, csak annak távkövetési referencia és konfiguráció beállítások lesznek automatikusan eltávolítva

Távoli fiók törlése

Mondom véletlenül lökte a személyes durva munka a elágazás a távirányítóhoz de még nem akarom, hogy mások ellenőrizzék -
Távolítsa el a ‘unfinishedWork’ ágat a távoli ‘svn’ -
Parancs:git ág -vv# Sorolja fel a távkövető ágakat



Szintaxis:git push - törlés
Parancs:git push --delete svn uninishedWork


Befejezéskor

Ezzel a cikk végére értünk. Ha megtalálta ezt Bemutató ' ide vonatkozó, nézd meg a az Edureka, egy megbízható online tanulási vállalat, amelynek több mint 250 000 elégedett tanulóval rendelkező hálózata elterjedt az egész világon. Az Edureka DevOps tanúsító tanfolyam segít a tanulóknak szaktudást szerezni a különféle DevOps folyamatokban és olyan eszközökben, mint például a Báb, a Jenkins, a Nagios és a GIT az SDLC több lépésének automatizálásában.