Takto sdílíte svou práci na vzdáleném úložišti git



Sdílejte svou místní práci s týmem na vzdáleném úložišti, naučte se ji také spravovat při sledování změn a zůstaňte synchronizováni.

Vaše práce přináší větší hodnotu, když je publikována a sdílena se světem (nebo vaším týmem) !!!

Začínáme

Jít , jak víte, je dnes nejpopulárnějším nástrojem pro správu verzí obchod , dráha a verze jakýkoli druh data .
Některé z klíčových funkcí gitu jsou jeho Rychlost , distribuováno Příroda, bezpečnostní bezbolestný větvení a slučování spolu s spolupráce pracovat mezi více přispěvateli.

Počínaje naší diskusí odsud se zaměřme na to, jak vám git pomáhá spolupracovat a sdílejte svou práci s kolegy, aby všichni mohli pracovat na stejném kódu současně, aniž by si navzájem poškozovali data.
To je místo, kde koncept vzdálená úložiště přijít na obrázek.
Předpokládám, že jste zvládli umění z vašeho pracovní adresář (souborový systém) do Pracovní plocha a nakonec to odevzdáte svému místní úložiště (databáze).

To nás inspiruje k tomu, abychom posunuli naše data na další úroveň „Vzdáleného repo“ a publikovali je na vzdáleném úložišti.

předat hodnotu předat odkaz java

Nejsou moje data již uložena v databázi git?

Ano to je! Jak je však uvedeno v níže uvedeném diagramu, vaše data jsou stále na serveru lokální databáze po vás spáchat to a zatím nesdílíte se svými kolegy.
Čtyřvrstvá architektura
Tento článek vyplňuje mezeru mezi vyzvednutím našich údajů z vašeho místní úložiště a přenést ji do další vrstvy zvané vzdálené úložiště .





Co je vzdálené úložiště

Databáze shromážděných informací uložených na místě, které může být sdílené se svými spoluhráči tím, že jim je přístup .
Je ideálně umístěn na a mrak nebo na a serveru (místní nebo vzdálený) na internetu nebo v místní síti.
Vzdálené úložiště je stejně jako vaše místní úložiště git, kromě toho, že je obecně deklarováno jako holé úložiště, aby nedošlo k pracovní kopii, jako je vaše místní.
Důvodem je omezení přímých změn provedených ve vzdáleném úložišti.

Holé úložiště koncept je další výhodou pro vzdálené úložiště, aby si jej udržel chráněný a budou použity pouze za účelem sdílení kódu mezi členy týmu.
Toho je dosaženo prohlášením vzdáleného úložiště za holé pomocí ‚--prostě„Příznak v době jeho inicializace jako úložiště git.
Tímto způsobem se vaše repo vytvoří pomocí metadat git nebo jinými slovy git objektů uložených pouze ve skrytém adresáři „.git“ a pro přímé přidání dat není k dispozici žádná pracovní kopie.
Příkaz:git init --bare.

S ohledem na tuto skutečnost uvidíme vpřed další způsoby, jak spravovat vzdálené repo a jak synchronizujeme naši místní práci se vzdáleným.



Vytvořte vzdálené úložiště

Nejdůležitější je rozhodnout se o umístění, na které chcete umístit vzdálené repo.
Existuje poměrně málo populárních cloudových úložišť git hostingu, jako například - GitLab , BitBucket , GitHub , Nezbytně a CloudForge abychom jmenovali alespoň některé.
V tomto příspěvku uvažuji o GitHubu, protože toto je místo, kde jsem poprvé začal uchovávat své git repozitáře. Nejprve se musíte přihlásit k účtu GitHub a poté vytvořit nové úložiště , vytvoří se URL odkazující na toto vzdálené úložiště.


Git podporuje protokoly ssh, git, http a https k adresování adresy URL úložiště.

Případně můžete svůj projekt umístit i jinam, například Linuxový server podle níže uvedených příkazů-
cd $ HOME
mkdir remote_repo
cd remote_repo
git init --bare.

Připojte dálkový ovladač k místnímu počítači

Připojení dálkového ovladače k ​​vaší pracovní kopii jednoduše znamená vytvoření obslužná rutina odkazu na ukazatel pro dálkový ovladač nebo jednoduše nazvaný „ dálkový ovladač '.
Pojďme přeskočit na můj projekt, který chci publikovat -cd learnRemotes
Syntax:git remote add
Příkaz:git remote add origin https://github.com/divyabhushan/learnRemotes.git

'Původ je výchozí referenční název vzdáleného ovladače. “ (vzdálený název musí být nějaký relevantní název)
Podívejme se, jestli to fungovalo, pomocí příkazu:git remote

Stalo se :)

Vytiskněte si také vzdálenou URL spolu s názvem:
git remote -v

Výborně! Jste připraveni na navázání připojení ke vzdálenému úložišti z místního pracovního adresáře.

Čas publikovat

Syntax:git push - all --tags[-u | --set-upstream]
Příkaz:git push origin master

Četli jste to jako „Push the diff of revits to origin from local master“ .

Pokud zkontrolujete svůj účet GitHub, musí se tam zobrazit vaše místní potvrzení (data) -



Sledování poboček

Takže jste úspěšně publikovali svou práci ve vzdáleném úložišti.
Je však důležité nastavit místní pobočku na dráha změny na vzdálené větvi automaticky.
Použijte ‚--set upstreamnebo-u‘Příznak spolu s příkazem‘ git push ’
Příkaz:git push -u původ master

barevně označené větve


Pojďme dále vytvořit nový závazek na ‚hlavní‘ větvi a ověřit, jak to git detekuje -
Příkaz:stav git


Zobrazit sledovací větve v podrobném režimu
Příkaz:git větev -vv


Proto pokaždé existuje rozdíl v závazcích mezi místním a vzdáleným úložištěm na sledované větvi, Git vám to oznámí.
Není to v pohodě !!!

Jak by se ostatní připojili k vašemu dálkovému ovladači?

Je to hračka, když ty klon vzdálené úložiště !!!

Takže klonování ze vzdáleného úložiště dělá nejdříve 2 věci, vaše vzdálená reference se přidá automaticky a druhé výchozí větev je nastaven na dráha vzdálená větev automaticky.

Krok 1: Naklonujte vzdálené repo jako jiný uživatel -
Příkaz:git clone https://github.com/divyabhushan/learnRemotes.git developer2
cd developer2

Krok 2: Zobrazit dálkový ovladač a jeho adresu URL
Příkaz:git remote -v


Krok 3: Seznam sledovacích větví
Příkaz:git větev -vv


Zábava začíná, když „developer2“ zahájí vlastní práci a stiskne ovladač.

Můžete se připojit a přispívat do více než jedno dálkové ovládání úložiště z a jediný projekt .

Zobrazit vzdálené větve

Příkaz:git větev -r


Pomocí možnosti „-a“ můžete vytisknout místní i vzdálené pobočky, po vytvoření několika místních poboček to zkuste v místním úložišti.

Jak ostatní přispívají k vašemu dálkovému ovládání?

Počáteční nastavení
Developer2 se rozhodne změnit několik věcí, například:
na. Vytvořit novou „funkci“ z nejnovějšího potvrzení v „hlavní“ větvi a vytvořte nové potvrzení na větvi „feature“
Příkazy:
funkce git checkout -b
echo 'feature enhancements'> feature.txt
git přidat. && git commit -m 'vylepšení funkcí'

b. Vytvořit jinou větev „feature2“ než starší potvrzení ve větvi „master“
Příkazy:
git checkout -b feature2 95651fb
echo 'feature2 added'> feature2.txt
git přidat. && git commit -m 'Přidání změn feature2'

Pojďme si představit větve na stroji developer2 spolu s informacemi o sledování:

Jak jste si určitě všimli, nové větve nejsou nastaveny tak, aby sledovaly vzdálené větve.

Posunutí změn do dálkového ovladače
Nejprve mi dovolte poslat větev „feature“ na vzdálenou s příznakem „–set-upstream nebo -u“
Příkaz:funkce původu git push -u

co jsou instance proměnné v Javě




Na dálkovém ovladači bude vytvořena nová větev, pokud již neexistuje !!!

V tuto chvíli uveďte vzdálené větve pomocí příkazu: „git branch -r“




Další způsob, jak sledovat vzdálenou větev
Dále nastavíme větev „feature2“, aby ukazovala na stejnou větev „feature“ na dálkovém ovladači
Příkaz:git branch --set-upstream-to = origin / feature feature2



barevně odlišená větev


Rychlý tip: Název místní pobočky můžete vynechat, pokud již na této pobočce jste, jinými slovy, místní pobočka je již odhlášena.

Seznam větví v podrobném režimu ještě jednou, příkaz:git větev -vv



Všimněte si, že „místní“ pobočky „feature“ a „feature2“ ukazují na stejnou „funkci“ vzdálené pobočky.

Zůstaňte synchronizovaní s dálkovým ovládáním - načítejte, táhněte a tlačte

Zvažme tu část, kde vzdálená větev sledování již bylo aktualizováno, co potom?
Jednoduchý 'stav git„Nebo“pokladna git‚Nebo dokonce‚git větev -vv„Příkaz nás varuje před takovým nesouladem -



„Developer2“ musí nejprve aktualizovat místní odkazy a objekty („ git načíst „) A poté sloučit vzdálené a místní změny („ git merge “).
Zajímavé je, že tyto dva příkazy můžete nahradit jediným příkazem „git pull“.
Syntax:jít sem

–Pro nesledovanou větev
Syntaxe: git pull [:]
Příkaz:funkce git pull origin: feature2

–Pro sledovanou větev
Syntaxe: git pull
Příkaz:git pull




=> V praxi mohou v této fázi nastat konflikty, když pro jednoduchost vytáhnete z dálkového ovladače, generoval jsem změnu bezkonfliktního potvrzení.

Po načtení (načtení a sloučení) vývojáře2 musí nejnovější vzdálené změny nyní publikovat vlastní práci -
Příkaz:Funkce git push origin HEAD: funkce
Poznámka: „funkce“ předcházející větve se neshoduje s názvem místní pobočky „feature2“, musíte ji uvést výslovně



Připomínka : „HEAD“ je nejnovější potvrzení v místní pobočce „feature2“.

Kdy použít „git fetch“?
Ve chvílích, kdy potřebujete aktualizovat referenční hlavy bez skutečného stahování (vytažení) z dálkového ovladače.
Nebo když budou vzdálené větve při aktualizaci upraveny / odstraněny, budete muset spustit příkaz načtení pomocí ‚--prořezávat„Možnost.
Osvědčeným postupem je, že musíte spustit příkaz „git fetch“ pokaždé, když začnete pracovat na místním repo.

Vzdálená správa

Nakonec byste chtěli provést některé úklidové úkoly, jako je přejmenování nebo odebrání dálkových ovladačů a větví.
Jsou stejně důležité jako předchozí příkazy.

Přejmenovat dálkový ovladač

Syntax:git vzdálené přejmenování
Příkaz:git vzdálené přejmenování snv_repo svn
Zvažte například projektového manažera spojeného se 3 projekty -


Odstranit vzdálený odkaz

Předpokládejme, že již nebudete synchronizováni se vzdáleným úložištěm, pravděpodobně odstraníte odkaz na něj.
To však neovlivní práci vzdáleného úložiště a ostatních.

Syntax:git remote remove
Příkaz:git remote remove proj1


Co kdybyste měli místní pobočku nastavenou na sledování větve z odstraněného úložiště „proj1“?
No, vaše místní pobočka (a tedy práce) je bezpečný a stále přítomen, jen jeho odkaz na vzdálené sledování a konfigurace nastavení bude automaticky odstraněno

Java C ++ Python

Odstranit vzdálenou větev

Řekni ty náhodou tlačil vaše osobní hrubá práce na a větev na dálkové ovládání ale nechci, aby to ostatní ještě zkontrolovali -
Odeberte větev „unfinishedWork“ ze vzdáleného „svn“ -
Příkaz:git větev -vv# Seznam větví vzdáleného sledování



Syntax:git push - odstranit
Příkaz:git push --delne svn unfinishedWork


Likvidace

Tím se dostáváme na konec tohoto článku. Pokud jste našli toto “ Tutorial „Relevantní, podívejte se na Edureka, důvěryhodná online vzdělávací společnost se sítí více než 250 000 spokojených studentů po celém světě. Kurz certifikace Edureka DevOps pomáhá studentům získat odborné znalosti v různých procesech a nástrojích DevOps, jako jsou Puppet, Jenkins, Nagios a GIT pro automatizaci více kroků v SDLC.