1. Webdesign og -udvikling Hvad er GitHub-pull-anmodninger?

Af Sarah Guthals

Anmodningen om navnetrækning er forvirrende for nogle mennesker. ”Hvad anmoder jeg om at blive trukket?” Godt spørgsmål. En pull-anmodning i GitHub er en anmodning til vedligeholderen af ​​et arkiv om at trække nogle kode ind.

Når du skriver en kode, som du vil bidrage til et lager, opretter og sender du en pull-anmodning. Din kode indeholder nogle foreslåede ændringer i mållageret. En pull-anmodning er din måde at tilbyde disse ændringer til vedligeholderen af ​​depotet. Det giver repository vedligeholdere en mulighed for at gennemgå ændringerne og enten acceptere dem, afvise dem eller bede om flere ændringer, der skal foretages.

Skubber kode til GitHub

For at skubbe kode til GitHub skal du have et lager. Åbn depot efter eget valg.

Den første ting at gøre er at oprette en ny gren. Oprettelse af en ny filial, inden du skriver ny kode, er en standardprocedure med Git.

En pull-anmodning består ikke af et vilkårligt sæt ændringer eller forpligtelser. En pull-anmodning er altid knyttet til en filial. Med andre ord er en pull-anmodning en anmodning om at flette en gren til en anden.

Selv om det er sandt, at en pull-anmodning kan målrette mod enhver gren (undtagen sig selv), er det mest almindelige scenarie at målrette mod hovedgrenen i et depot, typisk navngivet master.

Dette forhold mellem trækforespørgsler og grene er grunden til, at du skal oprette en ny gren, når du starter nyt arbejde. Vi navngiver grenen nyt-arbejde til dette eksempel, men er velkommen til at navngive det, hvad du vil, ved at erstatte nyt arbejde med dit eget filialnavn i følgende kommando:

$ git check -b nyt-arbejde

Nu hvor vi har en gren, er vi nødt til at oprette en forpligtelse i den gren. I dette eksempel er det specifikke indhold af forpligtelsen ikke vigtigt. Du kan vælge en hvilken som helst fil og foretage nogle redigeringer af filen, såsom at tilføje noget tekst til slutningen. Eller rediger manuelt filen README.md manuelt eller kør følgende kommando for at tilføje noget tekst til slutningen af ​​filen:

$ echo "\ n ## Installation" >> README.md

Nu, hvor du har en fil med nogle ændringer, skal du foretage disse ændringer. Du kan f.eks. Bruge følgende kommando til at udføre alle dine ændringer. Bekræftelsesmeddelelsen er ikke vigtig her. Det vigtige er at have en forpligtelse i en gren til at arbejde med det, der ikke er i mastergrenen.

$ git tilføjelse -A

$ git commit -m "Tilføj tekst til README"

Skub nu denne nye filial til GitHub.com (erstatt nyt arbejde med dit filialnavn):

$ git push -u oprindelse nyt arbejde

Git push-kommandoen fortæller Git at skubbe lokale forpligtelser til et fjernlager. Flagget -u angiver, hvor det skal skubbes - i dette tilfælde til en gren, der også kaldes nytværk på den fjerntliggende navngivne oprindelse.

Flaget -u er kun nødvendigt første gang du skubber en ny filial til serveren. Fra det tidspunkt er den nye arbejdsgren på din lokale maskine forbundet med den nye arbejdsgren på GitHub.com, og ethvert efterfølgende skub til den gren behøver ikke flaget.

Sådan åbnes en anmodning om træk

Før du kan åbne en pull-anmodning, skal dit GitHub.com-arkiv have mindst en anden gren end standardgrenen. Hvis du fulgte de foregående trin, har du en gren, der endnu ikke er slået sammen til master. I vores tilfælde kaldes filialen ny-arbejdsgren, men du har muligvis navngivet din til noget andet. Besøg depotet på GitHub.com for at åbne en pull-anmodning.

Når du besøger depotet på GitHub.com, kan du se en ny meddelelse i afsnittet Mærkede De for nylig skubbede grene, som vist.

Startside for GitHub-arkiv

Klik på knappen Sammenlign & pull-anmodning for at navigere til siden Åbn en pull-anmodningsside, som vist i følgende figur. Målgrenen (den filial, du vil trække dine ændringer ind i) er standardgrenen for repoen. Din filial er vist ved siden af ​​målgrenen, og en status for, om din filial kan slås sammen til målgrenen, er ved siden af. Titlen på pull-anmodning er den samme som den seneste meddelelse om engagement - i dette eksempel Føj tekst til README - og din beskrivelse er tom. Den følgende figur viser en eksempelbeskrivelse.

GitHub pull-anmodning

Du kan ændre standardgrenen ved at vælge Indstillinger → Grenafsnit i dit arkiv.

Anmodningen om træk

Fra siden Åbn en pull-anmodning kan du indtaste en oversigt og beskrivelse. De fleste af konventionerne om engagement-meddelelser understøttes også i en pull-anmodning - for eksempel at nævne personer, der bruger @USERNAME-formatet. I det foregående spørgsmål nævner jeg @ sarah-wecan. Når jeg opretter pull-anmodningen, modtager @ sarah-wecan en anmeldelse.

Du kan referere til problemer og andre pull-anmodninger ved hjælp af #ISSUEID-formatet. Og selvfølgelig kan du tilføje emoji, såsom: gnister:.

I dette afsnit dækker vi, hvad vi skal skrive her mere detaljeret. Der er meget, der går ind i en god pull-anmodning.

Sådan tilføjes korrekturlæsere

Til højre for pull-anmodningsoversigten og beskrivelsesfelterne er et sæt indstillinger for pull-anmodningen.

Den første, Reviewers, giver dig mulighed for at specificere en eller flere personer, du vil gennemgå din pull-anmodning. Sådan tilføjes korrekturlæsere:

  1. Klik på gearet for at se en liste over personer, du kan nævne. For depoter med et stort antal brugere, kan du begynde at skrive for at filtrere brugerens sæt. Klik på hver bruger for at tilføje dem til listen over korrekturlæsere. Når du tilføjer en korrekturlæser, bliver de straks underrettet, når du er færdig med at oprette pull-anmodningen. Følgende figur viser listen over korrekturlæsere med to valgte korrekturlæsere.
GitHub-liste over korrekturlæsere

Sådan specificeres deltagere

Den næste mulighed efter korrekturlæsere er en mulighed for at specificere modtagere. En ansøger er den person, der skal gribe ind på anmodningen om træk. Ofte repræsenterer en pull-anmodning et igangværende arbejde og ikke det endelige resultat af noget arbejde. Hvis der skal gøres mere arbejde på en pull-anmodning, tildeler du pull-anmodningen til den person, der skal udføre arbejdet.

Sådan specificeres deltagere:

  1. Klik på gearet for at se en liste over assisterede. Tildelt dialogboks fungerer ligesom korrekturlæserens dialogboks. Det giver dig mulighed for at vælge en eller flere assignees. Klik på hver bruger for at tilføje dem til listen over korrekturlæsere.

I de fleste tilfælde er det bedst at bare tildele en person, der er ansvarlig for det næste trin. Tildeling af en person reducerer chancerne for, at flere overordnede mener, at de andre overordnede er ansvarlige for arbejdet.

Sådan specificeres etiketter

Etiketter er en måde at finde ud af, hvad man skal arbejde på videre. Etiketter fungerer på samme måde for pull-anmodninger. De giver praktisk gruppering og kontekst, så du kan beslutte, hvad du skal arbejde videre med, eller hvad du skal gennemgå næste.

Sættet med etiketter, du kan bruge til emner og pull-anmodninger, er det samme, men nogle etiketter giver mere mening for problemer end pull-anmodninger og vice versa. For eksempel har mange lagre en "klar til gennemgang" -mærke specifikt til pull-anmodninger.

Specificer projekter og milepæle

De sidste to indstillinger giver dig mulighed for at specificere projekttavlen og milepælen, som denne pull-anmodning tilhører.

Sådan opretter du anmodningen om træk

Når du har skrevet pull-anmodningen og har specificeret alle mulighederne for pull-anmodning, skal du klikke på knappen Opret pull-anmodning for at gemme alt dit arbejde og oprette pull-anmodningen. Dette figur viser en pull-anmodning oprettet på mit arkiv.

GitHub pull-anmodning
  1. Webdesign og -udvikling Gør handling med GitHub-handlinger

Af Sarah Guthals

GitHub har en funktion, der fjerner behovet for at være vært for vores app uden for GitHub, hvilket kan reducere antallet af bevægelige dele, når GitHub udvides. Denne funktion kaldes GitHub-handlinger.

GitHub-handlinger er en af ​​de nyere, mest spændende funktioner i GitHub. I skrivende stund er det stadig en betafunktion. GitHub-handlinger gør det muligt at oprette tilpassede arbejdsgange på GitHub. Det giver dig mulighed for at implementere tilpasset logik til at reagere på begivenheder på GitHub. I det foregående afsnit skrev vi en GitHub-app for at gøre det. Med GitHub-handlinger behøver vi ikke at oprette en brugerdefineret app. Vi kan opbygge arbejdsgange ved hjælp af eksisterende handlinger, som andre har skrevet, eller vi kan skrive vores egne handlinger, der kører i en Docker-container.

Forhåbentlig, når du læser dette, er GitHub-handlinger generelt tilgængelige. Men i tilfælde af at de stadig er i beta, e-mail support@github.com og beder om at være i GitHub Actions-betaprogrammet.

Overvej følgende scenario for at demonstrere GitHub-handlinger. Når du fusionerer en pull-anmodning i dit eget depot, holder filialen til pull-anmodningen sig rundt. GitHub præsenterer en knap for at slette grenen, men mange glemmer at gøre det og lader disse grene klæbe rundt.

At slette grenen er ikke nødvendigvis en dårlig ting, medmindre du er den type person, der kan lide, at tingene er ryddige og ikke kan tåle at have en gren, der ikke længere har brug for at blive ved. Hvis du er den type person, er du heldig. Jesse Frazelle er også den type person, og hun skrev en GitHub-handling, du kan bruge i dine egne arbejdsgange. Hendes blogindlæg, "The Life of a GitHub Action" er en god læsning for at forstå flere detaljer om livscyklussen for en GitHub-handling.

Oprettelse af en GitHub-arbejdsgang

Hvis du er blevet accepteret i beta-programmet GitHub Actions, eller det er blevet mere udbredt, skal du se en ekstra fane øverst mærket Handlinger, når du ser et lager.

Følgende trin gennemgår processen til oprettelse af en GitHub-handlingsflyd til et depot.

GitHub-arbejdsgangeGitHub enkle arbejdsgange

Test af en GitHub-handling

Når du har overført denne fil til dit arkiv, er arbejdsgangen aktiv. Du kan teste den ved at oprette en ny pull-anmodning og derefter flette den. Et par sekunder eller minutter senere skal du se, at grenen for pull-anmodning blev slettet. En opdatering af pull-anmodningen siger noget lignende

github-actions bot slettede grenens navngren for 1 minut siden

Du kan oprette temmelig nyttige og komplekse arbejdsgange ved hjælp af eksisterende handlinger. Du kan installere handlinger fra GitHub Marketplace eller henvise til dem ved at pege på et arkiv, der indeholder en handling. Du kan også skrive tilpassede handlinger. Hvordan man gør det er uden for denne artikels rækkevidde, men du kan se på handlingen, som Jesse skrev for at få en idé om, hvad det kræver.

Med GitHub-handlinger kan du tilpasse GitHub til din smag på næsten ubegrænsede måder.

  1. Webdesign & udviklingGitHub-apps og probot

Af Sarah Guthals

Med Apps på GitHub kan du udvide GitHub på kraftfulde måder. GitHub-apps er webapplikationer, der kan svare på begivenheder på GitHub. Disse begivenhedsabonnementer kaldes webkroge. Når der sker en begivenhed på GitHub, som appen er interesseret i, fremsætter GitHub en HTTP-anmodning til appen med oplysninger om begivenheden. Appen kan derefter svare på denne begivenhed på en eller anden måde, hvilket ofte resulterer i et opkald tilbage til GitHub via GitHub API.

Her går du gennem opbygning af en simpel GitHub-app, der bringer en smule levetid til dine diskussioner om emner. Der er et gammelt meme i form af en animeret gif med en lille pige, der stiller spørgsmålet, "Hvorfor har vi ikke begge?" Den typiske anvendelse af dette meme er svar på et spørgsmål, der præsenterer en falsk dikotomi. Med andre ord, når nogen stiller et spørgsmål med to valg, kan nogen muligvis svare med dette billede.

Vi præsenterer GitHub's Probot

GitHub-apps er webapplikationer, der skal lytte til HTTP-anmodninger. Du har en masse vigtige detaljer for at blive lige nøjagtige, når du bygger en HTTP-anmodning, f.eks. Hvad er formatet på de data, der er sendt til appen? Alle disse detaljer kan være forvirrende og tidskrævende at blive korrekte, når du bygger en GitHub-app fra bunden. Det er vanskeligt at vide, hvor man skal starte.

GitHubs Probot-ramme er praktisk, når du kommer i gang med en GitHub-app. Probot håndterer meget af kedelpladen og nitpicky detaljer ved opbygning af en GitHub-app. Det er en ramme til opbygning af GitHub-apps ved hjælp af Node.js. Det giver mange bekvemmelighedsmetoder til at lytte til GitHub-begivenheder og til at ringe til GitHub API.

Probot gør det nemt at oprette en GitHub-app, men det løser ikke problemet med, hvor appen skal være vært.

Hosting af GitHub-appen

En GitHub-app kan antage mange former. Det kan være en Node.js-app, der kører i Heroku, en ASP.NET Core-app, der kører i Azure, en Django-app, der kører i Google Cloud - det betyder ikke noget. Det skal bare være vedvarende og tilgængeligt via det offentlige internet, så GitHub kan nå det med begivenhedsbelastninger.

Det kan være tidskrævende at indstille alt dette, så til vores formål bruger vi Glitch til at implementere en hurtig og beskidt GitHub-app.

Vi præsenterer Glitch

Glitch er en hostingplatform til webapplikationer, der fjerner meget af friktionen med at få en web-app i gang. Enhver app, du opretter i Glitch, er live på nettet fra begyndelsen. Du behøver ikke at tænke over, hvordan du planlægger at implementere koden, fordi enhver ændring, du foretager, gemmes automatisk og implementeres automatisk.

Glitch fokuserer på det samfundsaspekt ved bygning af apps. Hver fil kan redigeres af flere personer i realtid, på samme måde som du muligvis redigerer et dokument i Google Dokumenter. Og hvert projekt kan remixes ved at klikke på en knap. Dette tilskynder til en masse deling af kode og læring fra hinanden, hvilket kommer godt med, når vi bygger vores egen GitHub-app.

Inden du fortsætter, skal du sørge for at oprette en konto på Glitch, hvis du ikke allerede har en.

Opret en Probot Glitch-app

Når du har en grov forståelse af Probot og har oprettet en Glitch-konto, kan du oprette en Probot-app på Glitch. Med Glitch kan du remixe eksisterende apps, og den gode nyhed er, at Glitch allerede har en Probot-app, som du kan remix. Dette betyder, at du kan oprette din Probot-app med et enkelt klik og et par tilpasninger.

For at oprette din app skal du indtaste følgende URL i din browser: https://glitch.com/edit/#!/remix/probot-hello-world.

Denne kommando opretter en helt ny app i Glitch baseret på probot-hej-verden-eksemplet med en tilfældigt genereret URL, som vist. Som du kan se, kaldes min app slik-chaffeur.

GitHub Glitch Probot-app

Den venstre rude viser listen over filer i din applikation. Filen README.md indeholder trinvise instruktioner til opsætning af appen hej-verden Probot. Følg disse instruktioner omhyggeligt for at konfigurere prøven GitHub-app.

En af instruktionerne nævner at køre følgende kommando:

cat my-app-name.2018-06-20.private-key.pem | pbcopy

Formålet med den forrige kommando er at kopiere indholdet af din private nøglefil til udklipsholderen, så du kan indsætte den i Glitch-filen. Denne kommando fungerer dog kun på en Mac. På Windows vil du køre følgende kommando (ændre filnavnet til at matche dit):

skriv mit-app-navn.2018-06-20.private-key.pem | klip

Når du er færdig, skal du installere appen på et depot, du ejer, og derefter oprette et nyt problem. Et par sekunder senere skulle du se en kommentar oprettet af din bot med ordene "Hej Verden!".

Tilpas appen

Når du har oprettet en Probot-app i Glitch og installeret den på GitHub, kan du tilpasse, hvordan appen reagerer på at udsende kommentarer. Når du fulgte trinnene i README, abonnerede du på udgivelsesbegivenheder. Disse begivenheder inkluderer ikke, når der oprettes nye kommentarer. Vi er også nødt til at abonnere på at udsende kommentarer.

Se en liste over dine apps her. Klik på knappen Rediger for at navigere til din app. Klik derefter på tilladelser og begivenheder i venstre navigation og rul ned til afsnittet Abonner på begivenheder. Marker afkrydsningsfeltet Udgavekommentar som vist.

GitHub-begivenhedsabonnementer

Klik på knappen Gem ændringer nederst for at gennemføre disse ændringer.

Nu skal du ændre din Glitch-app for at lytte til kommentarer til nye emner og svare korrekt. Rediger filen index.js, og erstatt filens indhold med følgende kode:

module.exports = (app) => {

// Lytter til kommentarer til nyt emne

app.on ('issue_comment.created', async context => {

// Henter kommentarteksten

const message = context.payload.comment.body

if (meddelelse.indexOf ('eller')> -1) {

const params = context.issue ({

body: '! [Hvorfor ikke begge piger] (https://media3.giphy.com/media/3o85xIO33l7RlmLR4I/giphy.gif)'

})

// Opretter en kommentar med et markdown-billede

return context.github.issues.createComment (params)

}

})

}

Denne kode lytter til kommentarer til nye emner, ser efter ordet eller er omgivet af mellemrum, og hvis den finder det, opretter en ny kommentar med et markdown-billede.

Denne tilgang er ikke særlig smart. Prøv denne lidt bedre tilgang. Det ville være endnu bedre, hvis vi kunne anvende en vis kunstig intelligens (AI) i form af naturlig sprogbehandling (NLP). Men det er uden for mine færdigheder og uden for rækkevidden til denne bog.

Installation af appen

Når du har oprettet appen og få den til at fungere, kan andre installere appen og bruge den. Du kan installere det ved at gå til din GitHub-apps-liste og klikke på den store grønne Install-knap øverst til højre.

Installer det på et arkiv, og gå derefter til at oprette en kommentar til et problem i depotet, der stiller et spørgsmål med ordet eller i det. Et eksempel på interaktion vises her.

GitHub Hvorfor ikke app
  1. Webdesign og -udviklingHackathons og andre netværksbegivenheder til GitHub-softwareudviklere

Af Sarah Guthals

GitHub er vært for og sponsorerer flere konferencer i løbet af året. Mange slags begivenheder fokuserer på softwareudviklere. De spænder fra den uformelle møde eller brugergruppe til den strukturerede multiday internationale softwarekonference.

Se hvilke GitHub-begivenheder, der kommer. Denne side viser GitHubs egne kommende begivenheder såvel som begivenheder, som den sponsorerer.

GitHub hackathon-grafik

Meet-ups og brugergrupper til softwareudviklere

En møde eller en brugergruppe er en uformel samling af udviklere til at dække et emne. Mange planlægges månedligt og arrangeres af et lokalt firma eller en softwareinteressegruppe.

Disse begivenheder har en tendens til at være en god måde at dyppe din tå på i softwareudviklerbegivenheder. De har en tendens til at være små sammenkomster af mennesker i dit område. Hver måned har en lokal taler, der taler om et emne, der er relevant for gruppen. (Nogle brugergrupper og mødeappar bringer lejlighedsvis ind fra ydersiden, men typisk fokuserer de på at fremhæve lokale talere.)

Meetups.com er en fantastisk måde at finde et møde, der er relevant for dine interesser. Du kan søge efter møder efter placering på meetups.com. Kontroller f.eks. JavaScript-møder for Seattle Washington-området.

Et par eksempler på lokale møder inkluderer

  • Brooklyn JS: Brooklyn, New York .NET São Paulo: São Paulo, Brasilien SD Ruby: San Diego, Californien

Regionale konferencer for softwareudviklere

En regional konference er en relativt lille konference, hvor talere og deltagere uden for det lokale område er velkomne, men konferencens fokus er at skabe et sted for lokale udviklere og talere til at forbinde og præsentere deres arbejde.

Ofte er disse konferencer en eller to dage. Mange vil have et enkelt spor af samtaler, eller højst to. De er et skridt op i størrelse og struktur fra et møde og forekommer typisk en gang om året, i modsætning til månedligt.

Nogle af dem tilbyder ofte workshops enten før eller efter konferencen. Disse workshops koster normalt ekstra, men tilbyder mere dybdegående træning til et specifikt skillset eller teknologi. For eksempel kan du ofte finde et heldagsværksted, der er dedikeret til at forbedre dine Git-færdigheder. Hvis du har råd til det og finder en, der lærer en færdighed, du vil forbedre, er værksteder ofte investeringen værd.

Nogle gode eksempler på lokale konferencer inkluderer

  • .NET Fringe: Portland, Oregon JSConf Hawaii: Honolulu, Hawaii GoRuCo: New York, New York

Hackathon

En hackathon er meget forskellig fra en konference. Mens konferencer fokuserer mere på at få talere til at undervise et emne gennem en tale, fokuserer hackathons på at bygge. En hackathon er en begivenhed, der kan vare flere dage, hvor grupper af mennesker danner hold til at samarbejde skrive kode for at løse en slags problem.

Det sædvanlige format er en slags problem, der præsenteres, og hold har til opgave at opbygge en løsning. Teknologibunken, de muligvis bruger, afhænger ofte af fokuset i en hackathon. For eksempel kræver en mobiludviklingshackathon, at deltagere bygger en mobilapp for at løse problemet.

Hackathon er et portmanteau af ordene hack and marathon. Mange tager maratonaspektet til det ekstreme ved at have hold arbejde døgnet rundt med meget lidt søvn. Andre forsøger at skabe en balance mellem arbejdstid og sovetid ved at tvinge deltagere til at forlade arbejdsområdet.

Hackathons er ofte meget inkluderende for begyndere. F.eks. Er SD Hacks åben for alle gymnasiestudenter eller universitetsstuderende i verden, der er 18 år eller ældre. Du behøver ikke altid have et hold, når du tilmelder dig et hackathon. Ofte kan du finde en, når du kommer dertil. Det er bedst at tjekke FAQ for den specifikke hackathon for at lære mere om detaljerne.

En af de største, verdensomspændende hackathons er målrettet mod universitetsstuderende. Det er Microsoft Imagine Cup. Vindere af Imagine Cup kan vinde mentorskab fra Satya Nadella (Microsoft CEO), rejse til verdensmesterskabet og modtage Azure-tilskud og $ 100.000.

Deltagelse i hackathons kan være en fantastisk måde at blive introduceret til en ny teknologi. Målet er ikke at designe og implementere et slutprodukt, men snarere at hacke bits og stykker sammen for at komme videre med en idé, du har. Slutproduktet skal se mere ud som en prototype end en poleret applikation. Ofte har hackathons mentorer, der kender en bestemt teknologi, som du kan lære af. Tænk på et hackathon som et dedikeret tidspunkt og sted at eksperimentere og lære.

Selvom at deltage i et formelt hackathon vil give dig mentorer, et rum og nogle gange præmier, kan du også altid sammen med venner og gøre en på egen hånd! Vælg bare et tidspunkt, et sted og et mål, og prøv at hacke sammen en prototype af en idé, du har! Det skader ikke at give det et skud!

Store konferencer for softwareudviklere

En større konference har en tendens til at være stor og trække deltagere fra hele landet, hvis ikke verden. Deltagere tæller ofte i tusinder. Deltagelse på en af ​​disse konferencer kræver lidt mere planlægning foran. Det er ikke kun at arrangere din flyrejse og hotel. Disse konferencer har en tendens til at have mange numre, så for en given tidsperiode er du muligvis nødt til at vælge, hvilken tale du vil se fra fem eller flere samtaler på samme tid.

Ligesom en regional konference tilbyder store konferencer ofte en række workshop-tilbud før eller efter konferencen. Foruden workshops inkluderer mange også hands on labs under konferencen. Labs er normalt inkluderet i prisen på konferencen og giver en stor chance for faktisk at prøve de teknologier, du hører om på konferencen.

Mange af disse konferencer kastes af store teknologiselskaber, såsom Microsofts Build-konference og Apples WWDC.

Et par eksempler inkluderer

  • Oscon: Portland, Oregon Byg: placering ændres hvert år WWDC: San Francisco, Californien

GitHub Universe

GitHub Universe er flagskibskonferencen for GitHub. Det afholdes årligt i byen, hvor GitHubs hovedkvarter ligger, San Francisco, Californien. Konferencen afholdes normalt i efteråret omkring oktober eller november.

Som GitHub beskriver det,


GitHub Universe er en konference for bygherrer, planlæggere og ledere, der definerer fremtiden for software.

Denne konference er hvor GitHub typisk fremsætter sine største annoncer for året i løbet af hovedtonerne. Det tiltrækker kendte højttalere fra prominente softwarevirksomheder.

I 2018 havde konferencen omkring 1.800 deltagere, der deltog i tre spor af foredrag. Omkostningerne ved konferencen er rimelige, omkring $ 99 per person eller $ 199, hvis du også deltager i workshops.

GitHub Satellite

GitHub-satellitkonferencerne er en udskiftning af GitHub Universum. De bringer en GitHub-universalkonference til steder rundt omkring i verden.

Afholdt en gang om året er tidligere satellitter blevet afholdt steder som Berlin, Tokyo og London.

GitHub Constellation

GitHub Constellation er en række små samfundsbegivenheder, der afholdes flere gange om året rundt om i verden. Disse begivenheder fokuserer på lokalsamfundet og indeholder ofte talere, der er lokale i området. De er typisk frie og forekommer over en eller to aftener. De er ikke heldagskonferencer som satellit og univers.

Git Merge

Git Merge, er en konference sponsoreret af GitHub, men fokuseret på Git-versionskontrolværktøjet og de mennesker, der bruger det hver dag. Som GitHub udtrykker det,


Gennem tekniske sessioner og praktiske workshops vil udviklere og teams på alle erfaringsniveauer finde nye måder at bruge, bygge videre på og skalere Git på.

Konferencen indeholder en forhåndskonference praktikdag med workshops, der fokuserer på en række Git-emner. Denne konference er fantastisk at lære mere om Git og forbedre dine Git-færdigheder.

  1. Webdesign og udviklingThe GitHub Marketplace

Af Sarah Guthals

Mange værktøjer udvider eller integreres med GitHub. En god måde at finde værktøjer til brug med GitHub er GitHub Marketplace. GitHub Marketplace er et bibliotek med værktøjer og apps, der er grupperet i følgende kategorier:

  • Snak Kode kvalitet Kode gennemgang Kontinuerlig integration Afhængighedsstyring Deployment Læring Lokalisering Mobil Overvågning Projektledelse Forlagsvirksomhed Nylig tilføjet Sikkerhed Support Test Hjælpeprogrammer

Markedspladsen er en fantastisk måde at finde en app til enhver situation på GitHub. At købe eller installere apps gennem Marketplace har to vigtige fordele: lethed med fakturering og installation og godkendelsesprocessen.

Fakturering er let på GitHub Marketplace

For apps i GitHub Marketplace, der kræver betaling, er installation af appen via Marketplace en strømlinet strøm, fordi du kan bruge dine GitHub-betalingsinfo. På den måde har du ikke noget at gøre med fem forskellige betalingsudbydere, når du køber fem forskellige apps, der skal bruges med GitHub.

Hvis du har en gratis GitHub-konto, har du muligvis ikke konfigureret dine betalingsoplysninger i GitHub. Hvis du vil konfigurere en betalingsmetode, skal du klikke på din avatar i øverste højre hjørne af GitHub.com og klikke på Indstillinger. Fra denne side skal du klikke på Fakturering fra listen til venstre. Her kan du klikke på Tilføj betalingsmetode, som vist.

GitHub-faktureringsformular

GetHub Marketplace-godkendelsesprocessen

En af fordelene ved at installere en applikation fra Marketplace er, at disse apps skal opfylde visse krav, før GitHub viser dem på Marketplace. Kravene hjælper med at sikre en højere standard for kvalitet og sikkerhed med apps; hjælper med at sikre, at disse apps er nyttige (ingen Fart-apps) og er sikre.

I øjeblikket kræver en GitHub-handling ingen revision, der skal vises på GitHub Marketplace, hvilket betyder, at installation af en handling fra en, du ikke kender, kan være en smule mere risikofyldt.

En app skal opfylde fire hovedkategorier af krav, før den vises på Markedspladsen:

  • Brugeroplevelse: Dette korte sæt på ni krav inkluderer ting som appen skal have et vist antal brugere og installerer allerede. Det inkluderer også nogle krav omkring appens opførsel, såsom appen skal indeholde links til dokumentation, den kan ikke aktivt overtale brugerne væk fra GitHub, og den skal give værdi til kunderne. Mærke og liste: Dette sæt retningslinjer og anbefalinger er centreret omkring branding af din app og din apps liste. Hver app skal indeholde sit eget logo. Hvis appen bruger GitHubs logo, skal den følge GitHubs logoer og brugsretningslinjer. Afsnittet med mærke og liste på siden Krav har links til yderligere retningslinjer for logo og beskrivelse. Som du kan se, tager GitHub en liste over apps på markedspladsen alvorligt. Sikkerhed: GitHub foretager en sikkerhedsgennemgang af apps, før de vises på markedet. Et separat dokument med sikkerhedspraksis og flere detaljer om sikkerhedsgennemgangen er tilgængeligt. Faktureringsstrømme: Hver app på Marketplace skal integrere faktureringsstrømme ved hjælp af webhook-begivenheden GitHub Marketplace. Dette krav sikrer, at folk kan købe et abonnement på din app og annullere det abonnement med de betalingsinfo, de allerede har på filen hos GitHub. Det sikrer også, at ændringer, der er foretaget gennem GitHub, afspejles straks på appens eget websted.

Sådan vises din app på GitHub Marketplace

At få din egen app vist på Marketplace kan øge den potentielle målgruppe til din ansøgning. En liste over din app kræver dog, at den opfylder GitHub's krav og modtager godkendelse.

For at starte processen med at liste en app skal du klikke på linket Send dit værktøj til gennemgang nederst på markedspladsens destinationsside eller navigere til den nye side på GitHub markedsplads i din browser.

Denne side viser dine applikationer, som du kan omdanne til Marketplace-oversigter, som vist i følgende figur.

GitHub-appfortegnelser

Klik på Opret kladdeliste ved siden af ​​den app, du vil liste på Markedspladsen, for at starte processen. Dette fører dig til en side, hvor du kan indtaste et navn til fortegnelsen og vælge en af ​​markedskategorierne til din app, som vist.

GitHub-appformular

Hvis du gemmer udkastet til din fortegnelse, men tilfældigvis lukker din browser, kan du vende tilbage til din fortegnelse i din browser.

Når du har udfyldt disse oplysninger, skal du klikke på Gem og tilføje flere detaljer for at gemme et udkast til din fortegnelse og gå videre til det næste sæt trin, som vist.

GitHub Marketplace indsendelse

Disse trin inkluderer

  1. Tilføj dine kontaktoplysninger. Denne info er et sæt af tre e-mail-adresser: Teknisk kundeemne, marketingledelse og finansiel kundeemne. Udfyld din fortegnelsesbeskrivelse. Dette område er, hvor du udfylder flere detaljer, såsom en produktbeskrivelse, logo og skærmbilleder. Oplysningerne her vises på Marketplace-siden til din ansøgning. Opret planer og priser. Det er her du kan oprette en eller flere prisplaner, inklusive muligheden for at oprette en gratis plan, en månedlig plan eller en månedlig pr. Brugerplan. Du kan også specificere, om en plan inkluderer en 14-dages gratis prøveperiode. Indstil webhook. Dette trin giver dig mulighed for at specificere en URL, hvor Marketplace-begivenheder vil blive sendt via en HTTP POST-anmodning. Webhooken sender dig information om begivenheder, såsom køb, aflysninger og ændringer som opgraderinger og nedgraderinger. Accepter Marketplace-udvikleraftalen. For at få vist din app på markedet, skal du acceptere Marketplace-udvikleraftalen. Klik på knappen Indsend til gennemgang. GitHub-medarbejdere gennemgår din indsendelse for at sikre, at den opfylder kravene, der skal vises på Marketplace.

Overvej almindelige apps, der skal installeres

Her er nogle af de mest almindelige og nyttige GitHub-apps, som du måske ønsker at overveje at installere.

Kontinuerlig integration

Kontinuerlig integration (CI) -apper bygger og tester automatisk din kode, hver gang du skubber den til GitHub. Hvis du har en CI-app, såsom AppVeyor, installeret på dit arkiv, vil du se status for kontrollen i bunden af ​​hver pull-anmodning, som vist.

GitHub AppVeyor CI

Hvis du er ejeren af ​​depotet, kan du også angive, om der skal gå kontrol, før grenen kan slås sammen i mastergrenen. Bare gå ind på fanen Indstillinger. Hvis du allerede har nogen regler for mastergrenen, skal du klikke på rediger; Ellers skal du klikke på Tilføj regel. Derfra kan du rulle ned og vælge Kræv statuscheck for at passere, før de fusioneres.

Kode kvalitet

Appkvalitet apps gennemgår automatisk din kode med stil, kvalitet, sikkerhed og test-dækningskontrol. Disse apps kan være virkelig nyttige til at sikre, at din kode holdes til en høj standard. Med veludstyret og kvalitetskode har du mindre sandsynlighed for at introducere eller gå glip af fejl. Hvis du f.eks. Kræver, at alle krøllede seler er på nye linjer og indrykket med en fane pr. Indlejret klammeparentes, er du sandsynligvis i stand til at se, når noget er forkert. For eksempel kontrollerer Rubocop stilen på din Ruby-kode, mens den er ved at bygge, og giver dig stilfeedback, f.eks. Hus til metodenavne.

En anden nyttig type apps med kodekvalitet er apps til kodedækning, såsom Codecov. Vist i følgende figur kommenterer Codecov og apps, som det kommenterer pull-anmodninger med hvor meget af koden, der er dækket af testscenarier, hvilket hjælper med at sikre, at din kode forbliver godt testet.

GitHub Codecov-app

Lokalisering

Lokaliseringsapps kan gøre det lettere at offentliggøre din app på mange sprog. F.eks. Forbinder Crowdin-appen dit depot til en Crowdin-konto, hvor mennesker fra hele verden kan hjælpe dig med at oversætte din dokumentation og eventuelle skriftlige ord i din software (for eksempel på knapper eller i menuer). Med mere end 20.000 mennesker, der bidrager til oversættelser, åbner Crowdin-appen automatisk en pull-anmodning på dit arkiv med nye oversættelser, når den har nået en tærskel for nøjagtighed, hvilket stadig giver dig en chance for at gennemgå og flette. For open source-projekter er Crowdin gratis!

Overvågning

Overvågning af apps hjælper med at måle ydeevne, spore fejl og spore afhængigheder i din kode. For eksempel er Greenkeeper en app i realtid, der giver dig opdateringer og ændringer til JavaScript-afhængigheder. Dette figur viser Greenkeeper i aktion og åbner en pull-anmodning om at opdatere eslint til den nyeste version.

GitHub Greenkeeper-app

Afhængighedsstyring

Moderne appudvikling i dag er stærkt afhængig af offentlige pakkeadministratorer til at trække ind og styre afhængigheder. En typisk app kan have snesevis, hvis ikke hundreder, afhængigheder. Det kan være vanskeligt at spore, hvilke af disse afhængigheder er opdaterede. Github-apps som Dependabot-kontrol for at sikre dig, at dine afhængigheder er ajourførte og indsende pull-anmodninger for at opdatere dem, der ikke er.

Nogle gange vil du ikke have alle dine afhængigheder af et offentligt pakkeregister. For eksempel, hvis du arbejder i en virksomhed, har du muligvis interne pakker, der skal forblive private. Et privat pakkeregistreringsværktøj, såsom MyGet, er nyttigt i dette tilfælde. MyGet arbejder med NuGet-pakker og giver dig mulighed for at oprette en politik, hvor skubning til en bestemt gren vil starte en build og filialen vil blive distribueret til et tilpasset NuGet-feed, der er hostet på MyGet.

Test

Testning af software er en vigtig del af softwareudviklingen livscyklus. Gode ​​testere udvikler testplaner for at sikre, at testere gør et godt stykke arbejde med at teste hver udgivelse. At styre testplaner og holde styr på status for testkørsler er en vigtig del af kvalitetssikring. TestQuality-appen integreres med GitHub til at hjælpe udviklere og testere med at oprette, køre, koordinere og overvåge softwaretestopgaver.

Læring

En god måde at lære GitHub på er at installere GitHub Learning Lab fra markedspladsen. Installation af Learning Lab installerer en bot, der leder dig gennem interaktive lektioner om, hvordan du bruger GitHub gennem et sæt opgaver, du udfører. Laboratoriet er gratis og giver dig mulighed for at tage så mange kurser, som du vil i dit eget tempo.