En Projet iwwer d'Netzwierk deelen verréckelt Xcode net, well d'App op Ärem Mac weiderleeft an de Server weider no Projetsdaten freet. Xcode um entfernten Mac lafe loossen an de Bildschierm dovu kucken ass eng aner Usiicht, wou d'App an hir Dateien zesumme bleiwen an d'Verbindung nëmmen d'Affichage an Ären Input transportéiert. D'Entscheedung, wat Dir wëllt, ier Dir iergendeppes konfiguréiert, léist de gréissten Deel vun der spéiderer Konfusioun.

Dräi Usiichten decken déi üblech Fäll of, an si ënnerscheede sech doran, wou den Aarbechtsberäich läit a wéi eng Maschinn kompiléiert. Schreift Är Äntwert op béide Punkten op, ier Dir weidermaacht.

Nennt d'Maschinn, déi Xcode leeft

An der éischter Usiicht ass alles lokal: d'Aarbechtskopie, den Index an de Build liewen all op Ärem Mac, an d'Netzwierk transportéiert nëmmen Traffic vu Repository an Ofhängegkeeten. An der zweeter bleift de Projet mam Xcode um entfernten Mac, sou datt Indexéierung a Kompilatioun nieft den Dateie geschéien, wärend d'Verbindung Bildschierminhalt an Tastendréck transportéiert. An der drëtter geschitt d'Bearbeitung lokal an e Build leeft op engem entfernten Host no enger ausdrécklecher QuellIwwerleeferung. D'Tabelle nennt, wat jiddwereen transportéiert.

ArrangementWhere the source livesWhat crosses the link
Everything localLocal diskRepository and dependency traffic
Remote Xcode, screen sharedRemote diskDisplay frames and input events
Local edit, remote buildBoth, with a handoffSource transfer, then build output

Liest fir d'éischt déi mëttelst Kolonn, well si decidéiert, wou Feeler optrieden. En Aarbechtsfloss, deem seng Quell entfernt ass, feelt, wann d'Verbindung lues ass, wärend en Aarbechtsfloss mat engem entfernte Kompilateur feelt, wann d'Iwwerleeferung zweedeiteg ass. Nëmmen deen drëtten mécht Iech fir béides verantwortlech.

Zielt d'Hin- an Hier-Reesen, net d'Megabyte

En Editor an en Indexer ginn vill kleng Dateioperatiounen aus, an all eenzel gëtt eng Hin- an Hier-Rees, wann de Dateiesystem entfernt ass. Dat mécht en montéierten Aarbechtsberäich empfindlech fir Latency op eng Manéier, wéi eng eenzeg grouss Kopie et net ass, an dowuer seet d'Mooss vun enger DateiIwwerleeferung bal näischt doriwwer, wéi den Aarbechtsfloss sech ufillt. D'Remote-Affichage huet de géigendeelen Profil: si beweegt en duerchgängegen Stroum an toleréiert Durchsatz besser wéi Verzögerung. Béides mat enger eenzeger Zuel ze vergläichen ergëtt eng zelfverséchert falsch Äntwert.

Keng vun den Usiichte ass vun Natur aus déi séierst. Déi richteg Wiel hänkt vun der Aarbecht of, déi Dir tatsächlech maacht, an dowuer ass den nächsten Schrëtt, déi Aarbecht ze probéieren an net e Benchmarked.

Maacht d'QuellIwwerleeferung ausdrécklech

Wann béid Maschinne eng Aarbechtskopie hunn, entscheet, wéi eng autoritativ ass a wéi eng Revisioun de Remote-Build benotzt huet. E Commit ass eng méi kloer Iwwerleeferung wéi zwee Werkzeier, déi een montéierte Aarbechtsbaum beaarbechten, well de Commit eng Identitéit huet an d'Montage net. Generéierten Output an Indexdaten brauchen och en Eegentemer, well si aus der Quell nei gebaut ginn an net solle reesen, wéi wa si Quell wieren. En zweedirektiouns Spigel ouni Konfliktregelen ass keen Aarbechtsfloss, et ass e Course.

Remote bauen erfuerdert och datt den entfernten Host déi richteg Werkzeikette huet an d'Zougangsdaten fir privat Ofhängegkeeten. Eng VPN, déi Iech den Host erreeche léisst, léint him Ären Kontzougang net, an si installéiert Xcode net do.

Iwwerpréift de Wee, ier Dir Iech op en Aarbechtsfloss festleet

Verifizéiert den entfernten Host, ier Dir ronderëm en designen, a moosst duerno d'Verbindung mat de Operatiounen, déi den Aarbechtsfloss tatsächlech wäert maachen. D'Kommandos hei drënner préiwen d'Werkzeikette, den aktiven Entwécklerverzeechnis an d'Käschte vun der Dateibeobachtung, déi entfernt Aarbechtsberäicher schmerzhaft maachen. Fuert de leschten iwwer de Netzwierkwee aus an net lokal.

xcode-select -p
xcodebuild -version
ssh mac-builder 'xcodebuild -version'
time git status --porcelain

En Host ouni eng komplett Xcode-Installatioun gëtt e Feeler vu xcodebuild zréck, an dat ass e Problem vun der Werkzeikette an net vum Netzwierk. Den Entwécklerverzeechnis weist, wéi en Xcode de Build wäert benotzen, an e Wee, deen nëmmen op d'Kommandozeil-Werkzeier weist, bedeit, datt d'App net installéiert ass. D'Mooss vum Repository-Statuskommando iwwer de montéierte Partage weist d'Käschte vun der Hin- an Hier-Rees direkt op, an de Verglach mat engem lokale Lauf gëtt d'Zuel, déi zielt. Wann dee Gruef schonn onangeneem ass, gëtt den Aarbechtsfloss mam montéierten Aarbechtsberäich ënner engem richtege Editor nach méi schlëmm.

Notéiert, wéi eng Usiicht Dir gewielt hutt, wéi eng Maschinn d'Quell besëtzt a wéi d'Iwwerleeferung funktionéiert. Dee Notiz mécht déi nächst Aféierung oder den nächsten Laptopwiessel zu enger Konfiguratiounsaufgab amplaz vun enger Enquête.

Ähnlech Artikelen