Avoimen lähdekoodin projekteihin entistä helpompaa osallistua



Jos olet ohjelmistojen kehittäjä, olet melko varmasti jossain vaiheessa syystä tai toisesta tutkinut niin kutsuttuun avoimeen lähdekoodiin perustuvan ohjelmiston lähdekoodia.  Mahdollisesti löysit lähdekoodista myös jotain, jota halusit muuttaa.  Tässä vaiheessa usein herää kysymys: pidänkö muutoksen itse, vai pyrinkö saada muutoksen hyväksyttyä alkuperäisprojektiin?  Tässä kirjoituksessa ei kiinnosta periaatteelliset lisenssikysymykset, vaan julkaisemisen vaiva (ohjelmistoprojektin ulkopuoliselle, jolla ei ole kirjoitusoikeuksia projektin versiohallintaan), ja miten muutoksen julkaiseminen nyt voi olla aikaisempaa huomattavasti helpompaa.

Julkaiseminen on aikaisemmin tarkoittanut haaran luomista versiohallinnassa, lähdekoodipatshin ylläpitämistä ja muutosehdotuksen toimittamista esim. sähköpostissa. Kaiken lisäksi pitää muotoilla saatekirje, jossa muutos esitetään. Tämän lisäksi vastaanottajalle on vaivalloista käsitellä satunnaisesti saapuvia muutosehdotuksia käsin: lukea ja lajitella sähköpostit, soveltaa patshit ja ylläpitää niitä siihen asti kunnes ne joko hyväksytään tai hylätään.

Hajautetut versiohallintajärjestelmät kuin esim. Git ovat paljolti helpottaneet ulkopuolisten osallistumista projekteihin — nyt myös ulkopuoliset voivat hallitusti ylläpitää haaroja.  Mutta edelleen muutoksien julkaiseminen ja hyväksyminen alkuperäisprojektiin voi olla vaivalloista käytännöllisistä syistä.

Minkälainen ratkaisu vähentäisi sekä muutoksen ehdottajan että vastaanottajan vaivoja huomattavasti?  Entä jos muutoksen pystyisi hallitusti julkaista yhdellä komennolla, suoraan ulkopuolisen versiohallintajärjestelmästä? Ja myös vastaanottaa hallitusti yhdellä komennolla, suoraan projektin versiohallintajärjestelmään? Tämä on jo suurin osin mahdollista GitHub -ympäristössä. GitHub:in pull requests -ominaisuus sallii ulkopuolisen hallitusti ehdottaa muutoksia projektin lähdekoodiin. Vastaanottaja voi hallitusti sulattaa tai hylätä valitut muutokset.  Toistaiseksi tämä on harmi kyllä GitHub-spesifinen ominaisuus, mutta leviää toivottavasti myös muualle ajan myötä.

Tämän artikkelin on kirjoittanut Markus Holmberg  ja sitä ovat sittemmin muokanneet muut Codenton työntekijät.

Vastaa

Sähköpostiosoitettasi ei julkaista. Pakolliset kentät on merkitty *