Посмотрел видеоуроки, почитал книги и теперь хочу начать работу с git. Но не все мне понятно.
Итак, работаю я на хостинге beget.ru, правлю файлы по FTP. Иногда может подключиться другой человек, что-то поправить. Бывало перезатирали друг друга. Как мне теперь перейти на git?
Я подключился по ssh, перешел в рабочую папку и выполнил git init. Правильно ли я понимаю: теперь это будет репозиторий, к которому я смогу подключаться? Мне останется добавить папки и файлы в репозиторий, потом подключиться через git со своего компьютера -> git clone, поработать над файлами и git push?
Или же удаленный репозиторий может быть, к примеру, на гитхабе, я все изменения лью туда, а от гитхаба на хостинг?
Главное - не используйте Git как способ деплоя (доставки кода на боевой публичный сервер). В крайнем случае убедитесь, что корневая папка репозитория .git недоступна для широкой публики через веб-интерфейс.
Имеет смысл завести репу на специализированном сервере GIT типа GitHub, GitLab, Bitbucket.
Перед начало работы каждый из ваших коллег делает git pull - получает локальную копию репы.
По окончании работы каждый из ваши коллег делает git push - отправляет данные из локальной на сервер GitHub/Gitlab/Bitbucket.
Плюс нужно будет как-то разруливать ситуации, когда вы портите результаты работы друг друга - через git merge или через ветки git...
Операция отправки на боевой сервер (на FTP в вашем изложении) из GIT (с сервера Bitbucket/Github/Gitlab, а не с локальной репы) - это отдельная операция.
Вот все равно не могу понять, почему лучше через промежуточный гитхаб? Какие преимущества он дает, водь можно удалить один этот пункт (гитхаб) из цепочки, упростить?
sadieff, потому что если внезапно ваш сервер заддосят/упадет хостер/еще что то - вы конечно исходники не потеряете, но на какое то время потеряете возможность нормально пушить - пока не перенастроите в другом месте. В идеале на хостинге можно вообще не держать git - он ему не нужен, а деплоить туда любыми другими средствами - да хоть через FTP. А git - отдельно. Деплоит всегда кто то один, никаких конфликтов, забрал последнее из гита и залил.
Проста аналогия - эксплуатация и склад готовой продукции.