Ma tha thu air a bhith a’ cleachdadh GitHub agus gum b’ fheàrr leat an loidhne-àithne mar mise airson a h-uile càil a dhèanamh gun duilgheadas sam bith air GUI, is dòcha gu bheil thu air mothachadh mar a thòisich GitHub a’ cleachdadh an inneal neo-ùr aca ris an canar “gh”. Cho-dhùin mi peilear a thoirt dha, oir bha e a’ coimhead gealltanach às deidh a h-uile càil. Agus gu pearsanta chòrd e rium gu mòr - Na h-uimhir gu robh mi airson artaigil a dhèanamh mu dheidhinn!
Mus tòisich sinn ge-tà, feumaidh mi grunn bhriathran a bhios mi a’ cleachdadh san artaigil seo a mhìneachadh.
Tha “GH” a’ ciallachadh “GitHub”. Seo far an tàinig ainm an inneil cuideachd, agus mar sin chan urrainnear a mheasgadh le Git fhèin. Gus mìneachadh dè nì e san fharsaingeachd, faodaidh tu cruthachadh, forc, cuir às, brobhsadh repos; cruthaich iarrtasan tarraing; agus mòran eile. Air eagal ‘s nach urrainn dhut feart a lorg ach nach eil thu airson inneal-crìochnachaidh fhàgail, tha e cuideachd a’ toirt seachad brobhsair stèidhichte air teacsa dhut airson brobhsadh air duilleagan ann an GitHub.
Tha “CLI” a’ ciallachadh “Còrdugh Leadhon Ieadar-aghaidh”. Tha an Terminal sin (no ann an Windows, Command Prompt) mar aon dhiubh. Ma tha “CLI” an cois ainm app (“Git CLI” airson an artaigil seo), tha e a’ ciallachadh gu bheil an aplacaid a’ ruith tro cheann-uidhe a-mhàin. Agus is e “Git CLI” sa cho-theacsa seo, uill, an Git as aithne dhuinn. Mar an àithne a tha sinn a 'dèanamh a' gealltainn no ag ath-shuidheachadh leis.
Tha GUI a’ ciallachadh “Graidheil USer Ininterface" agus is e an eadar-aghaidh air a bheil sinn "a' seòladh". Nas fheàrr a ràdh, is e GUI àrainneachd deasg san fharsaingeachd.
Tha “iuchrach API” na sheòrsa de shreang / faidhle dìomhair a chleachdas tu gus seirbheisean a dhearbhadh. Thoir an aire gu bheil e a’ dol seachad air dearbhadh 2 fhactar agus mar sin air adhart nuair a nì thu dearbhadh leis. Mar sin dèan cinnteach gun cùm thu iad sàbhailte agus an àiteigin a tha a-mach à ruigsinneachd air dòighean eile.
An toiseach, dè a th 'anns an inneal seo? Ciamar a làimhsicheas e gnìomhachd a dhèanadh sinn tro Git CLI?
faodar “gh” a mheas mar stòr fosgailte (Source Code) clò-bhualadair a’ cleachdadh Git CLI fhèin agus GitHub APIs gus rudan a dhèanamh. Gu dearbh, faodaidh tu eadhon paramadairean a thoirt seachad gu na h-òrdughan Git a bhios e a ’cleachdadh! Thèid mi a-steach don fheadhainn sin nas fhaide air adhart.
Stàladh agus rèiteachadh
Cumaibh cuimhne gun tèid mi tron stàladh a 'cleachdadh Termux. Ach bu chòir don dòigh-obrach a bhith gu ìre mhòr mar a dh’ fhaodadh tu a bhith air distro stèidhichte air Debian - tha e aig Ubuntu air na stòran oifigeil aca mar eisimpleir. Airson Windows, uill, feumaidh tu an dàrna cuid CygWin no WSL tha mi creidsinn. ¯\_(ツ)_/¯
# Stàlaich sinn an inneal an toiseach. Cuideachd a’ stàladh Git oir is e backend # airson gh. $pkg install git gh -y # An uairsin ron a h-uile càil, feumaidh sinn dearbhadh. Sàbhailidh seo # iuchair API ùr air stòr-dàta an inneil gus nach fheum thu # dearbhadh a-rithist. Ma tha thu air GITHUB_TOKEN a shuidheachadh mu thràth, chan obraich seo gus an cuir thu a-steach # e an toiseach. :) $gh auth logadh a-steach
A-nis, mus lean sinn oirnn an seo, feumaidh mi grunn rudan a chomharrachadh.
- An toiseach, na tagh “GitHub Enterprise Server” mura h-eil seòrsa de GitHub fèin-aoigheachd agad.
- Anns an dàrna àite, cleachd SSH an àite HTTPS ma tha an iuchair phoblach agad air a chur ris a’ chunntas GitHub agad. Ma chailleas tu an iuchair API, cha chaill thu an iuchair SSH agad co-dhiù agus mar sin faodaidh e a bhith na dhòigh math air ais cuideachd.
- San treas àite, tagh logadh a-steach le brabhsair dìreach mura h-eil iuchair API agad ri làimh! Gu fìrinneach, cha bhiodh e ciallach iuchair eile a bhith agad fhad ‘s a tha fear agad mu thràth.
Aon uair ‘s gu bheil thu deiseil a’ suidheachadh rudan, innsidh sinn do Git CLI mu dheidhinn.
$gh auth thus-git
Nì seo na rèiteachaidhean Git CLI riatanach dìreach gun fhios nach bi na reflexes agad a’ dol a-steach agus a bheir ort Git a chleachdadh an àite GH.
Cuid de òrdughan bunaiteach
A-nis gu bheil thu air GH a stèidheachadh, leig dhomh grunn òrdughan bunaiteach a theagasg dhut ann an sgeulachd.
An toiseach, canaidh sinn gu bheil thu airson iarrtas tarraing a chruthachadh don repo manifests ionadail agam. Tha thu airson a chuir air bhog an toiseach.
$gh repo forc uinneagz414/platform_manifest! windowz414/platform_manifest ann mu thràth? Am bu toil leat am forc a chlonadh? Seadh A' clò-bhualadh a-steach gu 'platform_manifest'... iomallach: Ag àireamhachadh nithean: 136, dèanta. iomallach: A’ cunntadh nithean: 100% (136/136), dèanta. iomallach: A’ teannachadh nithean: 100% (81/81), dèanta. iomallach: Iomlan 136 (delta 46), ath-chleachdadh 89 (delta 12), pacaid air ath-chleachdadh 0 A’ faighinn nithean: 100% (136/136), 30.70 KiB | 166.00 KiB / s, deiseil. Fuasgladh deltas: 100% (46/46), dèanta. Ag ùrachadh suas an abhainn Bho github.com:windowz414/platform_manifest * [meur ùr] amyrom/rosie -> suas an abhainn/amyrom/rosie * [meur ùr] aosp-eleven -> suas an abhainn/aosp-eleven * [meur ùr] aosp-ten -> suas an abhainn/aosp-ten * [meur ùr] saighead-11.0 -> suas an abhainn/saighead-11.0 * [meur ùr] cm-14.1 -> suas an abhainn/cm-14.1 * [meur ùr] dot11 -> suas an abhainn/dot11 * [meur ùr ] e/os/v1-nougat -> suas an abhainn/e/os/v1-nougat * [meur ùr] fluid-11 -> suas an abhainn/fluid-11 * [meur ùr] fox_7.1 -> suas an abhainn/sionnach_7.1 * [meur ùr] hentai-rika -> suas an abhainn/hentai-rika * [meur ùr] ion-pie -> suas an abhainn/ion-pie * [meur ùr] lineage-15.1 -> suas an abhainn/lineage-15.1 * [meur ùr] lineage -17.1 -> suas an abhainn / lineage-17.1 * [meur ùr] lineage-18.1 -> suas an abhainn / lineage-18.1 * [meur ùr] lineage-18.1_teos -> suas an abhainn / lineage-18.1_teos * [meur ùr] lineage-19.0 - > suas an abhainn/lineage-19.0 * [meur ùr] prìomh -> suas an abhainn/prìomh * [meur ùr] mkn-mr1 -> suas an abhainn/mkn-mr1 * [meur ùr] revengeos-r11.0 -> suas an abhainn/revengeos-r11.0. 1 * [meur ùr] stellar-S1 -> suas an abhainn/stellar-S11 * [meur ùr] teos-n -> suas an abhainn/teos-n * [meur ùr] weebprojekt-11 -> shuas an abhainn/weebprojekt-XNUMX ✓ Forc clonaichte
An uairsin canaidh sinn gu bheil buidheann air leth agad airson na deuchainnean agad leis an t-ainm “wz414-labs”, nach do chuir thu às do phròifil phearsanta fhathast agus gu bheil thu airson clonadh an sin agus an uairsin fosgladh iarrtas tarraing troimhe an sin na àite. Tha thu cuideachd airson clonadh a dhèanamh air a’ mheur “cm-14.1” gus nach fheum thu git-checkout a dhèanamh a-rithist.
$gh repo forc windowz414/platform_manifest --org="wz414-labs" -- --branch="cm-14.1" ✓ Cruthachadh forc wz414-labs/platform_manifest ? Am bu toil leat am forc a chlonadh? Seadh A' clò-bhualadh a-steach gu 'platform_manifest'... iomallach: Ag àireamhachadh nithean: 136, dèanta. iomallach: A’ cunntadh nithean: 100% (136/136), dèanta. iomallach: A’ teannachadh nithean: 100% (81/81), dèanta. iomallach: Iomlan 136 (delta 46), ath-chleachdadh 89 (delta 12), pacaid air ath-chleachdadh 0 A’ faighinn nithean: 100% (136/136), 30.70 KiB | 120.00 KiB / s, deiseil. Fuasgladh deltas: 100% (46/46), dèanta. Ag ùrachadh suas an abhainn Bho github.com:windowz414/platform_manifest * [meur ùr] amyrom/rosie -> suas an abhainn/amyrom/rosie * [meur ùr] aosp-eleven -> suas an abhainn/aosp-eleven * [meur ùr] aosp-ten -> suas an abhainn/aosp-ten * [meur ùr] saighead-11.0 -> suas an abhainn/saighead-11.0 * [meur ùr] cm-14.1 -> suas an abhainn/cm-14.1 * [meur ùr] dot11 -> suas an abhainn/dot11 * [meur ùr ] e/os/v1-nougat -> suas an abhainn/e/os/v1-nougat * [meur ùr] fluid-11 -> suas an abhainn/fluid-11 * [meur ùr] fox_7.1 -> suas an abhainn/sionnach_7.1 * [meur ùr] hentai-rika -> suas an abhainn/hentai-rika * [meur ùr] ion-pie -> suas an abhainn/ion-pie * [meur ùr] lineage-15.1 -> suas an abhainn/lineage-15.1 * [meur ùr] lineage -17.1 -> suas an abhainn / lineage-17.1 * [meur ùr] lineage-18.1 -> suas an abhainn / lineage-18.1 * [meur ùr] lineage-18.1_teos -> suas an abhainn / lineage-18.1_teos * [meur ùr] lineage-19.0 - > suas an abhainn/lineage-19.0 * [meur ùr] prìomh -> suas an abhainn/prìomh * [meur ùr] mkn-mr1 -> suas an abhainn/mkn-mr1 * [meur ùr] revengeos-r11.0 -> suas an abhainn/revengeos-r11.0. 1 * [meur ùr] stellar-S1 -> suas an abhainn/stellar-S11 * [meur ùr] teos-n -> suas an abhainn/teos-n * [meur ùr] weebprojekt-11 -> shuas an abhainn/weebprojekt-XNUMX ✓ Forc clonaichte
Tha thu a’ faicinn nach do chleachd mi “-b cm-14.1” agus rinn mi an argamaid fhada na àite. Mar cheann-latha an artaigil seo, 16 Gearran, 2022, tha bug aig GH nach bi e a’ toirt seachad argamaidean goirid gu Git CLI gu ceart agus mar sin feumar a dhèanamh mar argamaidean fada nan àite.
Aon uair ‘s gu bheil sin dèanta, chuir thu a-steach am pasgan gu cunbhalach, rinn thu na h-atharrachaidhean agad, rinn thu gealladh agus phut thu e, agus tha thu deiseil airson iarrtas tarraing a dhèanamh. Airson seo, tha a h-uile dad a dh 'fheumas tu sìmplidh
$gh pr cruthaich --branch =" cm-14.1 "A’ cruthachadh iarrtas tarraing airson wz414-labs: cm-14.1 a-steach gu cm-14.1 ann an windowz414/platform_manifest ? Title teos: Atharrachadh gu Git-Polycule ? Corp ? Dè an ath rud? Cuir a-steach https://github.com/windowz414/platform_manifest/pull/1
Mura cuir thu “–branch=cm-14.1”, bhiodh tu a’ cruthachadh PR a dh’ ionnsaigh meur “prìomh”, rud a dh’ adhbhraicheas cùisean nuair nach tèid a làimhseachadh ceart.
Agus a-nis, feumaidh mi am PR seo a chur còmhla, ceart? Mar sin bidh mi a’ clònadh an repo an toiseach, a’ dol a-mach chun mheur a chaidh a shònrachadh, agus a’ liostadh PR an toiseach.
# Clonadh an toiseach. Clone $ git https://github.com/windowz414/platform_manifest Cloning a-steach gu 'platform_manifest'... iomallach: Ag àireamhachadh nithean: 136, dèante. iomallach: A’ cunntadh nithean: 100% (136/136), dèanta. iomallach: A’ teannachadh nithean: 100% (81/81), dèanta. iomallach: Iomlan 136 (delta 46), ath-chleachdadh 89 (delta 12), pacaid air ath-chleachdadh 0 A’ faighinn nithean: 100% (136/136), 30.70 KiB | 137.00 KiB / s, deiseil. Fuasgladh deltas: 100% (46/46), dèanta. # An uairsin thoir sùil a-mach chun mheur. $ git checkout meur cm-14.1 'cm-14.1' air a stèidheachadh gus sùil a chumail air 'tùs / cm-14.1'. Air atharrachadh gu meur ùr 'cm-14.1' # Agus a-nis a’ liostadh PR. Liosta $gh pr A’ sealltainn 1 de 1 iarrtas tarraing fosgailte ann an windowz414/platform_manifest #1 teos: Atharraich gu Git-Polycule wz414-labs:cm-14.1
A-nis gu bheil sinn a 'faicinn gu bheil PR ann airson atharrachadh iomallach gu "Git-Polycule", chì sinn dè a tha air atharrachadh leis.
$ gh pr diff 1 diff --git a/teos.xml b/teos.xml clàr-amais b145fc0..3aadeb6 100644 --- a/teos.xml +++ b/teos.xml @@ -2,7 +2,7, 414 @@
Tha e coltach gealltanach! Tha an t-àm ann tighinn còmhla!
$gh pr aonadh 1 ? Dè an dòigh measgachaidh a bhiodh tu airson a chleachdadh? Ath-stèidhich agus cuir còmhla? Dè an ath rud? Cuir a-steach ✓ Iarrtas tarraing ath-stèidhichte agus aonaichte # 1 (teos: Atharraich gu Git-Polycule)
A-nis gun do chuir mi còmhla e, faodaidh tu am forc agad a dhubhadh às.
$ gh repo sguab às --confirm wz414-labs/platform_manifest ✓ Stòr air a dhubhadh às wz414-labs/platform_manifest
Chì thu gun do chuir sin às don repo gu dìreach gun iarrtas dearbhaidh oir chaidh mi seachad air a’ pharameter “–confirm” an sin. Mura tèid thu seachad air, gheibheadh tu seo:
$ gh repo sguab às windowz414/systemd ? Taidhp windowz414/systemd gus dearbhadh gun deach a sguabadh às:
Agus dh'fheumadh tu an t-ainm repo gu lèir a thaipeadh. Caith ùine…
Geàrr-chunntas
Gu sìmplidh, tha `gh` na inneal-lìonaidh Git CLI / Curl gu math nas sìmplidhe ag aonachadh gnìomhachd Git sìmplidh agus rudan GitHub API fon aon mhullach. Ciamar a chleachdas tu e? A bheil e a’ coimhead gealltanach dhut mar a nì e dhòmhsa? A’ coimhead air adhart ri cluinntinn bhuat!