Add docs for 'vendor-alias'
parent
f2853c842b
commit
3ff941ed30
|
@ -202,7 +202,7 @@ should you need to specify one for whatever reason, you can use `git`, `svn` or
|
|||
|
||||
It is possible to install packages from any PEAR channel by using the `pear`
|
||||
repository. Composer will prefix all package names with `pear-{channelName}/` to
|
||||
avoid conflicts.
|
||||
avoid conflicts. All packages are also aliased with prefix `pear-{channelAlias}/`
|
||||
|
||||
Example using `pear2.php.net`:
|
||||
|
||||
|
@ -214,6 +214,7 @@ Example using `pear2.php.net`:
|
|||
}
|
||||
],
|
||||
"require": {
|
||||
"pear-pear2.php.net/PEAR2_Text_Markdown": "*",
|
||||
"pear-pear2/PEAR2_HTTP_Request": "*"
|
||||
}
|
||||
}
|
||||
|
@ -224,6 +225,47 @@ In this case the short name of the channel is `pear2`, so the
|
|||
> **Note:** The `pear` repository requires doing quite a few requests per
|
||||
> package, so this may considerably slow down the installation process.
|
||||
|
||||
#### Custom channel alias
|
||||
It is possible to alias all pear channel packages with custom name.
|
||||
|
||||
Example:
|
||||
You own private pear repository and going to use composer abilities to bring
|
||||
dependencies from vcs or transit to composer repository scheme.
|
||||
List of packages:
|
||||
* BasePackage, requires nothing
|
||||
* IntermediatePackage, depends on BasePackage
|
||||
* TopLevelPackage1 and TopLevelPackage2 both dependth on IntermediatePackage.
|
||||
|
||||
For composer it looks like:
|
||||
* "pear-pear.foobar.repo/IntermediatePackage" depends on "pear-pear.foobar.repo/BasePackage",
|
||||
* "pear-pear.foobar.repo/TopLevelPackage1" depends on "pear-pear.foobar.repo/IntermediatePackage",
|
||||
* "pear-pear.foobar.repo/TopLevelPackage2" depends on "pear-pear.foobar.repo/IntermediatePackage"
|
||||
When you update one of your packages to composer naming scheme or made it
|
||||
available through vcs your older dependencies would not see new version cause it would be named
|
||||
like "foobar/IntermediatePackage".
|
||||
|
||||
Specifying 'vendor-alias' for pear repository you will get all its packages aliased with composer-like names.
|
||||
Following example would take BasePackage, TopLevelPackage1 and TopLevelPackage2 packages from pear repository
|
||||
and IntermediatePackage from github repository:
|
||||
{
|
||||
"repositories": [
|
||||
{
|
||||
"type": "git",
|
||||
"https://github.com/foobar/intermediate.git"
|
||||
},
|
||||
{
|
||||
"type": "pear",
|
||||
"url": "http://pear.foobar.repo",
|
||||
"vendor-alias": "foobar"
|
||||
}
|
||||
],
|
||||
"require": {
|
||||
"foobar/TopLevelPackage1": "*",
|
||||
"foobar/TopLevelPackage2": "*"
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
### Package
|
||||
|
||||
If you want to use a project that does not support composer through any of the
|
||||
|
|
Loading…
Reference in New Issue