Det finns många anledningar att njuta av efter öppen källkod, varav en är förmågan att lära av den kod som andra har byggt.
Andra exempel inkluderar:
Även om det finns mycket öppen källkod, kan det vara svårt att veta hur man följer med utveckling i denna takt när du inte känner till verktygen.
Om du är en erfaren utvecklare som vet hur man arbetar med bug trackers, versionskontroll och så vidare är du inte målgruppen för denna handledning. Men om du är någon som är en fan av WordPress och vill lära dig att följa med utvecklingen av projektet, fortsätt läsa.
I den här artikeln ska vi titta på definitionen av nattliga byggnader, hur vi kan förbereda vårt system för att fånga den senaste versionen av WordPress-källkoden varje dag och hur vi kan använda det på vårt eget system.
Innan vi hoppar in i hur man tar den senaste versionen av källkoden varje dag, är det viktigt att förstå definitionen av "nattliga byggnader".
Uttrycket är inte något som är exklusivt för WordPress. Faktum är att mycket mjukvara, både öppen och sluten källa, inkluderar nattliga byggnader. Huruvida vi som allmänhet har tillgång till dem är en annan fråga.
Även Wikipedia definierar detta i de enklaste termerna:
En händelse som inträffar en gång varje natt.
Då låter själva frasen inte precis som tekniskt jargong, gör det? Spelar ingen roll.
Eftersom vi pratar om WordPress och eftersom WordPress är öppen källkod, ser vi på det från det perspektivet. Enligt Nightly Builds-sidan för WordPress-projektet:
Du kan spåra ändringar på webben eller via vår SVN-postlista men många väljer att köra de nattliga byggnaderna för att hjälpa oss att identifiera fel. Om du vill vara en del av denna process, var god och gå med i WP Testers mailinglista och ladda ner den senaste nattliga byggnaden.
Om du är intresserad av att delta i mer än bara ta tag i källkoden och följ de ovan angivna stegen, vänligen besök länken ovan. För återstoden av den här artikeln ska vi titta på vad som behövs för att fånga den nattliga versionen av källkoden.
Det finns ett antal olika versionskontroll- eller källkodskontrolltjänster och program som är tillgängliga. WordPress-projektet använder en egen värdversion av Subversion för att hantera versionskontrollen för projektet.
Om du inte är bekant med Subversion kan du lära dig mer om det på programvarans hemsida. Subversion har dock funnits ganska länge och används ofta i ett antal olika företag och projekt.
Subversion är ett styrsystem för öppen källkod. Grundades 2000 av CollabNet, Inc., har Subversion-projektet och programvaran sett oerhört framgångsrik det senaste decenniet. Subversion har haft och fortsätter att njuta av omfattande adoption inom både open source-arenan och företagsvärlden.
Denna handledning kommer inte att ge en fördjupad guide för hur du använder Subversion och allt du kan göra med det, men det kommer att ge dig allt du behöver veta för att installera det på din maskin och att ta tag i den senaste versionen av WordPress-källkoden.
Subversion kan användas på ett av två sätt:
Eftersom Subversion används så mycket finns det ett antal olika klienter som du kan välja oavsett projekt av operativsystemet där du är inblandad.
Till exempel:
Naturligtvis är det bara en handfull av de alternativ du har. Oavsett vilket operativsystem du använder, är det en sak vi alla har gemensamt att Subversion är tillgängligt som ett kommandoradsverktyg, så det är vad vi ska använda i denna handledning.
Installera Subversion via kommandoraden beror på operativsystemet du använder. Om du använder Linux behöver du en typ av installationsprogram. Om du använder Windows eller Mac OS X behöver du en för varje system.
När de är installerade, kommer de kommandon som vi utfärdar i terminalen hela resten av denna handledning att vara densamma.
Navigera först till sidan Subversion Binärpaket och hitta den version som motsvarar ditt operativsystem.
För det andra, ladda ner installationsprogrammet, gå igenom stegen som tillhandahålls och återvänd sedan till den här handledningen.
Slutligen måste vi se till att Subversion installerats korrekt. För att göra detta, öppna din terminal (eller Kommandotolken om du använder Windows) och skriv följande kommando:
$ svn -version
Och du bör se något som detta skrivs ut i konsolen:
Detta kommer att innehålla en informationslinje som innehåller versionen av Subversion-klienten. Till exempel:
svn, version 1.7.22 (r1694152) sammanställd 10 februari 2016, 16:22:46
Men den faktiska produktionen som du ser kan vara lite annorlunda. Slutsatsen är att om du kan utföra svn
kommando, då borde du kunna följa med resten av stegen i handledningen.
Innan vi tar tag i den senaste kopian av WordPress måste vi se till att vi har en kataloguppsättning där vi hämtar den senaste källkoden.
För mig lägger jag dem in / Användare / tommcfarlin / överför eftersom jag använder OS X. Därför kommer alla mina kommandon att vara relaterade till den katalogen. Och din kommer att vara i förhållande till vilken katalog du själv väljer.
Så i mina Nedladdningar katalog Jag ska skapa en katalog som heter wp
som kommer att hysa källkoden vi checkar ut från det officiella förvaret. I ditt terminal anger du kommandot som ansvarar för att skapa en ny katalog.
För mig skulle det vara:
$ mkdir wp
Och nu har jag en tom katalog där jag kan dra källkoden för WordPress via Subversion.
Uppgiften att dra den senaste versionen av källkoden från ett Subversion-arkiv kallas en "check out". Så för att kolla in den senaste versionen av WordPress, måste vi utfärda ett Subversion-kommando i kommandoraden.
Detta kommer att kräva flera saker:
co
).Använd den här informationen genom att först ändra kataloger i wp
katalog du just skapat och sedan utfärda kommandot Subversion checkout med den angivna webbadressen. Den fullständiga uppsättningen kommandon kommer att se ut så här:
$ cd wp $ svn co https://core.svn.wordpress.org/trunk/
När det är klart, bör terminalen börja skriva ut information eftersom det drar ner den senaste versionen av källkoden.
En mycket viktig sak att notera är att detta är idealiskt för experiment. Försök inte att trycka in någon kod i förvaret (du måste skicka in patchar på ett formellt sätt, vilket ligger utanför ramen för den här handledningen).
Tänk på detta som ett enkelt sätt att ta tag i källkoden för "skrivskyddad".
Vid denna tidpunkt bör du se att du har en trunk
katalog i wp
katalog du skapade tidigare i det här steget. Stammen är en Subversion Naming Convention, varav huvudlinjen för utveckling på ett projekt är gjort.
Tekniskt kan kataloger nämnas vad du vill, De allmänna konventioner som används vid arbete med Subversion-förråd är dock:
grenar
märka
trunk
Om du navigerar in i stamkatalogen med kommandoraden eller till och med operativsystemets användargränssnitt ser du den välbekanta katalogstrukturen i WordPress-programmet.
Det betyder att du faktiskt kan skapa en fungerande version av WordPress som du skulle om du hade laddat ner den från projektets hemsida.
I ett tidigare inlägg gav jag ett detaljerat genomgång av vad som behövs för att installera WordPress-programmet. Om du är helt ny till WordPress, var god och kolla igenom den handledningen eftersom det ger dig all information du behöver veta för att få WordPress igång.
Om du redan har läst det eller är bekant med hur du skapar en lokal kopia av WordPress, fortsätt sedan och:
När du är färdig kör du en blödande kopia av WordPress, inklusive alla funktioner som är i utveckling. Om du aldrig har gjort det tidigare är det väldigt snyggt att se vad som kommer nedströms i nästa version.
När du fortsätter att arbeta med källkoden eller vill se till att du arbetar med den senaste versionen av källkoden, kommer du att vilja uppdatera den.
Eftersom vi använder versionskontroll är det enkelt att använda Subversion för att uppdatera kopian av koden som finns på vår maskin. När du är redo att uppdatera (vilket kan vara varje timme eller kan vara varje natt), utfärdar du helt enkelt följande kommando från trunk
katalogen:
$ svn uppdatering
Och det enda kommandot kommer att dra ner någon kod som slogs samman sedan sista gången du checkade ut den senaste versionen av källkoden. Observera att när du gör det här riskerar du att bryta något i din installation, men det är naturen att köra blödande kanten varje natt bygger.
Även om ett av de huvudsakliga syftet med denna handledning var att gå igenom dig genom att få Subversion installerat på din maskin och använda den för att kolla WordPress-källkoden, kan du även ta den senaste byggnaden av WordPress när som helst genom att använda den här URL-adressen.
Nej, detta var aldrig menat att vara "den långa vägen" för att få källkoden. Istället är det för att du ska arbeta mer som en utvecklare genom att använda verktyg och processer som används dagligen när du arbetar med WordPress.
Oavsett om du vill titta på alla de nya saker som drivs in i WordPress-kärnan varje dag eller letar efter att så småningom bidra med en patch till programmet, har du tillgång till den nattliga versionen av koden mycket roligt.
Om inget annat, med tillgång till ett open source-projekt som WordPress, där hundratals människor aktivt arbetar med det, kan du lära dig mycket om hantering av felrapporter, biljetter, korrigeringar, funktioner, sammanslagningar och så vidare.
Jag rekommenderar inte att du kör denna kod utanför något annat än en lokal utvecklingsmiljö. Med det sagt, om du är en utvecklare och du är intresserad av att testa koden som ligger på blödningskanten, kan du bygga nattliga byggnader så att du gör exakt det.
För dem som är intresserade av att fortsätta lära sig mer om WordPress, har vi flera kurser specifikt om detta ämne. Utöver det har vi också många plugins på marknaden som du kan ladda ner, studera och använda i ditt dagliga arbete.
Om du är intresserad av att lära dig mer om WordPress från ett utvecklingsperspektiv, notera att jag bara arbetar med WordPress och ofta skriver om det. Du kan fånga alla mina kurser och handledning på min profilsida, och du kan följa mig på min blogg och / eller Twitter på @tommcfarlin där jag pratar om mjukvaruutveckling i samband med WordPress.
Tveka inte att lämna några frågor eller kommentarer i foderet nedan, och jag vill sikta på att svara på var och en av dem.