Gyakorlat – A saját projekt feltöltése a GitHubra
Adattárakat importálhat a GitHubra a GitHub Importer, a parancssor vagy a külső migrálási eszközök használatával.
A GitHub Importer ismertetése
Ha a Subversion, a Mercurial, a Team Foundation Version Control (TFVC) vagy egy másik Git-adattár forráskódja van, a GitHub Importer használatával áthelyezheti azt a GitHubra. A GitHub Importer egy olyan eszköz, amely gyorsan importálja a forráskódtárakat, beleértve a véglegesítéseket és a változatelőzményeket is a GitHubra.
Az importálás során az importálandó verziókövetési rendszertől függően az alábbi feladatok némelyikét hajthatja végre. Hitelesítés a távoli adattárral, a véglegesítés szerzőjének hozzárendelésének frissítése, az adattárak importálása nagy fájlokkal, vagy nagy fájlok eltávolítása, ha nem szeretné használni a Git Large File Storage-t.
| Importálási művelet | Felforgatás | Merkúrral kapcsolatos | TFVC | Git (verziókezelő rendszer) |
|---|---|---|---|---|
| Hitelesítés távoli adattárral | X | X | X | X |
| Véglegesítés szerző-hozzárendelésének frissítése | X | X | X | |
| Nagyméretű fájlok áthelyezése a Git Large File Storage-ba | X | X | X | |
| Nagyméretű fájlok eltávolítása az adattárból | X | X | X |
Adattár importálása a GitHub-importálóval
Ha egy projekt egy másik verziókövetési rendszeren fut, automatikusan importálhatja azt a GitHubra a GitHub Importer eszközzel. A GitHub Importer nem minden importhoz alkalmas. Ha például a meglévő kód magánhálózaton van üzemeltetve, az eszköz nem tudja elérni. Ezekben az esetekben javasoljuk, hogy a Git-adattárak parancssorával vagy egy külső forráskód-migrálási eszközzel importálja a más verziókövetési rendszerekből importált projekteket.
Ha meg szeretné egyezni az adattárban lévő véglegesítéseket a szerzők GitHub-felhasználói fiókjával az importálás során. Először győződjön meg arról, hogy az adattár minden közreműködője rendelkezik GitHub-fiókkal az importálás megkezdése előtt.
Az adattárakra és az egyes fájlokra méretkorlátozás vonatkozik. További információt a GitHubon található nagyméretű fájlokról szóló cikkben talál.
Adattár importálásához kövesse az alábbi lépéseket:
A lap jobb felső sarkában válassza az +Importálás, majd az Adattár importálása lehetőséget.
A "Régi adattár klón URL-címe" mezőbe írja be az importálni kívánt projekt URL-címét.
Válassza ki a felhasználói fiókját vagy egy szervezetet az adattár tulajdonosának, majd írja be az adattár nevét a GitHubon.
Adja meg, hogy az új adattárnak nyilvánosnak vagy privátnak kell-e lennie. További információkért tekintse meg a Beállítás adattár láthatóságát.
Tekintse át a megadott adatokat, majd válassza az Importálás indítása lehetőséget.
Ha a régi projektet jelszó védi, írja be a projekt bejelentkezési adatait, majd válassza a Küldés lehetőséget.
Ha a régi projekt klón URL-címén több projekt is fut, válassza ki az importálni kívánt projektet, majd válassza a Küldés lehetőséget.
Ha a projekt 100 MB-nál nagyobb fájlokat tartalmaz, válassza ki, hogy a nagyméretű fájlokat a Git Large File Storage használatával szeretné-e importálni, majd válassza a Folytatás lehetőséget.
Az adattár teljes importálása után e-mailt kap.
Véglegesítési szerző hozzárendelésének frissítése a GitHub-importálóval
Az importálás során egyeztetheti az adattárban lévő véglegesítéseket a véglegesítés szerzőjének GitHub-fiókjával. A GitHub-importáló olyan GitHub-felhasználókat keres, akiknek az e-mail-címe megegyezik az importált adattárban lévő véglegesítések szerzőinek címével. Ezután csatlakoztathat egy véglegesítést a szerzőhöz az e-mail-címükkel vagy a szerző GitHub-felhasználónevével.
Véglegesítési szerzők frissítése
A véglegesítési szerző frissítéséhez kövesse az alábbi lépéseket:
Az adattár importálása után az importálási állapotlapon válassza a Szerzők egyeztetése lehetőséget.
Annak a szerzőnek a mellett, akinek az adatait frissíteni szeretné, válassza a Csatlakozás lehetőséget.
Írja be a szerző e-mail-címét vagy GitHub-felhasználónevét, majd nyomja le az Enter billentyűt.
Véglegesítések hozzárendelése nyilvános e-mail-címmel rendelkező GitHub-felhasználónak
Ha az importált adattárban egy véglegesítés szerzője rendelkezik a véglegesítés létrehozásához használt e-mail-címhez társított GitHub-fiókkal, és nem privátként állítja be a véglegesítési e-mail-címét. Ezután a GitHub Importer megegyezik a véglegesítéshez társított e-mail-címmel a GitHub-fiókhoz társított nyilvános e-mail-címhez, és a véglegesítést a GitHub-fiókjához rendeli.
Véglegesítések hozzárendelése nyilvános e-mail-cím nélküli GitHub-felhasználónak
Ha egy véglegesítés szerzője az importált adattárban nem állít be nyilvános e-mail-címet a GitHub-profiljában, vagy a véglegesítési e-mail-címét privátként állítja be. Előfordulhat, hogy a GitHub-importáló nem tudja egyeztetni a véglegesítéshez társított e-mail-címet a GitHub-fiókjával.
A véglegesítés szerzője úgy oldhatja meg ezt a problémát, hogy privátként állítja be az e-mail-címét. A rendszer ezután <username>@users.noreply.github.comhozzárendeli a véglegesítéseket, és az importált véglegesítések a GitHub-fiókjukhoz vannak társítva.
Véglegesítések hozzárendelése e-mail-címmel
Ha a szerző e-mail-címe nincs társítva a GitHub-fiókjával, az importálás után hozzáadhatja a címet a fiókjához , és a véglegesítések megfelelően lesznek hozzárendelve.
Ha a szerző nem rendelkezik GitHub-fiókkal, a GitHub Importer a véglegesítéseket a véglegesítésekhez társított e-mail-címhez rendeli.
GitHub-adattár importálása a parancssor használatával
Ha a GitHub Importer nem felel meg az Ön céljainak, például ha a meglévő kód magánhálózaton van tárolva, javasoljuk, hogy importálja a parancssort.
Mielőtt hozzákezd, győződjön meg arról, hogy a következőt tudja:
- A GitHub-felhasználóneve
- A külső adattár klónozási URL-címe, például
https://external-host.com/user/repo.gitvagygit://external-host.com/user/repo.git(esetleguser@aexternal-host.comtartománynév előtt)
A bemutatáshoz a következőt használjuk:
- Külső fiók neve ext-user
- Egy külső Git-gazdagép neve
https://external-host.com - Egy Ghuser nevű Személyes GitHub-felhasználói fiók
- A repo.git nevű GitHub.com adattára
A külső adattár importálásához kövesse az alábbi lépéseket:
Hozzon létre egy új adattárat a GitHubon. Importálja a külső Git-adattárat ebbe az új adattárba.
Hozzon létre egy "csupasz" klónt az adattárból a külső klón URL-címével. Írja be a következő parancsot a parancssorba. Ez a parancs létrehozza az adatok teljes másolatát, de nem rendelkezik munkakönyvtárral a fájlok szerkesztéséhez, és biztosítja a régi adatok tiszta, friss exportálását.
$ git clone --bare https://external-host.com/ext-user/repo.git #Makes a bare clone of the external repository in a local directoryA helyileg klónozott adattár leküldése a GitHubra a "tükör" beállítással, amely biztosítja, hogy az összes hivatkozás, például az ágak és címkék át legyenek másolva az importált adattárba.
$ cd repo.git $ git push --mirror https://github.com/ghuser/repo.git #Pushes the mirror to the new repository on GitHub.comTávolítsa el az ideiglenes helyi adattárat.
$ cd .. $ rm -rf repo.git
Helyileg üzemeltetett kód hozzáadása a GitHubhoz
Ha meglévő forráskódja vagy adattárai helyben vannak tárolva a számítógépen vagy a magánhálózaton, hozzáadhatja őket a GitHubhoz, ha parancsokat ír be egy terminálba. Akár közvetlenül a Git-parancsok beírásával, akár a GitHub parancssori felületének használatával.
A GitHub CLI egy nyílt forráskód eszköz a GitHub használatához a számítógép parancssorából. A GitHub CLI leegyszerűsítheti egy meglévő projekt GitHubhoz való hozzáadásának folyamatát a parancssor használatával. A GitHub CLI-vel kapcsolatos további információkért tekintse meg a GitHub parancssori felületét.
Helyi adattár hozzáadása a GitHubhoz a GitHub parancssori felületével
Az alábbi lépéseket követve adhat hozzá egy helyi adattárat a GitHub CLI-vel:
A parancssorban keresse meg a projekt gyökérkönyvtárát.
Inicializálja a helyi könyvtárat Git-adattárként.
git init -b mainA projekt összes fájljának előkészítése és véglegesítése.
git add . && git commit -m "initial commit"Ha a GitHubon szeretne adattárat létrehozni a projekthez, használja a
gh repo create subcommand. Amikor a rendszer kéri, válassza a Meglévő helyi adattár leküldése a GitHubra lehetőséget, és adja meg az adattár kívánt nevét. Ha azt szeretné, hogy a projekt a felhasználói fiók helyett egy szervezethez tartozjon, adja meg a szervezet nevét és a projekt nevét a következővelorganization-name/project-name: .Kövesse az interaktív utasításokat. A távoli fájl hozzáadásához és az adattár leküldéséhez erősítse meg az igent , amikor a távoli elem hozzáadására és a véglegesítések leküldésére van szükség az aktuális ághoz.
Másik lehetőségként az összes kérés kihagyásához adja meg az adattár elérési útját a
--sourcejelölővel, és adjon át egy láthatósági jelzőt (--publicvagy--private--internal). Például:gh repo create --source=. --public. Adjon meg egy távvezérlőt a--remotejelölővel. A véglegesítések leküldéséhez adja át a jelölőt--push. A lehetséges argumentumokkal kapcsolatos további információkért tekintse meg a GitHub cli-kézikönyvét.
Helyi adattár hozzáadása a GitHubhoz a Git használatával
Az alábbi lépésekkel adhat hozzá egy helyi adattárat a Git használatával:
Hozzon létre egy új adattárat a GitHub.com. A hibák elkerülése érdekében ne inicializálja az új adattárat a README, licenc vagy
gitignore files. Ezeket a fájlokat a projekt GitHubra való leküldése után is hozzáadhatja.
Nyissa meg a Git Basht.
Módosítsa az aktuális munkakönyvtárat a helyi projektre.
Inicializálja a helyi könyvtárat Git-adattárként.
$ git init -b mainAdja hozzá a fájlokat az új helyi adattárhoz. Ez a parancs az első véglegesítéshez is előkészíti őket.
$ git add . # Adds the files in the local repository and stages them for commit. To unstage a file, use 'git reset HEAD YOUR-FILE'.Véglegesítse a helyi adattárban előkészített fájlokat.
$ 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.Az adattár tetején GitHub.com gyorsbeállítási lapján kattintson a Másolás gombra a távoli adattár URL-címének másolásához.
A parancssorban adja hozzá a távoli adattár URL-címét. A rendszer erre a helyre küldi a helyi adattárat.
$ git remote add origin <REMOTE_URL> # Sets the new remote $ git remote -v # Verifies the new remote URLA helyi adattár módosításainak leküldése a GitHub.com.
$ git push origin main # Pushes the changes in your local repository up to the remote repository you specified as the origin
Forráskód migrálási eszközei
Külső eszközökkel áthelyezheti projektjeit a GitHubra. Javasoljuk, hogy a GitHub Importer használatával importáljon projekteket a Subversion, a Mercurial, a Team Foundation Verziókövetés (TFVC) vagy egy másik Git-adattárból. Ezeket a külső eszközöket is használhatja a projekt Gitre való konvertálásához.
Importálás subversion-ból
Egy tipikus Subversion-környezetben a rendszer több projektet tárol egyetlen gyökéradattárban. A GitHubon ezek a projektek általában egy külön Git-adattárra vannak leképezve egy felhasználói fiók vagy szervezet számára. Javasoljuk, hogy importálja a Subversion-adattár minden részét egy külön GitHub-adattárba, ha:
- A közreműködőknek a projekt adott részét a többi résztől elkülönítve kell kivenni vagy véglegesíteni
- Azt szeretné, hogy a különböző részek saját hozzáférési engedélyekkel rendelkezzenek
Ezeket az eszközöket javasoljuk a Subversion-adattárak Gitre való konvertálásához:
Importálás a Mercurialból
A Mercurial-adattárak Gitre való konvertálásához hg-fast-exportot javasoljuk.
Importálás a TFVC-ből
A TFVC és a Git közötti módosítások áthelyezéséhez a git-tfs használatát javasoljuk.
A TFVC-ről (központi verziókövetési rendszerről) a Gitre való áttérésről további információt a Központi verziókövetésből a Gitbe történő migrálás című témakörben talál.