>  기사  >  개발 도구  >  Composer 소스 관리 도구 CRM을 Composer 플러그인으로 리팩터링하는 방법

Composer 소스 관리 도구 CRM을 Composer 플러그인으로 리팩터링하는 방법

藏色散人
藏色散人앞으로
2020-02-26 15:03:272032검색

Composer 소스 관리 도구 CRM을 Composer 플러그인으로 리팩터링하는 방법

CRM은 composer 소스를 관리하기 위해 오래전에 만든 명령줄 도구로, 간단한 명령을 통해 여러 중국 미러 간에 전환하여 쉽게 관리할 수 있도록 설계되었습니다. 저는 Composer 플러그인에 대해 잘 모르기 때문에 접근 방식이 다소 조잡합니다. 맨 아래 레이어에서는 소스 전환 목적을 달성하기 위해 Composer 명령을 실행합니다. Linux에서는 잘 작동하고 특별한 인식이 거의 없습니다. Win에서는 약간 느릴 것입니다. 이것은 또한 분명합니다. 전환할 때 동시에 여러 명령을 실행하는 것과 같습니다. 나중에 작업 기회로 인해 작곡가 플러그인 개발에 대해 알게 되었기 때문에 ​​​​리팩토링이 나왔습니다.

1.x 버전과 비교하여 2.x는 주로 다음과 같은 변경 사항이 있습니다.

메타데이터 저장 위치 변경

1.x 버전에서는 사용자 홈 아래에 있는 맞춤형 파일입니다. 폴더 및 모든 사용자 작업은 궁극적으로 이 json 파일에 유지됩니다. 새 버전에서는 작곡가 전역 경로인

{
    "config": {
        "_alias": {
            "val": "validate",
            "up": "update",
            "req-sf": "require symfony/event-dispatcher symfony/console",
            "req": "require",
            "i": "install"
        },
        "_repositories": [{
                "name": "composer",
                "url": "https://packagist.org",
                "homepage": "",
                "author": ""
            }, {
                "name": "phpcomposer",
                "url": "https://packagist.phpcomposer.com",
                "homepage": "",
                "author": ""
            }, {
                "name": "composer-proxy",
                "url": "https://packagist.composer-proxy.org",
                "homepage": "",
                "author": ""
            }, {
                "name": "laravel-china",
                "url": "https://packagist.laravel-china.org",
                "homepage": "",
                "author": ""
            }]
    },
    "repositories": {
        "packagist": {
            "type": "composer",
            "url": "https://packagist.laravel-china.org"
        }
    }
}

이 파일을 빌려서 그 안에 필드를 차지했습니다. 이는 또한 작곡가 생태계에 더 가깝습니다.

명령 변경

1.x 버전은 모두 crm 키워드로 시작합니다. 예를 들어 새 플러그인 버전인 crm입니다. 명령 공급자(명령 공급자) 역할이 되므로 새 버전에서는 작성기 항목을 사용합니다.

새 버전 사용

사용 가능한 모든 미러 목록

$ composer repo:ls
  composer       https://packagist.org
  phpcomposer    https://packagist.phpcomposer.com
* composer-proxy https://packagist.composer-proxy.org
  laravel-china  https://packagist.laravel-china.org

표시된 "*"는 현재 사용 중인 소스를 나타냅니다.

스위치 미러

$ composer repo:use
Please select your favorite registry (defaults to composer)
  [0] composer
  [1] phpcomposer
  [2] composer-proxy
  [3] laravel-china
 >

이미지 이름을 직접 추가하여 선택을 건너뛸 수도 있습니다.

$ composer repo:use phpcomposer

현재 프로젝트의 소스를 전환하려면 --current/-c 옵션을 추가하세요. 기본값은 전역 소스를 수정하는 것입니다.

모든 명령

다음 명령을 실행하여

$ composer repo

요약

을 확인하세요. 사용법 변경 외에도 새 버전에서 가장 크게 개선된 점은 속도 향상일 수 있습니다. 궁금한 점이 있으면 피드백을 주세요. 게시물 아래에 메시지를 남기거나 github 문제에 게시하세요.

이 작은 도구가 업무 개발에 있어 모든 사람에게 편리함을 가져다주길 바랍니다.

프로그래밍과 관련된 더 많은 내용은 PHP 중국어 홈페이지

프로그래밍 입문

칼럼을 주목해주세요!

위 내용은 Composer 소스 관리 도구 CRM을 Composer 플러그인으로 리팩터링하는 방법의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
이 기사는 segmentfault.com에서 복제됩니다. 침해가 있는 경우 admin@php.cn으로 문의하시기 바랍니다. 삭제