Алексей Ямщиков: я без претензии, ребят, я действительно в этом полный ноль. Просто вопрос изначально про то, как начать работать со всем этим в PHPStorm из одного проекта, а не как просто прикрутить Git на своем сервере. На этот счет мануалов в сети полным полно, а тут более комплексно интересует.
В разные папки (тестовую и продакшен) деплоить по push разные ветки (branch)
Тестовую как оттестировали сливать в продакшен ветку.
не влияет никак. Вам нужно понять как работает web server фактически, что бы таких вопросов не задавать.
В первой цитате содержится ответ на вторую - в том-то и дело, что действительно нужно создать разные папки и деплоить по пуш в одну тестовый код, а во вторую рабочий. Ну или создать два репозитория в разных папках и один принять за главный, а другой за тестовый, и связать их через клонирование и потом "remote add shared". Но если возможно нормально работать и с одним репозиторием, а не с этой конфигурацией с двумя, то конечно этот вариант лучше. Просто изначально наткнулся на мануал с такой конфигурацией и остановился на нем.
Так вот, проблема в том, что в описанной мною конфигурации эти папки находятся в разных местах, и владельцы и группы у них тоже разные. Разные настолько, что не должны никак пересекаться, это фактически как бы разные пользователи хостинга, по сути. Вопрос в том, как и где лучше сделать один репозиторий:
в папке, к которой есть доступ у пользователя, под которым работает тестовый сайт?
в папке, к которой есть доступ у пользователя, под который работает основной сайт?
где-то в отдельной папке?
И соответственно под кем тогда должен ходить на удаленный сервер, где расположены эти папки, PHPStorm или просто локальный Git? Сделать нового пользователя, который будет иметь доступ ко всему, создать папку с репозиторием где-то отдельно, и пускай под этим пользователем все выполняется?
Или под кем-то из созданных пользователей это делать? И возможно ли это, когда пользователь, под кем крутится тестовый сайт, что-то пушит в репозиторий в рабочую папку (то есть в папку другого, не этого пользователя), и Git это сам делает, не смотря на то, что пользователь, который ему это сказал сделать, не имеет доступа к этой рабочей папке? В это слабо верится, так как тогда получается при желании можно нарушить безопасность на сервере.
Поясните эту фразу пожалуйста. Что значит, в вашем понимании, прикрутить репозиторий к домену?
Имелось ввиду, что создаются два репозитория, они связываются между собой, как указано выше, и из каждого репозитория деплоится в свою папку, в рабочую или тестовую. Но я сейчас уже понимаю, что более оптимальный вариант - один репозиторий с двумя ветками, и вопрос теперь только в том, как настроить это, при условиях, описанных выше - то есть когда есть два пользователя, не имеющих доступа к папкам друг друга, а тестовый и рабочий сайты находятся как раз в папке первого и в папке второго пользователя.
Извините, если сбивчиво и непонятно, стараюсь и текст не растягивать, и понятно описывать. Выходит не очень, видимо :)
Поясню, что я имел ввиду - то есть PHPStorm не может грубо говоря использовать тот бинарник git, который на удаленном сервере есть, подключаясь к этому серверу по ssh, например? И вместо этого он использует локально установленный Git, который сам уже заходит через ssh или что-то там еще и делает необходимые вещи?
Поясню, что я имел ввиду - то есть PHPStorm не может грубо говоря использовать тот бинарник git, который на удаленном сервере есть, подключаясь к этому серверу по ssh, например? И вместо этого он использует локально установленный Git, который сам уже заходит через ssh или что-то там еще и делает необходимые вещи?
Видимо, вы не до конца поняли мой вопрос или же я его по-глупому задал, если решили, что нужно выкинуть из него что-либо. Поясню.
Есть некий заказ, проект, сайт. Допустим, он пишется с нуля, а не используется какая-либо CMS или что-то вроде. Соответственно в данный момент работа начинается так:
Создается поддомен на каком-то домене, это будет место, где сайт хостится до его переноса на его рабочий адрес. В PHPStorm создается новый проект (в рамках его терминологии), в нем подключается папка того поддомена и начинается работа над проектом. Он доходит до какой-то стадии и потом все это вручную переносится уже на рабочий домен. До этого места и в такой конфигурации все работает.
При этом тестовый поддомен и рабочий домен находятся физически на одном сервере, но созданы под разными пользователями в ISManager, то есть их файлы лежат в папках разных пользователей Linux, и какого-то общего доступа между ними нет, это отдельно живущие вещи в рамках одной машины.
Вопрос в том, что есть желание внедрить Git. И вот тут возникает вопрос, как с минимумом труда и создания лишнего сделать так, чтобы в рамках одного проекта PHPStorm можно было сначала что-то писать и отправлять для тестирования на тестовом сервере, а потом, если это необходимо, уже переносить на рабочий сервер. И возможно ли вообще такая конфигурация. Работать с Git естественно планируется по максимум прозрачно через PHPStorm, чтобы он автоматически делал все то, что обычно в мануалах пишется как десятки строк команд. То есть создавать в начале какой-то репозиторий конечно же не проблема, и ручками его там прикручивать к очередному тестовому и рабочему домену, но потом все действия конечно же хочется производить из IDE, то есть в нашем случае из PHPStorm.
Понятно, спасибо. Но я искал скорее уж готовое решение, если кто-то аналогичное реализовывал, писать самому все это - занятие для того дня, когда мне совсем уж нечем будет заняться :)
Тем не менее, может быть посмотрите, что выше я мог не так сделать, или подскажете в чем может быть проблема? Потому что не работает именно ftp, тут даже не в роутере скорее всего дело, а в кривых руках разработчиков dlink.
Это как факультатив - вспомнить, что и как, а заодно исправить какие-то ошибки в настройке, если таковые имеются. Ну и всяко удобнее кому-то помимо меня дать доступ к ftp, а не к vpn.
nimbo: да тут такое дело, что сервера у меня в другом месте совершенно, и там все давно как часы работает, а то что я тут пытаюсь сделать - это домашняя сеть с роутером и насом за ним, сделать ее доступной из интернета - это приятная опция при работе вне дома - скачать там что-то с домашнего сервера, закачать, в общем чувствовать себя как дома. Самый простой вариант - например нужен дистрибутив какого-то софта или же архив фотографий, которые хочется скачать из внешнего интернета, находясь вне дома.
Да, спасибо. Я на самом деле еще рассматриваю вариант с просто поднятым vpn на роутере, тем более что это уже все работает, просто пока что не хочется переходить на него - более сложный вариант в использовании потом будет.
@barkalov я последовал примеру, который ниже привел @ModestesGonze - и так тоже получилось. Но и твой ответ тоже верный, если использовать flex как я выше написал и очистить стили от бутстрапа.
За flex спасибо, интересно, но не очень понял, как это можно тут применить, исходя из мануала. По поводу bootstrap - все верно, но там эти блоки и обернуты в одном контейнере, посмотрите на втором скриншоте, article - это они и есть.
В первой цитате содержится ответ на вторую - в том-то и дело, что действительно нужно создать разные папки и деплоить по пуш в одну тестовый код, а во вторую рабочий. Ну или создать два репозитория в разных папках и один принять за главный, а другой за тестовый, и связать их через клонирование и потом "remote add shared". Но если возможно нормально работать и с одним репозиторием, а не с этой конфигурацией с двумя, то конечно этот вариант лучше. Просто изначально наткнулся на мануал с такой конфигурацией и остановился на нем.
Так вот, проблема в том, что в описанной мною конфигурации эти папки находятся в разных местах, и владельцы и группы у них тоже разные. Разные настолько, что не должны никак пересекаться, это фактически как бы разные пользователи хостинга, по сути. Вопрос в том, как и где лучше сделать один репозиторий:
в папке, к которой есть доступ у пользователя, под которым работает тестовый сайт?
в папке, к которой есть доступ у пользователя, под который работает основной сайт?
где-то в отдельной папке?
И соответственно под кем тогда должен ходить на удаленный сервер, где расположены эти папки, PHPStorm или просто локальный Git? Сделать нового пользователя, который будет иметь доступ ко всему, создать папку с репозиторием где-то отдельно, и пускай под этим пользователем все выполняется?
Или под кем-то из созданных пользователей это делать? И возможно ли это, когда пользователь, под кем крутится тестовый сайт, что-то пушит в репозиторий в рабочую папку (то есть в папку другого, не этого пользователя), и Git это сам делает, не смотря на то, что пользователь, который ему это сказал сделать, не имеет доступа к этой рабочей папке? В это слабо верится, так как тогда получается при желании можно нарушить безопасность на сервере.
Имелось ввиду, что создаются два репозитория, они связываются между собой, как указано выше, и из каждого репозитория деплоится в свою папку, в рабочую или тестовую. Но я сейчас уже понимаю, что более оптимальный вариант - один репозиторий с двумя ветками, и вопрос теперь только в том, как настроить это, при условиях, описанных выше - то есть когда есть два пользователя, не имеющих доступа к папкам друг друга, а тестовый и рабочий сайты находятся как раз в папке первого и в папке второго пользователя.
Извините, если сбивчиво и непонятно, стараюсь и текст не растягивать, и понятно описывать. Выходит не очень, видимо :)