Skip to content

Работа с удаленным репозиторием на виртуальном хостинге Timeweb

Notifications You must be signed in to change notification settings

eveness/git-and-timeweb

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

6 Commits
 
 

Repository files navigation

Работа с удаленным репозиторием на виртуальном хостинге Timeweb

Так как на тарифах виртуального хостинга Timeweb нет возможности добавить иной SSH-доступ, кроме основного, то работа в пределах такого тарифа возможна только под одним юзером.

  1. Для начала необходимо включить SSH-доступ, для чего требуется привязка телефона с подтверждением SMS-кодом.

  2. Заходим на сервер, где <user> соответственно логин, а <server> хост, который можно узнать в панели управления:

ssh <user>@<server>.timeweb.ru
  1. Заходим в папку проекта, для примера my-site, и инициализируем там репозиторий:
cd my-site
git init
  1. Добавляем в конфиг свою почту и имя пользователя (если до этого не было):
git config --global user.name "John Doe"
git config --global user.email johndoe@example.com

Посмотреть настройки можно командой:

git config --list
  1. Добавляем какой-нибудь файл, например .gitignore, коммитим:
git add .
git commit -m "init"
  1. Создаем в корне папку git и переходим в нее:
cd ~
mkdir git
cd git
  1. Тут инициализируем bare-репозиторий:
git clone --bare ../my-site my-site.git
  1. Возвращаемся в папку проекта и добавляем туда:
cd ~/my-site
git remote add shared ../git/my-site.git

  1. Добавляем хук post-update в bare-репозиторий:
cd ~/git/my-site.git/hooks

С содержимым:

#!/bin/sh

cd /home/u/user/my-site || exit
unset GIT_DIR
git pull shared master

exec git-update-server-info

Где /u/user/ - это первая буква логина и сам логин. Даем права на запуск:

chmod +x post-update
  1. Добавляем хук post-commit в репозиторий проекта:
cd ~/my-site/.git/hooks

С содержимым:

#!/bin/sh
git push shared

Даем права на запуск:

chmod +x post-commit
  1. Возвращаемся в папку проекта:
cd ~/my-site

И пушимся:

git push --set-upstream shared master
  1. Локально добавляем удаленный репозиторий и обновляемся:
git remote add origin ssh://<user>@<server>.timeweb.ru/home/<u>/<user>/git/my-site.git
git pull origin master

Примечание:
в случае работы с IDE JetBrains PhpStorm/WebStorm достаточно:
а) в стартовом окне выбрать Checkout from Version Control -> Git
б) в произвольном открытом проекте в верхнем меню выбрать VCS -> Checkout from Version Control -> Git
и в поле Git Repository URL ввести:

ssh://<user>@<server>.timeweb.ru/home/<u>/<user>/git/my-site.git

После запуска проекта пулить сразу уже не требуется.

Работаем как и с обычным репозиторием. Конец, успех.

About

Работа с удаленным репозиторием на виртуальном хостинге Timeweb

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages