При създаване на Git хранилище в cPanel има два варианта – да създадете ново празно хранилище или да клонирате вече съществуващо Git хранилище, намиращо се на отдалечен сървър (GitHub, Bitbucket, GitLab).
За да създадете Git хранилище в хостинг акаунта, влезте в cPanel » Git Version Control и кликнете на бутона Добавяне.
Създаване на ново празно хранилище
За да създадете ново празно хранилище, деактивирайте клонирането с плъзгача.
Път до repository
Това е директорията, в която ще се съдържа хранилището. Препоръчително е тази директория да се намира в home директорията на акаунта, за да не е свободно достъпна през уеб. След като имате завършена версия на проекта, може да прилагате обновяване на реалния сайт чрез опцията за Deploy в cPanel. Ако директорията не съществува, системата ще я създаде.
Име на repository
Това име се използва за списъка с хранилища в cPanel и за GitWeb.
Създайте хранилището с бутон Добавяне.
Новосъздаденото празно хранилище можете да свържете към вече съществуващ проект, разположен на Вашето локално устройство. За целта от Вашето устройство изпълнете командата:
git remote add origin ssh://cpuser@mysupersite.com:1022/home/cpauser/repo
ssh://cpuser@mysupersite.com:1022/home/cpauser/repo – заменете с SSH адреса, посочен за хранилището след създаването му;
Можете и да клонирате хранилището локално на Вашето устройство, с командата:
git clone ssh://cpuser@mysupersite.com:1022/home/cpauser/repo
ssh://cpuser@mysupersite.com:1022/home/cpauser/repo – заменете с SSH адреса, посочен за хранилището след създаването му;
Клониране на съществуващо хранилище
Ако искате да клонирате отдалечено хранилище, например намиращо се в GitHub, оставете опцията на плъзгача в статус Клониране на repository.
Clone URL
Въведете clone URL за отдалеченото repository. Поддържаните URL адреси за клониране са със следните протоколи http://, https://, ssh://, git:// или с потребителско име и домейн.
За публични (public) проекти в GitHub/Bitbucket/GitLab можете да използвате HTTPS адреса за клониране. Например:
https://github.com/githubuser/project.git
https://bbuser@bitbucket.org/bbuser/project.git
https://gitlab.com/gitlabuser/project.git
Частните (private) проекти може да се клонират през интерфейса в cPanel » Git Version Control, но ще е нужно да използвате SSH адреса за клониране, например git@github.com:githubuser/myprivaterepo.git.
Клониране на проект (public или private) със SSH адреса за клониране (git@)
SSH адресите за клониране на проекти от GitHub, Bitbucket и GitLab изглеждат по този начин:
git@github.com:githubuser/project.git
git@bitbucket.org:bbuser/project.git
git@gitlab.com:gitlabuser/project.git
Клонирането на проекти (публични или частни) от GitHub, Bitbucket и GitLab може да се извърши през Git Version Control в cPanel със SSH адреса за клониране, но ще са нужни следните стъпки:
1 Генериране на двойка SSH ключове
Създайте двойка SSH ключове в хостинг акаунта (без парола/passphrase за частния ключ) през конзолата (през SSH достъп или Terminal в cPanel).
Вижте как да генерирате ключовете в статията: Настройки за използване на Git в cPanel през SSH | Help
2 Активирайте SSH ключовете
Активирате създадените SSH ключове през cPanel » SSH достъп » Управление на SSH ключове – Управление – Authorize.
3 Поставете публичния ключ в отдалеченото хранилище
Поставете публичния ключ (съдържанието на “***.pub” файла) в акаунта Ви в GitHub/Bitbucket/GitLab.
4 Създайте файл config в директория /home/cpanel/.ssh
Създайте обикновен текстов файл с име config (с права 0600) в директория /home/cpuser/.ssh и поставете в него настройките на връзката с отдалеченото хранилище.
Например за GitHub трябва да поставите:
Host github.com
User my@mail.com
Hostname ssh.github.com
Port 443
Ако за частния SSH ключ сте задали име, различно от id_rsa, то ще трябва да добавите и следните редове:
RSAAuthentication yes
IdentityFile ~/.ssh/githubkey
githubkey – заменете с името на файла, в който се намира частния ключ;
Вижте какви са възможните настройки за този файл в статията: Настройки за използване на Git в cPanel през SSH | Help
5 Клонирайте проекта през Git Version Control в cPanel
След като сте изпълнили предишните стъпки, може да клонирате хранилището през Git Version Control в cPanel, като използвате SSH адреса за клониране например git@github.com:githubuser/myprivaterepo.git.
Път до repository
Това е директорията, в която ще бъде клонирано хранилището. Препоръчително е тази директория да се намира в home директорията на акаунта, за да не е свободно достъпна през уеб. Също така, директорията не е препоръчително да е на реалния сайт, защото това означава да извършвате и прилагате промени директно на реалния сайт. Вместо това, след като имате завършена версия на проекта, може да прилагате обновяване на реалния сайт чрез опцията за Deploy в cPanel.
Пътят не може да съдържа следните референции за директории “./” и “../” , празен интервал, или символи като: \ * | “ ‘ < > & @ ` $ { } [ ] ( ) ; ? : = % #.
Име на repository
Въведете име, с което ще разпознавате хранилището в списъка в интерфейса в cPanel. Това име се използва само за този интерфейс и за GitWeb.
След като проектът е добавен в хостинг акаунта, ще можете да издърпвате (pull) обновленията от отдалеченото хранилище и да ги прилагате (deploy) в реалния сайт.
Вижте още:
🔗 Git Version Control в cPanel | Help