2017-08-01 9 views
15

Dzisiaj dostałem dziwny błąd w obrębie composer update, którego nie mogę opisać sam.Kompozytor - Żądany pakiet [0.0.9] istnieje jako [0,0 .5,0.0,6], ale są one odrzucane przez twoje ograniczenia.

{ 
    "repositories": { 
     "my-plugin": { 
      "type": "vcs", 
      "url": "[email protected]:mjplug/myplugin.git" 
     } 
    }, 
    "require": { 
     "my-plugin/myplugin": "0.0.9", 
    }  
} 

Kiedy próbuję composer update następnie Wezmę

The requested package my-plugin/my-plugin 0.0.9 exists as my-plugin/my-plugin[0.0.6, 0.0.5] but these are rejected by your constraint.

Ale istnieje znaczniki takie jak 0.0.7, 0.0.8, 0.0.9 w repozytorium. Dlaczego ich nie znaleziono?

Ustawienie ~0.0.1 jako ograniczenia wersji działa, ponieważ kompozytor zainstaluje 0.0.6.

Jakieś wskazówki? Dziękuję

EDIT: Oto zrzut ekranu z naszego Bitbucket Server Instancji: http://imgur.com/a/m8lRT

EDIT 2: ROZWIĄZANIA: W pewnym ostatniego wydania Włożyłem composer.json z jakiegoś powodu do podkatalogu. Problem polegał na tym, że kompozytor nie mógł znaleźć najnowszych tagów.

+2

Czy można sprawdzić z dlaczego nie dowodzić? 'composer why-not my-plugin/my-plugin 0.0.9' –

+0

Nie ma zainstalowanego pakietu w zależności od "my-plugin/my-plugin" w wersjach nie pasujących do 0.0.9 – kkern

+1

Możesz wpisać "EDIT 2" jako odpowiedź i zaakceptuj, aby po prostu zamknąć pytanie. –

Odpowiedz

1

ponieważ potrzebują Wordpress Plugin Files Aby znaleźć się w podfolderze, wszystkie pliki, w tym plik composer.json, umieszczam w podkatalogu i pcham nową wersję:

Później próbowałem zainstalować nową wersję wewnątrz mojego projektu i nowe wersje nie zostały znalezione. To był problem. Plik composer.json musi znajdować się w katalogu głównym. (Głupi ja)

Przydatne polecenia: composer show myplugin/myplugin

3

Composer pozwala używać gałęzi jako wersji, określając je jako dev-, więc dev-master odnosi się do gałęzi master. Jeśli chcesz określić konkretny tag, to idzie jak

"author/package": "dev-master#v1.1.0" 

także zobaczyć link:

LINK

Reference

+0

Myślę, że to nie problem. Naprawdę nie chcę używać gałęzi głównej, w której chcę używać znaczników istniejących w repozytorium. I nie wiem, dlaczego istnieje 0.0.6, ale 0.0.9 nie. Ale oba znaczniki znajdują się w repozytorium ... – kkern

+0

Po wszystkim trzeba utworzyć znacznik z określonej gałęzi. Spójrz także na pytanie, które wysłałem linku. Chodzi o używanie tagów jako numerów wersji. –

+0

Cześć tak, to powinno działać, ale nie działa. Sprawdzałem linki już wcześniej. Dziękujemy, ale nie wyjaśnia, dlaczego tag "0.0.6" działa, a 0.0.9 nie. Spójrz na mój zrzut edycyjny w wątku – kkern

3

Jak z opisem na Composer documentation chciałbym zaktualizować swoje tagi: v0.0.7, v0.0.8, v0.0.9 w Twoim oddziale głównym. W związku z tym powinien pomóc kompozytorowi w wypełnieniu tego, co zostało powiedziane:

Kompozytor prosi VCS o wyświetlenie wszystkich dostępnych znaczników, a następnie tworzy wewnętrzną listę dostępnych wersji na podstawie tych znaczników. W powyższym przykładzie wewnętrzna lista kompozytora obejmuje wersje 1.0, 1.0.1, 1.0.2, wersję beta 1.1, pierwsze i drugie wydanie wersji 1.1, wersję ostateczną 1.1, itd .... (Uwaga: kompozytor automatycznie usuwa „v” prefiks w rzeczywistej zmiennej, aby uzyskać poprawny końcowy numer wersji.

po tych tagów na swojego pana, twój "my-plugin/myplugin": "0.0.9" lub "my-plugin/myplugin": "0.0.*" etc powinny działać prawidłowo.

Powiązane problemy