首先感谢大神,福袋链接https://segmentfault.com/n/1330000006227425(侵删)

1,在github上创建一个库,再clone到本地(先把公钥放在你的github上)

git clone git@github.com:victorruan/composer-car.git 
cd composer-car

2,生成composer.json文件

$ composer init

                                            
  Welcome to the Composer config generator  
                                            


This command will guide you through creating your composer.json config.

Package name (<vendor>/<name>) [root/composer-car]: victorruan/composer-car
De ion []: This a demo for build composer packagist .
Author [阮佳佳 <250069802@qq.com>, n to skip]: 
Minimum Stability []: dev
Package Type (e.g. library, project,  package, composer-plugin) []: library
License []: MIT

Define your dependencies.

Would you like to define your dependencies (require) interactively [yes]? no
Would you like to define your dev dependencies (require-dev) interactively [yes]? no

{
    \"name\": \"victorruan/composer-car\",
    \"de ion\": \"This a demo for build composer packagist .\",
    \"type\": \"library\",
    \"license\": \"MIT\",
    \"authors\": [
        {
            \"name\": \"阮佳佳\",
            \"email\": \"250069802@qq.com\"
        }
    ],
    \"minimum-stability\": \"dev\",
    \"require\": {}
}

Do you confirm generation [yes]? yes
Would you like the vendor directory added to your .gitignore [yes]? yes

3,编辑器composer.json文件(规定版本,自动加载文件及其他支持扩展)

{
    \"name\": \"victorruan/composer-car\",
    \"de ion\": \"This a demo for build composer packagist .\",
    \"type\": \"library\",
    \"license\": \"MIT\",
    \"authors\": [
        {
            \"name\": \"阮佳佳\",
            \"email\": \"250069802@qq.com\"
        }
    ],
    \"minimum-stability\": \"dev\",
    \"require\": {
        \"php\": \">=7.0.0\"
    },
    \"autoload\": {
        \"psr-4\": {
            \"Ford\\\\Escape\\\\\": \"src/Ford/Escape\",
            \"Ford\\\\Fusion\\\\\": \"src/Ford/Fusion\",
            \"Ford\\\\Focus\\\\\": \"src/Ford/Focus\",
            \"Ford\\\\Fiesta\\\\\": \"src/Ford/Fiesta\"
        }
    }
}

4,创建相应的文件目录
目录结构

composer-car
- src
- - Ford
- - - Escape
- - - - Escape2016.php
- - - Fiesta
- - - - Fiesta2016.php
- - - Focus
- - - - Focus2016.php
- - - Fusion
- - - - Fusion2016.php
- .gitignore
- composer.json
- README.md

目录内容

<?php

namespace Ford\\Escape;

class Escape2016
{
    public static function info()
    {
        echo \"This is Ford Escape2016!<br />\";
    }
}
<?php
namespace Ford\\Fiesta; 

class Fiesta2016
{
    public function info()
    {
        echo \"This is Ford Fiesta2016!<br>\";
    }
}
<?php

namespace Ford\\Focus;
class Focus2016
{
    public function info()
    {
        echo \"This is Ford Focus2016!<br>\";
    }
}
<?php
namespace Ford\\Fusion;
class Fusion2016
{
    public function info()
    {
        echo \'This is Ford Fusion2016 !<br>\';
    }
}

5,安装测试composer install
注意:如果发布成packagist包然后进行安装的话,到时候这里就不是 Dir了而是vendorDir。

<?php

// autoload_psr4.php @generated by Composer

$vendorDir = dirname(dirname(__FILE__));
$ Dir = dirname($vendorDir);

return array(
    \'Ford\\\\Fusion\\\\\' => array($ Dir . \'/src/Ford/Fusion\'),
    \'Ford\\\\Focus\\\\\' => array($ Dir . \'/src/Ford/Focus\'),
    \'Ford\\\\Fiesta\\\\\' => array($ Dir . \'/src/Ford/Fiesta\'),
    \'Ford\\\\Escape\\\\\' => array($ Dir . \'/src/Ford/Escape\'),
);

6,过滤.gitignore

/vendor/
composer.lock

7,提交到github

git tag v1.0.0
git push origin --tags
git add .
git commit -am\"in order to build my packagist\"
git push

8,访问 packagist submit
\"在这里插入图片描述\"
9,submit
\"在这里插入图片描述\"
10,完成
11,使用

composer require 名称:分支

这里如果报错的

Could not find package awbeci/aliyun-dm at any version for your minimum-stability (stable). Check the p
  ackage spelling or your minimum-stability

那就是你没有安装指定分支,分支名称可在gihub上查看也可在packages你的项目右侧查看
\"在这里插入图片描述\"

收藏 打印