Codespace-livscyklussen

Fuldført

GitHub Codespaces kan konfigureres, så du kan oprette et tilpasset udviklingsmiljø til dit projekt. Ved at konfigurere et brugerdefineret udviklingsmiljø for dit projekt kan du have en gentagelig Codespace-konfiguration for alle brugere af projektet.

Et Codespaces livscyklus begynder, når du opretter et Codespace og slutter, når du sletter det. Du kan afbryde forbindelsen til og genoprette forbindelsen til et aktivt kodeområde uden at påvirke dets kørende processer. Du kan stoppe og genstarte et Codespace uden at miste de ændringer, du foretager i projektet.

Diagram over en cirkulær livscyklus for et Codespace, der starter med oprettelse og slutter med sletning.

Opret et kodeområde

Du kan oprette et Codespace på GitHub.com, i Visual Studio Code eller ved gitHub-kommandolinjegrænsefladen. Der er fire måder at oprette et kodeområde på:

  • Fra en GitHub-skabelon eller et hvilket som helst skabelonlager på GitHub.com for at starte et nyt projekt.
  • Fra en forgrening i dit lager for at få arbejde med nye funktioner.
  • Fra en åben pullanmodning til at udforske igangværende arbejde.
  • Fra en bekræftelse i et lagers historik til at undersøge en fejl på et bestemt tidspunkt.

Du kan midlertidigt bruge et Codespace til at teste kode, eller du kan vende tilbage til det samme Codespace for at arbejde på funktionsarbejde, der har kørt i lang tid.

Du kan oprette mere end ét Codespace pr. lager eller endda pr. forgrening. Der er dog grænser for antallet af Codespaces, du kan oprette og køre på samme tid. Når du når det maksimale antal codespaces og forsøger at oprette et andet, vises der en meddelelse. Meddelelsen fortæller dig, at et eksisterende Codespace skal fjernes/slettes, før der kan oprettes et nyt Codespace.

Du kan oprette et nyt Codespace, hver gang du udvikler i GitHub Codespaces, eller du kan beholde et kodeområde, der har kørt i lang tid, for en funktion. Hvis du starter et nyt projekt, skal du oprette et codespace ud fra en skabelon og publicere det i et lager på GitHub senere.

Når du opretter et nyt Codespace, hver gang du arbejder på et projekt, skal du jævnligt pushe dine ændringer for at sikre, at eventuelle nye bekræftelser er på GitHub. Når du bruger et kodeområde, der har kørt i lang tid, til et nyt projekt, skal du trække fra lagerets standardforgrening, hver gang du begynder at arbejde i Codespace for at gøre det muligt for dit miljø at få de seneste bekræftelser. Arbejdsprocessen svarer til at arbejde med et projekt på en lokal computer.

Lageradministratorer kan aktivere GitHub Codespaces-præbuilds for et lager for at fremskynde oprettelsen af kodeområdet.

Du kan finde en detaljeret gennemgang og trinvis vejledning i de ressourcer, der kaldes En begyndervejledning til at lære at kode med GitHub Codespaces og Udvikling i et Codespace placeret i oversigtsmodulet sidst i dette modul.

Processen til oprettelse af kodeområde

Diagram over et GitHub-kodeområde, og hvordan det forbindes fra din kodeeditor og til en dockerobjektbeholder.

Når du opretter et GitHub Codespace, sker der fire processer:

  1. Der tildeles en virtuel maskine og et lager til dit Codespace.
  2. Der oprettes en objektbeholder.
  3. Der oprettes forbindelse til Codespace.
  4. Der oprettes en konfiguration efter oprettelsen.

Gem ændringer i et kodeområde

Når du opretter forbindelse til et codespace via internettet, aktiveres Automatisk lagring automatisk for at gemme ændringer, når en bestemt tidsperiode er gået. Når du opretter forbindelse til et Codespace via Visual Studio Code, der kører på skrivebordet, skal du aktivere Automatisk lagring.

Dit arbejde gemmes på en virtuel maskine i cloudmiljøet. Du kan lukke og stoppe et Codespace og vende tilbage til det gemte arbejde på et senere tidspunkt. Hvis du har ændringer, der ikke er gemt, modtager du en meddelelse om at gemme dem, før du afslutter. Men hvis dit Codespace slettes, går dit arbejde tabt. Hvis du vil gemme dit arbejde, skal du bekræfte dine ændringer og sende dem til dit fjernlager eller publicere dit arbejde til et nyt, hvis du har oprettet dit Codespace ud fra en skabelon.

Åbn et eksisterende kodeområde

Du kan åbne alle dine aktive eller standsede Codespaces igen på GitHub.com, i en JetBrains IDE, i Visual Studio Code eller ved hjælp af Kommandolinjegrænsefladen for GitHub.

Hvis du vil genoptage et eksisterende Codespace, kan du gå til det lager, hvor kodeområdet findes, vælge ,-nøglen og derefter vælge Fortsæt dette kodeområde. Du kan også åbne https://github.com/codespaces i browseren, vælge lageret og derefter vælge det eksisterende kodeområde.

Timeout for et kodeområde

Hvis et Codespace er inaktivt, eller hvis du afslutter dit Codespace uden eksplicit at stoppe, får programmet timeout efter en periode med inaktivitet og holder op med at køre. Standardtimeouten er efter 30 minutters inaktivitet. Når der opstår timeout for et Codespace, gemmes dine data, fra sidste gang dine ændringer blev gemt.

Internetforbindelse under brug af GitHub Codespaces

Et Codespace kræver en internetforbindelse. Hvis forbindelsen til internettet går tabt, mens du arbejder i et Codespace, kan du ikke få adgang til dit Codespace. Alle ændringer, der ikke er gemt, gemmes dog. Når du genopretter internetforbindelsen, kan du få adgang til Codespace i samme tilstand, som den blev tilbage i, da forbindelsen gik tabt.

Hvis du har en ustabil internetforbindelse, skal du ofte bekræfte og pushe dine ændringer.

Luk eller stop et kodeområde

Hvis du afslutter Codespace uden at køre stopkommandoen eller lader Codespace køre uden interaktion, fortsætter Codespace og dets kørende processer i timeoutperioden for inaktivitet. Standardtimeoutperioden for inaktivitet er 30 minutter. Du kan definere din personlige timeoutindstilling for de Codespaces, du opretter, men en organisations timeoutpolitik kan tilsidesætte indstillingen.

Der påløber kun CPU-gebyrer for kørsel af Codespaces. Der påløber kun lageromkostninger for et stoppet Codespace.

Du kan stoppe og genstarte et Codespace for at anvende ændringer. Hvis du f.eks. ændrer den computertype, der bruges til codespace, skal du stoppe og genstarte den, før ændringen træder i kraft. Når du lukker eller stopper kodeområdet, bevares alle ændringer, der ikke er gemt, indtil du opretter forbindelse til kodeområdet igen.

Du kan også stoppe Codespace og vælge at genstarte eller slette det, hvis du støder på en fejl eller noget uventet.

Byg et kodeområde igen

Du kan genopbygge kodeområdet for at implementere ændringer i konfigurationen af udviklerobjektbeholderen. Til de fleste formål kan du oprette et nyt Codespace som et alternativ til at genopbygge et Codespace. Når du genopbygger dit Codespace, fremskynder billeder fra cachen genopbygningsprocessen. Du kan også udføre en komplet genopbygning for at rydde cachen og genopbygge objektbeholderen med nye billeder.

Når du genopbygger objektbeholderen i et Codespace, ryddes de ændringer, du har foretaget uden for den /workspaces mappe. De ændringer, du har foretaget i /workspaces mappe, herunder klonen af det lager eller den skabelon, du oprettede Codespace fra, bevares over en genopbygning.

Slet et kodeområde

Du kan oprette et kodeområde for en bestemt opgave. Når du har skubbet dine ændringer til en ekstern forgrening, kan du trygt slette det pågældende Codespace.

Hvis du forsøger at slette et Codespace med ikke-angivne git-bekræftelser, giver editoren dig besked om, at du har ændringer, der endnu ikke er pushet til en ekstern forgrening. Du kan pushe de ønskede ændringer og derefter slette dit Codespace. Du kan også fortsætte med at slette dit Codespace og eventuelle ændringer, der ikke er gemt, eller eksportere koden til en ny forgrening uden at oprette et nyt kodeområde.

Stopkodeområder, der forbliver inaktive i et angivet tidsrum, slettes automatisk. Inaktive codespaces slettes efter 30 dage, men du kan tilpasse dine Codespace-opbevaringsintervaller.