Ну, на алиэкспрессе за счет того, что код eval-ится в рантайме. У вас в обычном JSON он не сработает.
Да какие линки... Здоровая смекалка и пытливый ум - все, что нужно
режьте через регеэкспы ненужную обертку в виде вызова promise-callback, а то, что останется (в фигурных скобочках) json_decode-те. В результате получите массив на php
hrvasiliy: Да, придумывали сами. Делайте так, как вам удобно.
Касаемо откатов - упрощенно говоря, в dploy.io при каждой заливке на сервер (автоматической или ручной), создается "запись" (на сервере актуальная версия для такого-то коммита). Потом, вручную, конечно, можно откатиться к одной из этих записей.
P.S. И вообще - попробуйте зарегистрироваться на dploy.io - там один репозиторий бесплатно.
P.P.S. Мне больше понравился вариант, который описал Sergey Ovechkin - про capistrano. Субъективно там все получше.
hrvasiliy: Тут такая ситуация - у dploy.io есть автоматическая заливка файлов из определенной ветки. В нашем случае - это ветка development. Поэтому, когда мы вливаем изменения в development и пушим их в репозиторий, через минуту они автоматически залиты на dev-сервер.
Касаемо того, что много действий - да, много, тут не поспоришь, но в нашем случае лучше это оправдывается.
Если сделано изменение переменной и надо это протестировать на dev-сервере, то тут уже и не знаю что сказать... Мы каждую feature ведем локально, потом прогоняем тесты, потом заливаем на dev, потом на production.
Вся суть этих телодвижений в том, что в любой момент можно откатиться к определенному коммиту.