- Я понимаю точку зрения вашего друга, но я категорически не согласен с выполнением (возможно, ошибочным, вероятно) некорректного кода разработки на рабочем сервере. Лучше загрузите VirtualBox и настройте виртуальную машину с той же конфигурацией, что и на сервере, на котором вы развертываете. Используйте git для создания «тегов» для каждой развернутой версии, чтобы у вас были полезные ориентиры для «версий» вашего веб-сайта.
- Посмотрите на "git submodules". Вы почти наверняка должны узнать, что это такое, но если вы пришли из подрывной деятельности, вы, вероятно, найдете их очень запутанными. Подмодули в основном являются ссылками на другие репозитории, поэтому у вас есть мягкая ссылка на другой проект внутри вашего основного проекта. Однако они должны быть автономными в каталоге.
- Лично мне нравится хранить файл schema.sql в моем хранилище (просто пустую схему, написанную на SQL), но я не думаю, что было бы разумно хранить полные резервные копии базы данных в хранилище, хотя вы можете. Храните их отдельно.
Если вы новичок во всей идее систем контроля версий, вам, вероятно, лучше просто прыгнуть обеими ногами. Это все начнет иметь смысл, как вы идете. И, конечно, по самой своей природе вы вряд ли нанесете какой-либо постоянный урон, так как можете кататься туда-сюда.
Одна твердая рекомендация: часто совершайте. Каждый раз, когда вы делаете изменения, которые работают, фиксируйте. Меньшие коммиты намного легче обрабатывать, чем большие. Например, если вам нужно отменить сломанное изменение, вы с большей вероятностью сможете отменить его, не удаляя кучу рабочего кода, который был зафиксирован в то же время, если ваши коммиты являются атомарными.