Awọn pipaṣẹ Git Gbogbo Olutọju yẹ ki o Mọ

Ifiranṣẹ yii jẹ Iwe Iyanjẹ Git pẹlu awọn aṣẹ Git ti o wọpọ julọ ti o le ṣee lo lojoojumọ.

Ti o ba jẹ oluyẹwo imọ-ẹrọ ti n ṣiṣẹ lẹgbẹẹ awọn olupilẹṣẹ, o yẹ ki o faramọ pẹlu awọn aṣẹ Git ipilẹ.

Ifiranṣẹ yii ni oye Git ti o to lati jẹ ki o lọ ni ipilẹ ọjọ si ọjọ bi QA.


Ti o ko ba ti fi Git sori ẹrọ rẹ, o le tẹle awọn igbesẹ inu Bii o ṣe le Fi Git sori Mac ati Ina Awọn bọtini SSH .



Ibẹrẹ Eto Git

Ni ipilẹṣẹ repo kan

Ṣẹda repo git ofo tabi tun ṣe ipilẹṣẹ ọkan ti o wa tẹlẹ


$ git init

Oniye a repo

Oniye foo repo sinu itọsọna tuntun ti a pe ni foo:

$ git clone https://github.com//foo.git foo

Git ti eka

Bii o ṣe Ṣẹda Ẹka Titun ni Git

Nigbati o ba fẹ ṣiṣẹ lori ẹya tuntun, o ṣẹda ẹka tuntun ni Git. Bii iru eyi, gbogbogbo fẹ lati kuro ni ẹka oluwa ki o ṣiṣẹ lori awọn ẹka ẹya tirẹ ki oluwa jẹ mimọ nigbagbogbo ati pe o le ṣẹda awọn ẹka tuntun lati ọdọ rẹ.

Lati ṣẹda lilo ẹka tuntun:

$ git checkout -b

Bii a ṣe le ṣe atokọ Awọn ẹka ni Git

Ti o ba fẹ mọ iru awọn ẹka ti o wa ninu ilana iṣẹ rẹ, lẹhinna lo:


$ git branch

Apẹẹrẹ apẹẹrẹ:

develop my_feature master

Bii o ṣe le Yi Awọn ẹka pada ni Git

Nigbati o ba ṣẹda ẹka tuntun lẹhinna Git yipada laifọwọyi si ẹka tuntun.

Ti o ba ni awọn ẹka pupọ, lẹhinna o le yipada ni rọọrun laarin awọn ẹka pẹlu isanwo git:

$ git checkout master $ git checkout develop $ git checkout my_feature

Bii o ṣe le Pa Awọn ẹka ni Git

Lati paarẹ ẹka agbegbe kan:


$ git branch -d

Lo awọn -D asia aṣayan lati fi ipa mu.

Lati paarẹ ẹka latọna jijin lori orisun:

$ git push origin :

Jẹmọ:

  • Bii o ṣe le fi sori ẹrọ git ati ṣe ina Awọn bọtini SSH lori Mac


Eto Git

Si ipele faili kan jẹ irọrun lati mura silẹ fun ṣiṣe kan. Nigbati o ba ṣafikun tabi yipada diẹ ninu awọn faili, o nilo lati ṣe ipele awọn ayipada wọnyẹn sinu “agbegbe idena.” Ronu ti siseto bi apoti kan nibiti o ti fi awọn nkan sii ṣaaju fifa ni isalẹ ibusun rẹ, nibiti ibusun rẹ jẹ ibi-ipamọ awọn apoti ti o ti ṣaja tẹlẹ.


Awọn faili Ipele Git

Si ipele tabi ṣafikun awọn faili, o nilo lati lo pipaṣẹ git add. O le ṣe ipele awọn faili kọọkan:

$ git add foo.js

tabi gbogbo awọn faili ni ẹẹkan:

$ git add .

Awọn ayipada Unit Unit

Ti o ba fẹ yọ faili kan kuro ni ipele:

$ git reset HEAD foo.js

Tabi yọ gbogbo awọn faili ti a pilẹ:


$ git reset HEAD .

O tun le ṣẹda inagijẹ fun aṣẹ kan lẹhinna lo pẹlu Git:

$ git config --global alias.unstage 'reset HEAD' $ git unstage .

Ipo Git

Ti o ba fẹ lati wo iru awọn faili ti ṣẹda, ti yipada tabi paarẹ, ipo Git yoo fihan ọ ni ijabọ kan.

$ git status

Git Commits

O jẹ iṣe ti o dara lati ṣe nigbagbogbo. O le nigbagbogbo elegede awọn iṣẹ rẹ ṣaaju titari. Ṣaaju ki o to ṣe awọn ayipada rẹ, o nilo lati ṣe ipele wọn.

Aṣẹ ṣiṣe nilo aṣayan -m eyiti o ṣe afihan ifiranse ifiranse naa.

O le ṣe awọn ayipada rẹ bii:

$ git commit -m 'Updated README'

Yiyọ Awọn iṣẹ

Aṣẹ wọnyi yoo ṣe atunṣe iṣẹ ṣiṣe ti o ṣẹṣẹ julọ ki o fi awọn ayipada wọnyẹn pada si ṣiṣe, nitorina o ko padanu iṣẹ kankan:

$ git reset --soft HEAD~1

Lati paarẹ igbẹkẹle rẹ patapata ki o jabọ eyikeyi awọn ayipada lo:

$ git reset --hard HEAD~1

Squashing ṣẹ

Jẹ ki a sọ pe o ni awọn iṣẹ 4, ṣugbọn iwọ ko tii ohunkohun sibẹsibẹ ati pe o fẹ fi ohun gbogbo sinu igbẹkẹle kan, lẹhinna o le lo:

$ git rebase -i HEAD~4

Awọn HEAD~4 tọka si awọn iṣẹ mẹrin ti o kẹhin.

Awọn -i aṣayan ṣi faili ọrọ ibanisọrọ kan.

Iwọ yoo wo ọrọ naa “mu” si apa osi ti igbẹkẹle kọọkan. Fi ọkan silẹ ni oke nikan ki o rọpo gbogbo awọn miiran pẹlu “s” fun elegede, fipamọ ati pa faili naa.

Lẹhinna window ibanisọrọ miiran ṣii nibiti o le ṣe imudojuiwọn awọn ifiranṣẹ rẹ ṣẹ sinu ifiranṣẹ ṣẹṣẹ tuntun kan.



Git Titari

Lẹhin ti o ti ṣe awọn ayipada rẹ, atẹle ni lati Titari si ibi ipamọ latọna jijin.

Akọkọ Titari

Titari ẹka agbegbe fun igba akọkọ:

$ git push --set-upstream origin

Lẹhin eyi, lẹhinna o le kan lo

$ git push

Titari ẹka agbegbe si oriṣiriṣi ẹka latọna jijin

Lati Titari ẹka agbegbe si ẹka oriṣiriṣi latọna jijin, o le lo:

$ git push origin :

Yipada Titari Ikẹhin

Ti o ba ni lati tun titari rẹ kẹhin pada, o le lo:

$ git reset --hard HEAD~1 && git push -f origin master

Git Fa

Nigbati o ba lo git fetch, Git ko dapọ miiran ṣe wọn pẹlu ẹka rẹ lọwọlọwọ. Eyi wulo julọ ti o ba nilo lati tọju ibi ipamọ rẹ titi di oni, ṣugbọn n ṣiṣẹ lori nkan ti o le fọ ti o ba mu awọn faili rẹ ṣe.

Lati ṣepọ awọn igbẹkẹle sinu ẹka oluwa rẹ, o lo merge.

Fa awọn ayipada lati ilosoke

$ git fetch upstream

Git Fa

Nfa ni o kan n ṣe igbasẹ tẹle atẹle kan. Nigbati o ba lo git pull, Git dapọ awọn iṣẹ miiran laifọwọyi laisi jẹ ki o ṣe atunyẹwo wọn akọkọ. Ti o ko ba ṣakoso awọn ẹka rẹ ni pẹkipẹki, o le ṣiṣẹ sinu awọn ija nigbagbogbo.

Fa ẹka kan

Ti o ba ni ẹka kan ti a pe ni my_feature ati pe o fẹ fa ẹka naa, o le lo:

$ git pull origin/my_feature

Fa ohun gbogbo

Tabi, ti o ba fẹ fa ohun gbogbo ati gbogbo awọn ẹka miiran

$ git pull

Iṣọpọ Git ati Igbapada

Nigbati o ba ṣiṣẹ git merge, ẹka HEAD rẹ yoo ṣe ipilẹṣẹ a titun dá , titọju idile ti ọkọọkan dá itan.

Awọn overhoot tun-kọ awọn iyipada ti ẹka kan si miiran lai ṣiṣẹda titun kan dá.

Dapọ Ẹka Titunto si Ẹka Ẹya

$ git checkout my_feature $ git merge master

Tabi pẹlu aṣayan atunṣe, o lo:

$ git checkout my_feature $ git rebase master

Dapọ Ẹka Ẹya si Ẹka Titunto

$ git checkout master $ git merge my_feature

Git Stash

Nigbakan o ṣe awọn ayipada lori ẹka kan, ati pe o fẹ yipada si ẹka miiran, ṣugbọn o ko fẹ padanu awọn ayipada rẹ.

O le fi awọn ayipada rẹ pamọ. Eyi ni bii o ṣe ṣe stash ni Git:

$ git stash

Bayi, ti o ba fẹ ṣii awọn ayipada wọnyẹn ki o mu wọn pada si lilo ilana itọsọna rẹ:

$ git stash pop