Git

Git Show távoli ágak

Git Show távoli ágak
Git nagyszerű képessége, hogy könnyen ágakat hozhat létre. A helyi és távoli fiókokkal való foglalkozás azonban kissé bonyolulttá válhat. Állítsunk be egy olyan helyzetet, amikor létrehozni fogjuk saját Git-tárunkat, amely távoli repóként fog viselkedni. Ezután fiókokat fogunk létrehozni és lekötni a távoli adattárunkba a project_source forrásból. Ezt követően klónozni fogjuk a távoli adattárat, és játszani fogunk az ágakkal. A gyakorlatnak képet kell adnia arról is, hogy hogyan működnek olyan távoli adattárak, mint a GitHub és a BitBucket. Az alábbiak szerint jelenítheti meg:

Kezdjük a Git adattárral. Létrehozunk egy projekt nevű mappát.git és inicializálja, hogy távoli adattárrá váljon:

$ mkdir projekt.git
$ cd projekt.git /
$ git init - csupasz
Inicializálta az üres Git adattárat a / Users / zakh_eecs / _work / LearnGIT / git_remote_repository könyvtárban
projekt.git /

Most menjen egy új helyre, ahol tiszta mappát hozhat létre. Hozza létre a project_source mappát, és inicializálja a Git számára:

$ mkdir project_source
 
$ cd project_source
 
$ git init
Inicializált üres Git adattár a / Users / zakh_eecs / _work / LearnGIT / git_branching_source / könyvtárban
project_source /.git /
 
$ érintse meg a ReadMe gombot.txt
 
$ git add -A
 
$ git kötelezettségvállalás -m "Kezdeti elkötelezettség"
[master (gyökér-elkötelezettség) 176134f] Kezdeti kötelezettség
1 fájl megváltozott, 0 beszúrás (+), 0 törlés (-)
létrehozási mód 100644 ReadMe.txt

A project_setup egy Git könyvtár ReadMe-vel.txt fájl. Azonban nincs csatlakoztatva a távoli adattárunkhoz. Állítsunk fel projektet.A git a project_source távoli tárháza lesz. Ezt a következő paranccsal érhetjük el:

$ git remote add origin / Users / zakh_eecs / _work / LearnGIT / git_remote_repository / project.git
 
$ git push origó mester
Tárgyak számlálása: 3, kész.
Objektumok írása: 100% (3/3), 213 bájt | 0 bájt / s, kész.
Összesen 3 (delta 0), újrafelhasználva 0 (delta 0)
Címzett / Felhasználók / zakh_eecs / _work / LearnGIT / git_remote_repository / project.git
* [új fiók] mester -> mester

A git remote origin origin paranccsal létrehoztuk a kapcsolatot a projekt között.git és project_source. A git push origó mester paranccsal a távoli adattárba toltuk a master águnkat.

Ellenőrizzük fiókjainkat (még mindig a project_source mappában):

$ git ág
* mester
 
$ git ág -r
eredet / mester
 
$ git ág -a
* mester
távirányítók / eredet / mester

Az első parancs csak a helyi fiókot mutatja. Az -r opció a távoli elágazást mutatja. És az -a opció mind a helyi, mind a távoli elemeket megmutatja.

Hozzunk létre néhány fiókot a munkakönyvtárunkban:

$ git ág fejlesztése
 
$ git branch gyorsjavítás
 
$ git ág kísérleti
 
$ git ág -a
fejlődés
kísérleti
gyorsjavítás
* mester
távirányítók / eredet / mester

Létrehoztuk a fejlesztés, a gyorsjavítás és a kísérleti ágakat. A helyi fióklistánkban jelennek meg. De a távirányítókban / origóban csak a főág van, mert csak ezt toltuk. A csillag (*) mester azt jelenti, hogy még mindig a helyi mester ágban vagyunk. Menjünk be a fejlesztési ágba, végezzünk módosításokat, és tegyük ezeket a változásokat a távoli adattárba.

$ git pénztár fejlesztése
Ágazatra váltott „fejlesztésre”
 
$ echo abc> ReadMe.txt
 
$ git add -A
 
$ git sitout -m "Módosított fejlesztési ág"
[development dd9933e] Módosított fejlesztési ág
1 fájl megváltozott, 1 beszúrás (+)
 
$ git push eredetfejlesztés
Tárgyak számlálása: 3, kész.
Objektumok írása: 100% (3/3), 257 bájt | 0 bájt / s, kész.
Összesen 3 (delta 0), újrafelhasználva 0 (delta 0)
Címzett / Felhasználók / zakh_eecs / _work / LearnGIT / git_remote_repository / project.git
* [új ág] fejlesztés -> fejlesztés

Ellenőrizzük az összes fiókot:

$ git ág -a
* fejlesztés
kísérleti
gyorsjavítás
fő-
távirányítók / eredet / fejlesztés
távirányítók / eredet / mester

Látjuk, hogy a helyi fejlesztési ágban vagyunk, de van egy távoli fejlesztési ág is. Amikor a git push eredet fejlesztésével löktük a változásainkat, ez létrehozta a távoli / origó fejlesztési ágat.

Most lépjünk ki a project_source-ból, és keressünk egy új helyet, ahol új mappát kaphatunk. Itt klónozzuk a távoli adattárat a következő paranccsal:

$ git klón / Felhasználók / zakh_eecs / _work / LearnGIT / git_remote_repository / project.git
Klónozás a „projektbe”…
Kész.

Klónoztunk egy új példányt projekt projektből.git. Lépjen be a projekt mappába, és ellenőrizze az ágakat:

$ cd projekt
 
$ git ág
* mester

Amikor Git egy kezdeti klónt készít egy távoli adattárból, akkor csak a master ágat kapja meg. Ha az -a opciót használjuk, akkor a következőket látjuk:

$ git ág -a
* mester
távirányítók / origó / HEAD -> origó / master
távirányítók / eredet / fejlesztés
távirányítók / eredet / mester

Vegyük észre, hogy nincs helyi fejlesztési ág. Ezenkívül soha nem toltunk gyorsjavítást és kísérleti ágakat a project_source-ról a projektre.git, tehát nem látjuk őket. A távoli adattárnak vannak master és fejlesztési ágai (távirányítók / origó / HEAD -> Az origó / master nem ág, csak azt mondja meg, hova mutat a HEAD).

Vezessük be a fejlesztési ágat munkakörnyezetünkbe:

$ git fetch - minden
Eredet lekérése
 
$ git pénztár fejlesztése
A fióktelep fejlesztése a távoli fióktelep eredetétől való nyomon követése céljából jött létre.
Átállt egy új ág „fejlesztésre”

Ha a Git régebbi verzióját használja, előfordulhat, hogy a következőket kell használnia:

$ git checkout fejlesztés eredete / fejlesztése

Ha az branch parancsot használjuk, a következőket kapjuk:

$ git ág -a
* fejlesztés
fő-
távirányítók / origó / HEAD -> origó / master
távirányítók / eredet / fejlesztés
távirányítók / eredet / mester

Változtathatunk a fejlesztési ágon, elvégezhetjük a változtatásokat, majd a git push origó fejlesztés paranccsal tolhatjuk.

Következtetésképpen

A GitHub és a BitBucket használatakor használhatja a HTTPS vagy az SSH linket a távoli adattárhoz való csatlakozáshoz. Tehát ezekre a linkekre állítja be az eredetét. De a távoli ág elvei megegyeznek az itt leírtakkal.

A további vizsgálat:

Hogyan lehet játékot fejleszteni Linuxon
Egy évtizeddel ezelőtt nem sok Linux-felhasználó jósolta, hogy kedvenc operációs rendszerük egy napon a videojátékok népszerű játékplatformja lesz. El...
Kereskedelmi játékmotorok nyílt forráskódú portjai
Ingyenes, nyílt forráskódú és platformokon átívelő játékmotorok szabadidős programjai felhasználhatók a régi, valamint a meglehetősen friss játékcímek...
A legjobb parancssori játékok Linuxhoz
A parancssor nem csak a legnagyobb szövetséges a Linux használatakor, hanem a szórakozás forrása is lehet, mert sok olyan szórakoztató játék lejátszás...