Ohjelmointi

GitHub vie Visual Studio -koodin verkkoon

GitHubin äskettäisen satelliittitapahtuman pääpuheenvuorossa toimitusjohtaja Nat Friedman sanoi: "Sosiaalisen etäisyyden aikakaudella ihmiset siirtyvät sosiaaliseen koodaukseen." Työskentelemme kotona ja korvaamme GitHubiin rakennettujen työkalujen avulla työnkulun aukot, jotka aiemmin täytettiin vuorovaikutuksella kollegoiden kanssa. Työkaluista, kuten GitHub, on tullut enemmän kuin paikka, johon tallennamme ja jaamme koodia. Ne ovat nyt virtuaalisia työpaikkoja, jotka kattavat enemmän kehitystyönkulkuja.

GitHubin ja Microsoftin suhde on mielenkiintoinen. Microsoft omistaa GitHubin, mutta sitä käytetään erillisenä kokonaisuutena, jolla ei ole juurikaan yhteyttä kahden organisaation välillä. Se on järkevää jakoa, koska GitHubin rooli omistettujen ja avoimen lähdekoodin ohjelmistojen globaalina arkistona edellyttää, että se on neutraali keskus - Yhdistyneiden Kansakuntien ohjelmisto. Tämän ansiosta GitHub voi jatkaa toimintaansa omalla infrastruktuurillaan, joka on rakennettu omille työkaluilleen ja tekniikoilleen. Samaan aikaan Microsoft on lisännyt riippuvuuttaan GitHubista, rakentanut omat työkalunsa GitHubin Electron-kehykseen ja käyttänyt GitHubia omissa kehitysprosesseissaan.

Rakenna se GitHub-kooditiloihin

On mielenkiintoista nähdä GitHubin rakentavan yhden uusimmista ominaisuuksistaan ​​Microsoft-tekniikan päälle (tosin vahvan avoimen lähdekoodin perustan kanssa). Microsoft muutti äskettäin Visual Studio Online -pilvipalvelimen kehitysympäristön nimen Visual Studio Codespacesiksi, ja Satelliitti näki GitHubin julkaisevan samanlaisen tuotteen samalla nimellä.

On tärkeää huomata, että vaikka sekä Visual Studio -kooditilat että GitHub-kooditilat on rakennettu Microsoftin Visual Studio Code -editorin päälle, ne ovat hyvin erilaisia ​​tuotteita. Koska Visual Studio Code käyttää GitHubin Electronia, se on TypeScript-sovellus. Tämä helpottaa siirtämistä verkkoon ja moderneihin verkkoselaimiin Monacon koodieditorin avoimen lähdekoodin avulla. Microsoft käyttää Codespacesia tapana laajentaa työpöydän kehitysympäristöä pilveen ja jakaa se tilapäisten yhteistyökumppaneiden kanssa. GitHub kohtelee kooditiloja aivan eri tavalla, jolloin selaimen ylläpitämä muokkausympäristö on osa koodivarastoa.

GitHub-kooditilojen idea on antaa yhteistyökumppaneille pääsy koodiin sen muuttuessa riippumatta siitä, missä ne ovat: tarkistaa koodi, käsitellä esiin tuotuja asioita tai tarkistaa hakupyynnön kanssa lähetetty koodi. Se on tapa siirtyä nopeasti arkistoon muokkaamaan koodia, jos sinulla on vapaa minuutti ja moderni verkkoselain. Jos haluat käyttää muokkausohjelmaa, Visual Studio Codespaces -laajennus VS-koodille toimii myös GitHub-kooditilojen kanssa.

Pilvikehitysympäristöjen rakentaminen GitHub-kooditiloissa antaa sinulle mahdollisuuden määrittää oletusresurssit, joita editori käyttää osana arkistoa tuttujen dotfileiden avulla. Käyttäjillä voi olla omat kokoonpanonsa, jotka ladataan profiilistaan. VS-koodin nykyiselle laajennusmallille ja Visual Studio Code Marketplacelle on tuki, joten voit asentaa laajennukset, joita tarvitset työskennellessäsi tietyn projektin kanssa. Jos työskentelet Go-sovelluksen kanssa, voit asentaa sopivat Go-laajennukset. Sama Rust, C # ja Flutter; GitHub Codespaces -ympäristö on yhtä joustava kuin Code itse.

Nopeuttamiseksi GitHub tarjoaa Codespaces-konttien ennalta määritettyjen versioiden arkiston, jossa on esimerkkejä Node, Go, .NET Core, C ++ ja muille. Näitä ovat työkalut koodin luomiseen ja virheenkorjaukseen, jotka suoritetaan Codespaces-säilössä. Toimittamalla koko työkaluketjun säilössä voit tehdä paljon muuta kuin muokata koodia, esimerkiksi testata ja tarkistaa muutoksia ennen vetopyynnön yhdistämistä.

Jokaisella Codespaces-editorilla on VS Code GitHub -laajennuksen versio, joka auttaa hallitsemaan asioita ja pyyntöjä sekä työskentelemään koodisi useiden haarojen kanssa. Voit kloonata arkistot työskentelemällä tutun Git-työnkulun kanssa. Codespaceilla on mahdollisuus toimia yksityisten arkistojen kanssa, mutta beta tukee vain henkilökohtaisia ​​ja julkisia arkistoja. Jos käytät GitHub Enterprise -ohjelmaa, voit käyttää koodisi kanssa muita työkaluja. ehkä jopa Visual Studio -kooditilat.

GitHub-kooditilat tarvitsevat paljon resursseja toimiakseen, ja vaikka palvelu on ilmainen beta-version aikana, se on todennäköisesti maksullinen ominaisuus, kun se käynnistetään. Jokainen ilmentymä vaatii säilön Visual Studio Code -kielipalvelimien isännöimiseksi. Käyttöliittymä on selaimessasi, mutta suuren osan VS Code -kehittäjätyökalujen suorittamiseen tarvittavasta raskaasta nostosta on suoritettava Codespaces-säilössä. Kun monet miljoonat kehittäjät käyttävät GitHubia ja jokainen Codespaces-säilö vaatii kaksi ydintä ja 4 Gt muistia, käyttö voi lisääntyä hyvin nopeasti. GitHub aikoo kuitenkin tarjota pay-as-you-go-hinnoittelun, jonka pitäisi pitää kustannukset minimissä.

Keskustele siitä GitHub-keskusteluissa

Pilvessä muokkaaminen on vain osa GitHubin laajennettua sosiaalisen koodauksen tarinaa. Suuri osa GitHubin viimeaikaisesta työstä on helpottanut projektin ylläpitäjien työskentelyä yhteisön kanssa, joka on yhdistynyt heidän koodinsa ympärille. Vaikka Slack tai muut yhteistyöalustat ovat mahdollisia osana yhdistettyä työnkulkua, avoimen lähdekoodin projektit eivät usein pysty maksamaan suunnitelmista, joiden avulla ne voivat arkistoida keskusteluja. Keskustelun ja koodin erottaminen vaikeuttaa suorien linkkien muodostamista näiden kahden välillä, ja vaikka GitHubin sisällä olevat kommentit ja ongelmat tarjoavat yhden tavan linkittää ne, ne ovat silti paljon muodollisempia kuin useimmat sosiaaliset mediat.

Satellite käynnisti GitHub-keskustelut, tapa upottaa ketjutetut keskustelut arkistoon. Hieman muistuttavat vanhan koulun Usenet-uutisryhmiä, ne ovat hyödyllinen tapa rakentaa yhteistyödokumentaatio projektin ympärille. Stack Overflow käyttää tällaista rakennetta, mutta keskustelut ovat vapaamuotoisempia, ja niissä on mahdollisuus äänestää sisällöstä sekä suorat linkit kuhunkin keskusteluelementtiin. Ylläpitäjät voivat käyttää linkkejä tuodakseen keskustelujen sisältöä muihin asiakirjoihin, joten Keskustelu-elementti voidaan linkittää ongelmaan jatkokeskustelun mahdollistamiseksi.

Keskustelun hallinta on tärkeää, ja ylläpitäjillä on mahdollisuus lukita keskustelut, kun hyödyllinen keskustelu on ohi. Roolipohjainen käyttöoikeus voi hallita keskusteluja, esimerkiksi tarjota keskustelun, jonka kaikki voivat lukea, mutta vain hyväksytyt yhteiskäyttäjät voivat lähettää viestejä. Jos keskustelut pystyvät täyttämään lupauksensa kohdennettuna, asiaankuuluvana tilana koodin ja dokumentaation ympärillä tehtävään yhteistyöhön, sen pitäisi auttaa paljon kehittäjiä auttamaan kehittäjiä työskentelemään GitHubissa vaihtamatta kontekstia sovellusten välillä ja menettämättä keskittymistä sekä välttämään pitkiä keskusteluja epävakaalta. , epävarmat videolinkit.

Etäyhteistyö ei ole helppoa, joten on tärkeää, että yhteisökeskeiset sivustot, kuten GitHub, tarjoavat mahdollisimman monenlaisia ​​työkaluja ja palveluita, jotta yhteistyö olisi helppoa riippumatta siitä, missä ja miten työskentelet. GitHub-kooditilat ja GitHub-keskustelut näyttävät olevan tärkeitä vaiheita matkan varrella, ja on mielenkiintoista nähdä, miten niitä käytetään.