Het onderhouden van een opensource-ecosysteem is meer dan ooit noodzakelijk in een wereld waar haast alle software gebaseerd is op opensourcecode. De verspreiding van cruciale open-source infrastructuur is onhoudbaar als deze afhankelijk is van centraal gehoste platforms en bedrijven. Het gebruik van dergelijke gecentraliseerde diensten is onverenigbaar met de waarden van het vrije en open-source ecosysteem en bedreigt het voortbestaan ervan. Gelukkig bestaat er een gedecentraliseerd Git-hostingprotocol dat als alternatief dient en tussenpersonen elimineert, waardoor een stabiel, efficiënt en veilig peer-to-peer-ecosysteem gecreëerd wordt. In dit artikel bespreken we hoe projecten gebouwd en gepusht kunnen worden naar een web3/gedecentraliseerd Git-hostingprotocol genaamd Radicle.
Vereisten
Zorg dat Node/NPM op uw computer geïnstalleerd is. Klik hier om een gids te raadplegen.
Wat is een Git-hostingprotocol?
Een Git-protocol is een unieke daemon die bij Git geleverd wordt en luistert op een specifieke poort (9418) om een dienst te bieden die gelijkaardig is aan SSH, maar zonder enige authenticatie. Het is de snelste beschikbare dienst voor bestandsoverdrachten. Het maakt gebruik van dezelfde techniek voor gegevensoverdracht als SSH, maar zonder de kosten voor codering en authenticatie. Als we veel verkeer voor een openbaar project leveren of een groot project hosten waarvoor geen gebruikersauthenticatie vereist is voor leestoegang, zullen we waarschijnlijk een Git Daemon willen opzetten om ons project te bedienen.
Wat is Radicaal?
Radicaal is een open, protocolgebaseerd, gedecentraliseerd netwerk voor codeersamenwerking. Het stelt ontwikkelaars in staat om samen te werken aan code zonder afhankelijk te zijn van derden. Radicle is ontworpen om de mogelijkheden van gecentraliseerde code-samenwerkingsplatforms na te bootsen en tegelijkertijd Git’s peer-to-peer karakter te behouden. Het breidt de voordelen van gedistribueerd versiebeheer uit om tussenpersonen te elimineren en een stabiel, effectief en veilig peer-to-peer-ecosysteem te creëren.
Projectopzet en installatie
We installeren de Radicaal CLI om identiteit af te handelen en te communiceren met Git om code naar het netwerk te pushen. U kunt de Radicle CLI installeren met behulp van één van de volgende opdrachten:
– Installeer de Radicle CLI door de volgende opdracht uit te voeren: cargo install –force –locked –path .
– Of, rechtstreeks vanuit onze seed-node: cargo install –force –locked –git https:
– Of, als u Homebrew gebruikt: brew tap radicle/cli https: brew install radicle/cli/core
Gebruik, na de installatie, de volgende opdracht om de installatie te verifiëren: rad. We zouden iets moeten hebben dat lijkt op wat hieronder staat:
Maak een radicale identiteit
Om te communiceren met het Radicle-netwerk hebben we een identiteit nodig waarmee we rad auth kunnen genereren. Na het kiezen van een weergavenaam en het instellen van een wachtwoordzin, genereert de Radicle CLI twee unieke identifiers:
– Peer ID identificeert ons apparaat en de code die u op het Radicle-netwerk publiceert en is beveiligd met een Ed25519 sleutelpaar.
– Personal URN die de gebruiker op verschillende apparaten identificeert.
Vervolgens voeren we de volgende opdracht uit: rad auth. We zouden iets moeten hebben dat lijkt op wat onderstaand getoond wordt:
Volgens de documentatie bestaat er momenteel geen manier om een verloren of vergeten wachtwoordzin op te halen, dus bewaar het veilig!
Een React-applicatie bouwen
Nu is het tijd om onze website in de lucht te krijgen! Om een nieuw project aan te maken, navigeert u naar een map naar keuze en gebruikt u het npx create-react-app commando. Met deze opdracht wordt een React.js-project gemaakt. Kopieer en plak de onderstaande opdrachten om de afhankelijkheden te installeren:
npx create-react-app Dan krijgt u een bericht met instructies om verbinding te maken met uw project en het lokaal uit te voeren met behulp van de volgende opdracht: npm start. React.js start nu een hot-reloading ontwikkelomgeving die standaard toegankelijk is op http://localhost:3000. We kunnen elk project naar het gedecentraliseerde Git-hostingprotocol pushen. Implementeren naar een Git Hosting Protocol met behulp van Radicle We kunnen een Radicle-project maken van elke bestaande Git-repository en deze publiceren op het Radicle-netwerk met behulp van twee CLI-opdrachten: rad init en rad push. Projecten omvatten alle Git-repositorybestanden, revisiegeschiedenis en Radicle-specifieke metadata, inclusief namen, beschrijvingen en informatie over afgevaardigden. Initialiseer een project Navigeer lokaal naar uw projectdirectory en voer de volgende opdracht uit: rad init. Rad init creëerde een project-URN voor ons project en koppelde onze Peer ID eraan om het te delen op het Radicle-netwerk. Push uw project naar het Radicle-netwerk De Radicle CLI maakt gebruik van peer-to-peer zaadknooppunten die fungeren als replica’s van de Radicle-projectgegevens en toegankelijk zijn via het internet via de webinterface. Radicle biedt drie standaard seed-knooppunten, die allemaal dezelfde functionaliteit hebben als hieronder vermeld: – pine.radicle.garden Voer de volgende opdracht uit om uw project te pushen: rad push. Wanneer u het voor een nieuw project uitvoert, zal de CLI vragen met welk seed-knooppunt het moet worden gesynchroniseerd. Vervolgens krijgen we op de CLI de URL waarop ons project zich bevindt. Wanneer we op de URL klikken die op de CLI wordt weergegeven, in dit geval https://app.radicle.network/seeds/willow.radicle.garden/rad:git:hnrkym4uq4bbwe41qr1en6hhex17a1srtee6ywe, zouden we zoiets als dit moeten zien: Een project klonen We moeten het project lokaal klonen om te kunnen samenwerken aan een project. Wanneer u de webinterface van Radicle gebruikt, klikt u op de knop “Klonen” om een vervolgkeuzelijst weer te geven met de complete rad clone opdracht, die u kunt kopiëren en in uw terminal kunt plakken. We kunnen ook de git opdracht gebruiken om ons project te klonen met de volgende opdracht: git clone Een bestaand project vastleggen/bijwerken Update de README van uw project met de volgende code: # Getting Started with Create React App pushed to Radicle This project was bootstrapped with (Create React App)(https://github.com/facebook/create-react-app). Voer uw wijzigingen door en push de updates naar uw bestaande repository op een gedecentraliseerd Git-hostingprotocol met de volgende opdrachten: git add . Toegang tot huidige profielinformatie Open uw profielinformatie op de CLI door de volgende opdracht uit te voeren: rad self. We zouden iets moeten hebben dat lijkt op wat onderstaand getoond wordt, dat informatie toont over het momenteel ing
– willow.radicle.garden
– maple.radicle.garden
git commit -m “Update readme”
rad push