Øvelse – Last opp prosjektet til GitHub
Du kan importere repositorier til GitHub ved hjelp av GitHub Importer, kommandolinjen eller eksterne overføringsverktøy.
Om GitHub Importer
Hvis du har kildekode i Subversion, Registrator, Team Foundation Version Control (TFVC) eller et annet Git-repositorium, kan du flytte det til GitHub ved hjelp av GitHub Importer. GitHub Importer er et verktøy som raskt importerer kildekoderepositorier, inkludert utføringer og revisjonslogg, til GitHub for deg.
Under en import, avhengig av versjonskontrollsystemet du importerer fra, kan du utføre noen av følgende oppgaver. Godkjenn med det eksterne repositoriet, utfør redigeringsattributt for oppdatering, importer repositorier med store filer eller fjern store filer hvis du ikke vil bruke Git Large File Storage.
| Importhandling | Subversion | Mercurial | TFVC | Git |
|---|---|---|---|---|
| Godkjenne med eksternt repositorium | X | X | X | X |
| Attributtet Oppdater utføringsforfatter | X | X | X | |
| Flytte store filer til Git Store fillagring | X | X | X | |
| Fjerne store filer fra repositoriet | X | X | X |
Importere et repositorium med GitHub Importer
Hvis du har et prosjekt som driftes på et annet versjonskontrollsystem, kan du automatisk importere det til GitHub ved hjelp av GitHub Importer-verktøyet. GitHub Importer passer ikke for alle importer. Hvis den eksisterende koden for eksempel driftes på et privat nettverk, får ikke verktøyet tilgang til den. I slike tilfeller anbefaler vi at du importerer ved hjelp av kommandolinjen for Git-repositorier eller et eksternt kildekodeoverføringsverktøy for prosjekter importert fra andre versjonskontrollsystemer.
Hvis du vil samsvare med utføringene i repositoriet til forfatternes GitHub-brukerkontoer under importen. Først må du kontrollere at alle bidragsytere til repositoriet har en GitHub-konto før du begynner importen.
Repositorier og individuelle filer er underlagt størrelsesbegrensninger. Hvis du vil ha mer informasjon, kan du se Om store filer på GitHub.
Følg disse trinnene for å importere et repositorium:
Velg +øverst til høyre på en side, og velg deretter Importer repositorium.
Skriv inn nettadressen for prosjektet du vil importere, under «Det gamle repositoriets klonenettadresse».
Velg brukerkontoen eller en organisasjon for å eie repositoriet, og skriv deretter inn et navn for repositoriet på GitHub.
Angi om det nye repositoriet skal være offentlig eller privat. Hvis du vil ha mer informasjon, kan du se Angi synlighet for repositorium.
Se gjennom informasjonen du skrev inn, og velg deretter Start import.
Hvis det gamle prosjektet var beskyttet av et passord, skriver du inn påloggingsinformasjonen for prosjektet, og deretter velger du Send inn.
Hvis det er flere prosjekter som driftes på det gamle prosjektets klonenettadresse, velger du prosjektet du vil importere, og deretter velger du Send inn.
Hvis prosjektet inneholder filer som er større enn 100 MB, velger du om du vil importere de store filene ved hjelp av Git Large File Storage, og deretter velger du Fortsett.
Når repositoriet er fullstendig importert, mottar du en e-postmelding.
Oppdaterer utføringsforfatterattributt med GitHub Importer
Under en import kan du sammenligne utføringer i repositoriet med GitHub-kontoen til utføringsforfatteren. GitHub Importer ser etter GitHub-brukere med e-postadresser som samsvarer med forfatterne av utføringene i repositoriet du importerer. Deretter kan du koble en forpliktelse til forfatteren ved hjelp av e-postadressen eller forfatterens GitHub-brukernavn.
Oppdaterer utføringsforfattere
Følg disse trinnene for å oppdatere en utføringsforfatter:
Når du har importert repositoriet, velger du Tilordne forfatterepå importstatussiden.
Velg Koble tilved siden av forfatteren du vil oppdatere.
Skriv inn e-postadressen eller GitHub-brukernavnet til forfatteren, og trykk deretter på Enter.
Attributter forplikter seg til en GitHub-bruker med en offentlig e-postadresse
Hvis en forfatter av en utføring i det importerte repositoriet har en GitHub-konto som er knyttet til e-postadressen de brukte til å redigere utføringene, og de ikke angi e-postadressen for utføring som privat. Deretter samsvarer GitHub Importer med e-postadressen som er knyttet til forpliktet til den offentlige e-postadressen som er knyttet til Deres GitHub-konto, og tilskriver forpliktet til GitHub-kontoen.
Attributter forplikter seg til en GitHub-bruker uten en offentlig e-postadresse
Hvis forfatteren av en utføring i det importerte repositoriet ikke angir en offentlig e-postadresse på GitHub-profilen, eller angi e-postadressen for utføring som privat. GitHub Importer kan kanskje ikke samsvare med e-postadressen som er knyttet til utføringen med GitHub-kontoen.
Utføringsforfatteren kan løse dette problemet ved å angi e-postadressen som privat. Deres forpliktelser tilskrives deretter <username>@users.noreply.github.com, og de importerte utføringene er knyttet til Deres GitHub-konto.
Attributter som utføres ved hjelp av en e-postadresse
Hvis forfatterens e-postadresse ikke er knyttet til GitHub-kontoen, kan de legge til adressen i kontoen etter importen, og utføringene vil bli riktig tilskrevet.
Hvis forfatteren ikke har en GitHub-konto, tilskriver GitHub Importer sine forpliktelser til e-postadressen som er knyttet til utføringene.
Importere et GitHub-repositorium ved hjelp av kommandolinjen
Hvis GitHub Importer ikke passer for dine formål, for eksempel hvis den eksisterende koden driftes på et privat nettverk, anbefaler vi at du importerer ved hjelp av kommandolinjen.
Før du begynner, må du kontrollere at du vet:
- GitHub-brukernavnet ditt
- Klone-NETTADRESSEn for det eksterne repositoriet, for eksempel
https://external-host.com/user/repo.gitellergit://external-host.com/user/repo.git(kanskje med enuser@foran domenenavnetexternal-host.com)
For demonstrasjonsformål bruker vi:
- En ekstern konto med navnet ext-user
- En ekstern Git-vert med navnet
https://external-host.com - En Personlig GitHub-brukerkonto med navnet ghuser
- Et repositorium på GitHub.com kalt repo.git
Følg disse trinnene for å importere det eksterne repositoriet:
Opprett et nytt repositorium på GitHub. Du importerer det eksterne Git-repositoriet til dette nye repositoriet.
Lag en "bare" klone av repositoriet ved hjelp av url-adressen for ekstern klone. Skriv inn følgende kommando på kommandolinjen. Denne kommandoen oppretter en fullstendig kopi av dataene, men uten en arbeidskatalog for redigering av filer, og sikrer en ren, fersk eksport av alle de gamle dataene.
$ git clone --bare https://external-host.com/ext-user/repo.git #Makes a bare clone of the external repository in a local directorySkyv det lokalt klonede repositoriet til GitHub ved hjelp av alternativet Speil, som sikrer at alle referanser, for eksempel grener og merker, kopieres til det importerte repositoriet.
$ cd repo.git $ git push --mirror https://github.com/ghuser/repo.git #Pushes the mirror to the new repository on GitHub.comFjern det midlertidige lokale repositoriet.
$ cd .. $ rm -rf repo.git
Legge til lokalt vertsbasert kode i GitHub
Hvis du har eksisterende kildekode eller repositorier lagret lokalt på datamaskinen eller det private nettverket, kan du legge dem til i GitHub ved å skrive inn kommandoer i en terminal. Enten ved å skrive git-kommandoer direkte, eller ved hjelp av GitHub CLI.
GitHub CLI er et åpen kildekode-verktøy for bruk av GitHub fra datamaskinens kommandolinje. GitHub CLI kan forenkle prosessen med å legge til et eksisterende prosjekt i GitHub ved hjelp av kommandolinjen. Hvis du vil lære mer om GitHub CLI, kan du se Om GitHub CLI.
Legge til et lokalt repositorium i GitHub med GitHub CLI
Følg disse trinnene for å legge til et lokalt repositorium med GitHub CLI:
Gå til rotkatalogen for prosjektet i kommandolinjen.
Initialiser den lokale katalogen som et Git-repositorium.
git init -b mainFase og utføre alle filene i prosjektet.
git add . && git commit -m "initial commit"Hvis du vil opprette et repositorium for prosjektet på GitHub, bruker du
gh repo create subcommand. Når du blir bedt om det, velger du Sende et eksisterende lokalt repositorium til GitHub og skrive inn ønsket navn for repositoriet. Hvis du vil at prosjektet skal tilhøre en organisasjon i stedet for brukerkontoen, angir du organisasjonsnavnet og prosjektnavnet medorganization-name/project-name.Følg de interaktive ledetekstene. Hvis du vil legge til fjernkontrollen og skyve repositoriet, må du bekrefte ja når du blir bedt om å legge til fjernkontrollen og sende utføringene til gjeldende gren.
Hvis du vil hoppe over alle ledetekstene, kan du angi banen til repositoriet med flagget
--sourceog sende et synlighetsflagg (--public,--privateeller--internal). For eksempelgh repo create --source=. --public. Angi en fjernkontroll med flagget--remote. Hvis du vil sende dine forpliktelser, sender du--pushflagget. Hvis du vil ha mer informasjon om mulige argumenter, kan du referere til GitHub CLI-håndboken.
Legge til et lokalt repositorium i GitHub ved hjelp av Git
Følg disse trinnene for å legge til et lokalt repositorium ved hjelp av Git:
Opprett et nytt repositorium på GitHub.com. Hvis du vil unngå feil, må du ikke initialisere det nye repositoriet med README, lisens eller
gitignore files. Du kan legge til disse filene etter at prosjektet er sendt til GitHub.
Åpne Git Bash.
Endre gjeldende arbeidskatalog til det lokale prosjektet.
Initialiser den lokale katalogen som et Git-repositorium.
$ git init -b mainLegg til filene i det nye lokale repositoriet. Denne kommandoen faser dem også for den første utførelsen.
$ git add . # Adds the files in the local repository and stages them for commit. To unstage a file, use 'git reset HEAD YOUR-FILE'.Utfør filene som er iscenesatt i det lokale repositoriet.
$ git commit -m "First commit" # Commits the tracked changes and prepares them to be pushed to a remote repository. To remove this commit and modify the file, use 'git reset --soft HEAD~1' and commit and add the file again.Øverst i repositoriet på hurtigoppsettsiden for GitHub.com velger du Kopier-knappen for å kopiere url-adressen for eksternt repositorium.
I ledeteksten du legge til URL-adressen for det eksterne repositoriet. Det lokale repositoriet sendes til denne plasseringen.
$ git remote add origin <REMOTE_URL> # Sets the new remote $ git remote -v # Verifies the new remote URLFlytt endringene i det lokale repositoriet til GitHub.com.
$ git push origin main # Pushes the changes in your local repository up to the remote repository you specified as the origin
Overføringsverktøy for kildekode
Du kan bruke eksterne verktøy til å flytte prosjektene til GitHub. Vi anbefaler at du bruker GitHub Importer- til å importere prosjekter fra Subversion, Registrator, Team Foundation Version Control (TFVC) eller et annet Git-repositorium. Du kan også bruke disse eksterne verktøyene til å konvertere prosjektet til Git.
Importerer fra underversjon
I et vanlig delversjonsmiljø lagres flere prosjekter i et enkelt rotrepositorium. På GitHub tilordnes vanligvis hvert av disse prosjektene til et separat Git-repositorium for en brukerkonto eller organisasjon. Vi foreslår at du importerer hver del av underversjonsrepositoriet til et eget GitHub-repositorium hvis:
- Samarbeidspartnere må sjekke ut eller forplikte seg til den delen av prosjektet separat fra de andre delene
- Du vil at ulike deler skal ha sine egne tilgangstillatelser
Vi anbefaler disse verktøyene for å konvertere underversjonsrepositorier til Git:
Importering fra 100000000
Vi anbefaler hg-fast-export for å konvertere Anime repositories til Git.
Importerer fra TFVC
Vi anbefaler git-tfs for å flytte endringer mellom TFVC og Git.
Hvis du vil ha mer informasjon om hvordan du flytter fra TFVC (et sentralisert versjonskontrollsystem) til Git, kan du se Overføre til Git fra sentralisert versjonskontroll.