2015-06-19 1 views
2

Сценарийверсия Git Repo для Composer использования - Гит/Композитор

У меня есть плагин в PHP, что я написал, и хочу сохранить его как частное хранилище. Я хочу настроить версию в Git. Я знаю, что для этого есть теги, но не знаю, как работает соглашение для Composer.

Текущий composer.json для моего пакета/плагин:

{ 
    "name": "Test/Upload", 
    "description": "Useful functions for image uploading.", 
    "minimum-stability": "dev", 
    "require": { 
     "php": ">=5.3.0" 
    } 
} 

Текущий composer.json для моего проекта, чтобы включить выше пакет/плагин:

{ 
    "name": "multistepform", 
    "require": { 
     "cakephp/cakephp": "2.6.*", 
     "cakephp/debug_kit": "2.2.*" 
    }, 
    "config": { 
     "vendor-dir": "Vendor/" 
    } 
} 

В настоящее время у меня нет тегов в пакет/плагин.

Qs

1) Требуется ли композитор теги в репозитории для того, чтобы использовать его?

2) Как следует пометить свой приватный репозиторий для использования с Composer?

3) Как включить этот пакет в другой проект (используя приведенный выше контекст)?

+0

https://getcomposer.org/doc/05-repositories.md#using-private-repositories – tigrang

ответ

1

Просто, чтобы добавить к @ tigrang своего комментарию и перечислить явные шаги:

  • добавить GIT репозиторий с помощью «хранилищ» в вашем composer.json
  • тега пакет с номером версии (I предлагают использовать Semantic versioning, Keep A Changelog и мой GIT плагин git-semver)

    VERSION=0.1.0 && git tag ${VERSION} && git push origin ${VERSION}

  • добавить лет ур по требованию

  • вы также можете использовать «dev-master» в своем запросе, если вы не хотите добавлять теги версии и хотите получать последние изменения в пакете при запуске composer update. Для этого требуется установка:

    minimum-stability: dev

Final composer.json:

{ 
    "name": "multistepform", 
    "repositories": [ 
     { 
      "type": "git", 
      "url": "https://github.com/Test/Upload.git" 
     } 
    ], 
    "require": { 
     "cakephp/cakephp": "2.6.*", 
     "cakephp/debug_kit": "2.2.*", 
     "Test/Upload": "0.1.*" 
    }, 
    "config": { 
     "vendor-dir": "Vendor/" 
    } 
} 
Смежные вопросы