د Xcode لپاره لرې Mac: ځایي جوړون، لرې جوړون یا د سکرین شریکول؟
نښلول شوې کاري ځای او لرې Xcode بېلابېل معلومات خوځوي۔ پرېکړه وکړئ چې سرچینه، انډیکس او جوړون چېرې اوسي، بیا د تګ راتګ اندازه وکړئ۔
پروژه د شبکې له لارې شریکول Xcode نه خوځوي، ځکه اپلیکیشن ستاسو په Mac کې کار کول ته دوام ورکوي او له سرور څخه د پروژې معلومات غواړي۔ Xcode په لرې Mac کې چلول او د هغې سکرین کتل بل ترتیب دی، چېرې چې اپلیکیشن او د هغې فایلونه یو ځای پاتې کیږي او اړیکه یوازې ښودنه او ستاسو انپټ وړي۔ له هر څه د تنظیمولو مخکې د دې پرېکړه چې کوم یو غواړئ، ډېره وروسته ګډوډي حل کوي۔
درې ترتیبه معمولې پېښې پوښي، او دوی په دې کې توپیر لري چې کاري ځای چېرې دی او کومه ماشین کمپایل کوي۔ مخکې له دې چې دوام ورکړئ، د دواړو ټکو ځواب ولیکئ۔
هغه ماشین ونوموئ چې Xcode چلوي
په لومړي ترتیب کې هر څه ځایي دي: کاري کاپي، انډیکس او جوړون ټول ستاسو په Mac کې اوسي، او شبکه یوازې د زېرمې او تړاوونو ترافیک وړي۔ په دویم کې پروژه د Xcode سره په لرې Mac کې پاتې کیږي، نو انډیکس کول او کمپایل د فایلونو ترڅنګ کیږي، اړیکه د سکرین منځپانګه او د کیلي فشار وړي۔ په درېیم کې سمون ځایي کیږي او د سرچینې له روښانه سپارلو وروسته په لرې هوسټ کې جوړون چلیږي۔ جدول نوموي چې هر یو څه خوځوي۔
| 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 |
لومړی منځنی کالم ولولئ، ځکه هغه ټاکي چې نیمګړتیاوې چېرې ښکاره شي۔ هغه کاري جریان چې سرچینه یې لرې ده د اړیکې د وروالي پر مهال ناکام کیږي، په داسې حال کې چې د لرې کمپایلر لرونکی جریان د سپارلو د ابهام پر مهال ناکام کیږي۔ یوازې درېیم تاسو د دواړو مسؤل کوي۔
تګ راتګ وشمېرئ، میګابایټ نه
یو ایډیټر او یو انډیکسر ډېرې کوچنۍ فایلي عملیات صادروي، او کله چې فایل سیسټم لرې وي هر یو تګ راتګ کیږي۔ دا نښلول شوې کاري ځای د یوې لویې کاپي په څېر د ځنډ په وړاندې حساس نه کوي، نو ځکه د فایل لېږد وخت اندازه کول د کاري جریان د احساس په اړه نږدې هیڅ نه وایي۔ لرې ښودنه مخالف پروفایل لري: دوامداره بهیر خوځوي او د ځنډ په پرتله د تېرېدو وړتیا ښه زغمي۔ دواړه په یوه شمېره پرتله کول ډاډمن غلط ځواب ورکوي۔
هیڅ ترتیب په طبیعت کې تر ټولو ګړندی نه دی۔ سم انتخاب ستاسو په رښتیني کار پورې اړه لري، نو ځکه بل ګام معیار نه، بلکې هماغه کار ازموینه کول دي۔
د سرچینې سپارل روښانه کړئ
کله چې دواړه ماشینونه کاري کاپي لري، پرېکړه وکړئ چې کومه واکمنه ده او لرې جوړون کومه نسخه کارولې۔ کامېټ د دوو وسایلو له خوا د یوې نښلول شوې کاري ونې سمون څخه روښانه سپارل دی، ځکه کامېټ هویت لري او نښلول نه لري۔ جوړ شوي محصول او د انډیکس معلومات هم مالک غواړي، ځکه هغه له سرچینې بیا جوړیږي او باید د سرچینې په څېر سفر ونه کړي۔ بې د شخړې قواعدو دوه اړخیزه هنداره کاري جریان نه دی، هغه سیالي ده۔
له لرې جوړول دا هم غواړي چې لرې هوسټ سم وسیله لړۍ ولري او د خصوصي تړاوونو اسناد۔ هغه VPN چې تاسو ته د هوسټ رسېدو اجازه درکوي ستاسو د حساب لاسرسی هغه ته نه پور ورکوي، او هلته Xcode نه نصبوي۔
له کاري جریان سره د ژمنې مخکې لار وګورئ
لرې هوسټ د هغې د شاوخوا ډیزاین مخکې تایید کړئ، بیا اړیکه د هغو عملیاتو سره اندازه کړئ چې کاري جریان به یې رښتیا ترسره کوي۔ لاندې کمانډونه وسیله لړۍ، فعاله پراختیا کوونکې ډایرکټري او د فایل کتنې لګښت ګوري چې لرې کاري ځایونه دردناک کوي۔ وروستی مه ځایي، بلکې د شبکې په لار چل کړئ۔
xcode-select -p
xcodebuild -version
ssh mac-builder 'xcodebuild -version'
time git status --porcelain
هغه هوسټ چې بشپړ Xcode نصب نه لري له xcodebuild څخه تېروتنه بېرته ورکوي، او دا د شبکې نه بلکې د وسیله لړۍ ستونزه ده۔ د پراختیا کوونکې ډایرکټري ښیي چې جوړون کوم Xcode کاروي، او هغه لار چې یوازې د کمانډ کرښې وسایلو ته اشاره کوي معنا یې دا ده چې اپلیکیشن نصب نه دی۔ په نښلول شوې شریکې برخه کې د زېرمې د حالت کمانډ وخت اندازه کول د تګ راتګ لګښت سیده ښکاره کوي، او له ځایي چلن سره پرتله کول مهمه شمېره درکوي۔ که هغه واټن له مخکې ناخوښ وي، د نښلول شوې کاري ځای کاري جریان د رښتیني ایډیټر لاندې لا بدتر وي۔
ولیکئ چې کوم ترتیب مو وټاکه، کومه ماشین سرچینې مالکه ده او سپارل څنګه کار کوي۔ هغه یادښت بل انبوډینګ یا لیپټاپ بدلون د پلټنې پر ځای د تنظیم کاري دنده جوړوي۔