Установка yii2 advanced на Raspberry и локальную машину, связка с Bitbucket

Задача:
Установить на рабочий компьютер расширенную версию yii2, создать репозиторий на Bitbucket и выложить проект туда. В качестве боевого сервера настроить Raspberry и склонировать с Bitbucket проект. Дальнейшие обновления будут через Bitbucket, посредством git pull из ветки мастер.

  1. Устанавливаем Composer, если нужно, на локальную машину.

  2. Устанавливаем yii2, расширенную версию. В папке с проектами запустить команду, где name-project – имя проекта:
    composer create-project --prefer-dist yiisoft/yii2-app-advanced name-project

  3. php init - инициализируем проект, для разработки выбираем [0] Development.

  4. Инициализируем Git (в папке с проектом), индексируем и делаем первый коммит.

    1
    2
    3
    git init
    git add .
    git commit -m "fist commit"
  5. Перезапустите IDE (Актуально для phpShtorm)

    Если используете MAMP в MAC OS, то настройки для БД в common/config/main-local.php
    должны быть следующие: 'dsn' => 'mysql:host=localhost:8889;dbname=nameDB, (MAMP вешает MySQL на 8889 порт)

  6. Настройка Bitbucket.

    1. Создаем новый приватный репозиторий
    2. Заходим в раздел Обзор и следуем инструкции “Я начинаю полностью с нуля”

    Пример:

    1
    2
    3
    4
    cd /path/to/my/repo
    git remote add origin https://Falbin@bitbucket.org/Falbin/authorization.git
    git push -u origin --all # pushes up the repo and its refs for the first time
    git push origin --tags # pushes up any tags

    В локальном файле конфига (.git/config) добавилась строчка, для связи проекта с Bitbucket (более того вы уже сделали пушь проекта на Bitbucket):

    1
    2
    3
    4
    remote "origin"]
    url = https://Falbin@bitbucket.org/Falbin/authorization.git
    fetch = +refs/heads/*:refs/remotes/origin/*
    ]
  7. ssh root@192.168.0.100 - подключаемся по ssh к Raspberry

  8. Устанавливаем Git на Raspberry, если нужно.

  9. Настраиваем ssh ключ

  10. git clone git@bitbucket.org:Falbin/authorization.git - клонируем репозиторий с Bitbucket

  11. Устанавливаем composer на Raspberry, если нужно. Устанавливаем глобально:

    1. cd ~
    2. curl -sS https://getcomposer.org/installer | php
    3. sudo mv composer.phar /usr/bin/composer
  12. Перед установкой всех нужных пакетов, убедитесь что у вас настроин токен для GitHub. Без токена, GitHub ставит ограничения на колличестов запросов.

    1. Нужно авторизоваться на github.com и перейти по ссылке., затем сгенерировать ключ.
    2. Можно заранне настроить: composer config -g github-oauth.github.com <токен>, либо ввести, когда у вас запросит токе, в поле Token (hidden)
  13. composer install - Устанавливаем все пакеты, нужные нашему yii2

    После чего возникают гребанные проблемы, описанные тут.
    Мне помогло composer global require "fxp/composer-asset-plugin:~1.1.1"

Алгоритм по разработке проекта:

  1. На локальной машине создаем ветку под разные задачи, после выполнения задачи мержим с мастером.
  2. На сервере (Raspberry) делаем git pull из ветки мастер. Никаких правок на серваке вручную (иначе будут конфликты).
  3. Отличная статья, как отменять коммиты.

Полезные ссылки:

  1. Composer
  2. Документация по yii2
  3. Настраиваем ssh ключ
  4. Composer. Установка под Linux.