Это делается при активации плагина, вы же можете плагин поставить из архива, залив по фтп и потом в админке нажать что то типа "установить"? Вот так же и с гита оно ставится, файлами прилетает а в админке нажимаем установить и "создаются таблицы и меняются записи"
Я вам указал самый простой кейс использования. Гит можно автоматизировать, следующий шаг по автоматизации когда вам надоест заходить каждый раз на сервер, будут вэбхуки, вы в корень например положите файлик deploy.php который просто будет в корне дергать, типа
<?phpexec("cd /var/www && git pull");
И в гитлабе повесите вэбхук который будет дергать это урл на вашем сайте который автоматом будет выкатывать изменения, а это значит что доступ к серверу можно больше никому не давать, изменения будут выкатываться сами, а вот кто их туда будет вносить уже разрулите на уровне прав доступа к веткам гита
Вы не поняли фразу " При использовании гита это просто невозможно. Он просто физически не даст задеплоить изменения, если на сайте были сделаны изменения и не закоммитаны. ". Если на сайте внести изменения локально, то гит пометит файл как измененный и если начинать сливать изменения с гита в которых так же изменены эти файлы, то он скажет что тут что то не так и не зальет эти изменения и он даст вам выбор, либо вы эти изменения сохраните (закомитете) и решите конфликт или отмените и примите как есть либо локальные либо удаленные с гита. То есть перезаписать в тихую файлы невозможно, только если они не правились.
Количество штук это к гиту относится? Ну у меня их 59 только в гитлабе и полет нормальный, над всеми 50 сразу же не работаешь
Вы же наверняка на хостингах "чалитесь" с клиентами, конфигурация серверов там +- одинаковая у всех. Если бы у вас проекты были бы уровня badoo я бы понял, но у вас же скорее всего это стандартные популярные CMS которые работают одинаково на всех вменяемых хостингах
Вы правы, если заказчик изначально нанимает двух и более исполнителей которые злонамеренно парой ходят и заливают шелы - не поможет. Если взять за правило перекресного ревью, когда один разработчик смотрит код другого разработчика, то вполне реально. Второй то наверняка понимает что из этого шел, а что нет. Если у заказчика один исполнитель и никто ничего больше не понимает в этом, то скорее всего да, но по МР например можно нанять аудитора (еще одного разработчика с опытом), который просто пробежится по всем изменениям и скажет было что то залито или нет, по бэкапу этого будет сделать невозможно скорее всего
Вы даже не поняли о каком ядре речь =)) я про интерпритатор php говорил и ссылку на внесение в него скидывал где 100500 человек посмотрят код прежде чем его вольют в основную ветку которая потом уедет на сотни тысяч если не миллионы серверов в виде новой версии php
Да я тоже не вижу смысла, как может быть гит для других объемов? Для каких? Какими объемами надо мерять не понимаю, в гите есть даже однофайловые программы на десяток строк кода, для каких целей надо использовать гит, расскажите? Вы же не дали внятного ответа для чего тогда гит если не как раз для таких ситуаций, скорее всего потому, что не используете и вам это кажется каким то космолетом
Ну то есть вы, как и Sly32, предлагаете работать так:- развернуть на тестировочном сервере копию сайта- после внесения изменений в эту копию переносить изменения в гит- после этого через гит переносить изменения на рабочий сайт- делать дамп базы данных и обновлять БД рабочего сайта.
Верно я понял, или это не так?
Почти.Вы разворачиваете копию сайта наверняка ведь? Ну где то, неважно где - тестовый сервер или у себя на компе. Далее ваши действия какие? Что то ставите, плагины например, делаете работу, проверяете что все работает и очередной плагин не форматнул вам всю БД, потом после всех тестов как то же переносите? Ставите такие же плагины на прод и изменения в файлах заливаете по фтп, правильно? Или вы делаете бэкап всего сайта, "на живую" правите сайт, пользователи при этом видят какие то синтаксичесике ошибки, после неудачных плагинов вычищаете боевую БД и если все сломалось восстанавливаете с бэкапа? Если последнее то мне вообще грустно за ваших клиентов и да вам гит только усложнит работу и он вам не нужен и будет только мешать корячить клиентские сайты, если первое, то с гитом работается практически так же, просто не надо вспоминать какие файлы правил и плагины будут именно тех версий что тестировали на тестовом.
Если прям с нуля делаем, то делается так:1. Заходим на сервер с сайтом2. Добавляем .gitignore и вписывает туда всякий хлам в исключения, типа архивов, и прочих ненужных для разработки файлов, какие-нибудь папки с загруженными файлами и прочее3. Далее добавляем файлы к отслеживанию, коммитим всё и заливаем например на гитлаб4. Выкачиваем дамп базы и из гита выкачиваем файлы (с файлами работать проще и быстрее, то есть слить файлы с гита в десятки а то сотни раз быстрее чем по фтп)5. Разворачиваем бд из дампа и получаем сайт точь в точь как на проде, при должной сноровке все эти пункты выполняются минут за 10, если окружение тестового сервера уже настроено, например это может быть тот же хостинг папка рядом с тестовым доменом.6. Делаем нужные изменения в файлах, если ставим плагин, то по сути он так же скачивается же просто (файлами в папку с плагинами), а потом через админку активируется.7. Тестируете свою работу, по финалу коммитете все изменения и сливаете в гит8. На боевом сервере сливаете все изменения из гита, заходите в админку, активируете плагины (они файлами с гита уже прилетели), вносите нужные настройки если требуется в админке (на этом шаге у вас изменения все 1 в 1 как на тестовом)Весь этот флоу у вас и так есть по сути если вы не правите "на живую", по скорости (без гита) быстрее вообще не получается, скорее медленнее, можете забыть какие то изменения и так далее.Я понимаю, что боль в пятой точке с виду вызывает перенос изменений в БД, так вот для этого есть механизм миграций, когда изменения в БД делаются не в админке руками, а кодом в файле, но надо понимать, что миграциями, как правило, не переносят контент, а меняют структуру таблиц и прочее, а контент и конфиг можно зайти на боевой сайт и через админку проставить нужные, так как например тестовый сайт и боевой по настройкам могут отличаться, например на тестовом сервере у вас тестовый эквайринг банковский с оплатами тестовыми картами, а на боевом - боевой.
Это не отсутствующая необходимость, гитом можно пользоваться даже локально или прям на сервере редактируя по ftp, я практически уверен, что у большинства если зайти на проект там будет в файловой что то типа
- index.php- index1.php- index2.php- style.css- style.new.css- style.old.css
и так далее, это по сути велосипед вместо гита, гитом не обязательно выкатывать изменения, можно править и по фтп, просто выполнив задачу фиксировать изменения и иметь чистую и красивую историю всех изменений любого файла
PS. Посмотрите вакансии разработчиков, от джуна до сеньора в требованиях владеть гитом, наверное это просто так, из за отсутствующей необходимости ))
Например сейчас у сайта есть какое то "состояние", оно фиксируется в гите, все следующие изменения с десятками тысяч строк кода бэкдора будут видны в гите и их всегда можно откатить к требуемому состоянию. Тем самым это поможет ТС. Плюс гит это не просто заливка изменений на сервер, у гита, как правило, есть мастер ветка, она развернута на сервере (проде), любые изменения делаются через мерж/пулл реквест в эту ветку, а в этом реквесте видны все изменения которые будут сделаны в этой мастер ветке, например вот какой то пул реквест с утечкой памяти в fpm в ядре php, видно в каком файле какие изменения вносятся и кем. Это же защитит ядро php от того чтобы туда не подложили бэкдор?
При чем тут гит вообще? Тут примерно равноценно как гит поможет при беременности вашей подруги? Это не тот инструмент, чтобы защищать от тупости раздачи рута всем кому не лень.
Вообще не одной задачи не придумал если честно, разве что в задаче нет изменения файлов в файловой системе, я даже знавал дизайнеров, которые в свое время в гите держали файлы макетов дизайна и их версий
С гитом действительно наверное самое рабочее решение, по крайней мере более осязаемое, чем "обращайтесь к нормальным специалистам" =)
А местным противникам гита, могу лайфхак подсказать, гит для вас, по сути, может быть бесплатным, инкрементным бэкапом файлов на удаленном сервере, то есть ставите на крон коммит + пуш хоть каждую минут и у вас всегда будет бэкап актуальных файлов бесплатно и без смс =)))
Это и называется ВВП =))