github - 講座 - 作曲 初心者 ソフト




作曲家にフォークを要求する方法 (4)

@Neilimeの答えが得られない場合は、フォークが別のブランチを使用していることを確認してください。

たとえば、フォークのmy-bugfixというブランチに変更をプッシュし、ブランチ名にdev-プレフィックスを追加せずに、composer.jsonに追加する必要があります。 あなたの作曲家のファイルは次のようになります:

"repositories":
[
    {
        "type": "vcs",
        "url": "http://github.com/yourname/packageName"
    }
],
"require": {
    "owner/packageName": "dev-my-bugfix"
},

ここに私のcomposer.jsonです、私はGithub上のlessphpプロジェクトのNodgeのフォークを使用したい

 "repositories": [{
    "type": "package",
    "package": {
        "version": "dev-master",
        "name": "nodge/lessphp",
        "source": {
            "url": "https://github.com/Nodge/lessphp.git",
            "type": "git",
            "reference": "master"
        },
        "autoload": {
            "classmap": ["lessc.inc.php"]
        }
    }
}],
"require": {
    "php": ">=5.3.3",
    "nodge/lessphp": "dev-master"
},

しかし、私はこのエラーが私は更新を行う:

nodge / lessphp dev-master - >一致するパッケージが見つかりません。

私はそれが正しくこのフォークを要求する方法を知らない...

助言がありますか ?


Composerのドキュメントhttp://getcomposer.org/doc/05-repositories.md#vcsによると、 require ( "nodge / lessphp"の場合)に元のリポジトリ(フォークではない)を指定すれば十分です。 Composerはあなたのフォークをインストールします(ベンダーのコードを見てください)


最も一般的な(そしてより簡単な)方法は、VCSリポジトリを使用することです。

フォークをリポジトリとして追加し、カスタム制約を指すようにバージョン制約を更新するだけです。 カスタムブランチ名の前にdev-付ける必要あります。

bugfixブランチのバグを修正するためにmonologをパッチしたと仮定した例:

{
    "repositories": [
        {
            "type": "vcs",
            "url": "https://github.com/igorw/monolog"
        }
    ],
    "require": {
        "monolog/monolog": "dev-bugfix"
    }
}

bugfixブランチを指定する以外はrequireステートメントを変更しないことに注意してください。 あなたはまだあなたの個人的なフォーク( igorw/monolog )ではなく 、アップストリームパッケージ( igorw/monolog )を参照します。 ドキュメントの詳細読むことができます


私は多くのオプションを試しましたが、私はこのポストを得た後、私は光を見て、それは完璧に働いた。

これはあなたがしなければならないことです:

1-フォーク・デ・リポジトリ

2-ブランチを作成し、必要な変更を行います。

3 - composer.jsonにリポジトリラベルを追加する

"repositories": [

        {
            "type": "vcs",
            "url": "https://github.com/user/yourforkname"
        }
    ]

4-プロジェクト内のコマンドラインで、forkを次のようにする必要があります。

composer require vendor/packagename:dev-branchname

そしてVoilá!!

フォークのバージョンが動作しています







git-fork