Tänään olen pohtinut, onko Git-versiohallinta vanhentumassa, koska se tallentaa kaiken datan salaamattomana omaan tietokantaansa. Maailmalla on käynnissä yleinen trendi muuttaa kaikki tietovarastot salatuiksi. Ennen pitkää salaamattoman datan säilöminen alkaa tuntua samalta kuin salasanojen tallentaminen paljaaltaan tietokantoihin. Se oli normaalia vielä 1990-luvulla, mutta nykyään se ei tulisi enää mieleenkään.

Gitin osalta asia on tietysti erilainen riippuen siitä, puhutaanko avoimen lähdekoodin projekteista vai yksityisistä projekteista. Avoimien projektien on suotavaa olla salaamattomasti näkyvissä koko maailmalle, mutta toisaalta niissäkin on usein tarpeita säilytellä yksittäisiä salattuja tiedostoja, joihin pääsevät käsiksi vain harvat ja valitut.

Yksityiset projektit voisivat olla kokonaan salattuja, jolloin kehitystiimien pitäisi jakaa keskenään salausavaimet päästäkseen koodiin käsiksi. Tämä on toisaalta ristiriidassa nykyaikaisten web-työkalujen kanssa, sillä GitHubin ja Bitbucketin kaltaiset palvelut olettavat pääsevänsä käsiksi versiohallintaan tallennettuun dataan muodostaakseen siitä diffejä ja pull-requesteja.

Ongelma olisi kenties ratkaistavissa käyttämällä repositoryissa useaa eri salausavainta, joista yksi annettaisiin GitHubille web-käyttöliittymää varten. Jollain toisella avaimella taas salattaisiin sellaiset tiedostot, joita edes GitHubin ei haluta näkevän. Kaikki data olisi kuitenkin repositoryissa salattuna, sekä pilvessä että kehittäjien koneilla, ja täten yhtenäisesti hallittavissa salausavaimia käyttäen.

En tiedä taipuuko Git tähän ja onko sen kehittäjillä halukkuuttakaan viedä sitä tähän suuntaan. Alan kuitenkin nyt ounastella, että tässä asiassa tapahtuu vielä suuri murros, joka voi johtaa uudenlaisten versiohallintojen käyttöönottoon.

https://twitter.com/kennu/status/882589814901673986

Published 5.7.2017