Mac o bell ar gyfer Xcode: adeiladu lleol, adeiladu o bell neu rannu sgrin?
Mae gweithle wedi'i osod a Xcode o bell yn symud data gwahanol. Penderfynwch ble mae'r ffynhonnell, y mynegai a'r adeiladwaith yn byw, yna mesurwch y teithiau yno ac yn ôl.
Nid yw rhannu prosiect dros y rhwydwaith yn symud Xcode, gan fod yr ap yn dal i redeg ar eich Mac ac yn dal i ofyn i'r gweinydd am ddata'r prosiect. Mae rhedeg Xcode ar y Mac o bell a gwylio ei sgrin yn drefniant gwahanol, lle mae'r ap a'i ffeiliau'n aros gyda'i gilydd ac mae'r cysylltiad yn cario dim ond yr arddangosfa a'ch mewnbwn. Mae penderfynu pa un o'r rhain yr ydych ei eisiau, cyn ffurfweddu unrhyw beth, yn setlo'r rhan fwyaf o'r dryswch diweddarach.
Mae tri threfniant yn cwmpasu'r achosion arferol, ac maent yn wahanol yn y fan lle mae'r gweithle'n byw a pha beiriant sy'n crynhoi. Ysgrifennwch eich ateb ar gyfer y ddau bwynt cyn parhau.
Enwch y peiriant sy'n rhedeg Xcode
Yn y trefniant cyntaf mae popeth yn lleol: mae'r copi gwaith, y mynegai a'r adeiladwaith i gyd yn byw ar eich Mac, ac mae'r rhwydwaith yn cario dim ond traffig y storfa a'r dibyniaethau. Yn yr ail, mae'r prosiect yn aros ar y Mac o bell gyda Xcode, felly mae mynegeio a chrynhoi'n digwydd wrth ymyl y ffeiliau tra bo'r cysylltiad yn cario cynnwys y sgrin a chleciau bysellau. Yn y trydydd, mae golygu'n digwydd yn lleol ac mae adeiladwaith yn rhedeg ar westeiwr o bell ar ôl trosglwyddo ffynhonnell yn benodol. Mae'r tabl yn enwi beth mae pob un yn ei symud.
| Arrangement | Where the source lives | What crosses the link |
|---|---|---|
| Everything local | Local disk | Repository and dependency traffic |
| Remote Xcode, screen shared | Remote disk | Display frames and input events |
| Local edit, remote build | Both, with a handoff | Source transfer, then build output |
Darllenwch y golofn ganol gyntaf, oherwydd hi sy'n penderfynu ble bydd methiannau'n ymddangos. Mae llif gwaith y mae ei ffynhonnell o bell yn methu pan fo'r cysylltiad yn araf, tra bo llif gwaith â chrynhowr o bell yn methu pan fo'r trosglwyddiad yn amwys. Dim ond y trydydd sy'n eich gwneud yn gyfrifol am y ddau.
Cyfrwch y teithiau yno ac yn ôl, nid y megabeitiau
Mae golygydd a mynegeiwr yn cyhoeddi llawer o weithrediadau ffeil bach, ac mae pob un yn dod yn daith yno ac yn ôl pan fo'r system ffeiliau o bell. Mae hynny'n gwneud gweithle wedi'i osod yn sensitif i guddiant mewn ffordd nad yw un copi mawr yn sensitif, a dyna pam nad yw amseru trosglwyddiad ffeil yn dweud fawr ddim wrthych am deimlad y llif gwaith. Mae gan arddangosfa o bell y proffil gwrthgyferbyniol: mae'n symud ffrwd barhaus ac yn goddef trwybwn yn well nag y mae'n goddef oedi. Mae cymharu'r ddau â un rhif yn cynhyrchu ateb hyderus anghywir.
Nid yw'r naill drefniant na'r llall yn gyflymaf o ran natur. Mae'r dewis iawn yn dibynnu ar y gwaith yr ydych yn ei wneud mewn gwirionedd, a dyna pam mai'r cam nesaf yw rhoi cynnig ar y gwaith hwnnw yn hytrach na meincnod.
Gwnewch y trosglwyddiad ffynhonnell yn benodol
Pan fo'r ddau beiriant yn dal copi gwaith, penderfynwch pa un sy'n awdurdodol a pha ddiwygiad a ddefnyddiodd yr adeiladwaith o bell. Mae commit yn drosglwyddiad cliriach na dau offeryn yn golygu un goeden waith wedi'i osod, gan fod gan y commit hunaniaeth ac nid oes gan y mownt. Mae angen perchennog ar allbwn a gynhyrchwyd a data mynegai hefyd, gan eu bod yn cael eu hailadeiladu o'r ffynhonnell ac na ddylent deithio fel pe baent yn ffynhonnell. Nid yw drych dwyffordd heb reolau gwrthdaro yn llif gwaith, mae'n ras.
Mae adeiladu o bell hefyd yn gofyn i'r gwesteiwr o bell feddu ar y gadwyn offerynnau gywir a'r cymwysterau ar gyfer dibyniaethau preifat. Nid yw VPN sy'n gadael i chi gyrraedd y gwesteiwr yn benthyg mynediad eich cyfrif iddo, ac nid yw'n gosod Xcode yno.
Gwiriwch y llwybr cyn ymrwymo i lif gwaith
Gwiriwch y gwesteiwr o bell cyn dylunio o'i amgylch, yna mesurwch y cysylltiad â'r gweithrediadau y bydd'r llif gwaith yn eu gwneud mewn gwirionedd. Mae'r gorchmynion isod yn gwirio'r gadwyn offerynnau, y cyfeiriadur datblygwr gweithredol a chost arsylwi ffeiliau sy'n gwneud gweithleoedd o bell yn boenus. Rhedewch yr un olaf ar hyd y llwybr rhwydwaith yn hytrach nag yn lleol.
xcode-select -p
xcodebuild -version
ssh mac-builder 'xcodebuild -version'
time git status --porcelain
Mae gwesteiwr heb osodiad Xcode llawn yn dychwelyd gwall o xcodebuild, ac mae hynny'n broblem cadwyn offerynnau yn hytrach na rhwydwaith. Mae'r cyfeiriadur datblygwr yn dangos pa Xcode y bydd yr adeiladwaith yn ei ddefnyddio, ac mae llwybr sy'n pwyntio at offerynnau'r llinell orchymyn yn unig yn golygu nad yw'r ap wedi'i osod. Mae amseru gorchymyn statws y storfa dros y rhaniad wedi'i osod yn datgelu cost y daith yno ac yn ôl yn uniongyrchol, ac mae ei gymharu â rhediad lleol yn rhoi'r rhif sy'n bwysig. Os yw'r bwlch hwnnw'n annymunol yn barod, bydd llif gwaith y gweithle wedi'i osod yn waeth o dan olygydd go iawn.
Cofnodwch ba drefniant a ddewiswyd gennych, pa beiriant sy'n berchen ar y ffynhonnell a sut mae'r trosglwyddiad yn gweithio. Mae'r nodyn hwnnw'n troi'r ymgymryd neu'r amnewid gliniadur nesaf yn dasg ffurfweddu yn lle ymchwiliad.