Heim Entwicklungswerkzeuge composer Warum Aliase verwenden?

Warum Aliase verwenden?

Oct 28, 2019 pm 01:44 PM
composer

Die folgende Kolumne des Komponisten-Tutorials wird Ihnen die Gründe für die Verwendung von Filial-Aliassen vorstellen. Ich hoffe, dass es für Freunde in Not hilfreich sein wird!

Warum Aliase verwenden?

Warum Aliase verwenden?

Wenn Sie ein Versionskontrollsystem-Repository verwenden, können Sie eine vergleichbare Version nur aus Zweigen erhalten, die wie Versionen aussehen, z. B. 2.0 oder 2.0.x. Für den Master-Zweig erhalten Sie nur eine Dev-Master-Version. Für den Bugfix-Zweig erhalten Sie die Dev-Bugfix-Version.

Wenn Ihr Hauptzweig zur Kennzeichnung des Entwicklungsprozesses von 1.0 verwendet wird, z. B. 1.0.1, 1.0.2, 1.0.3 usw., benötigen Pakete, die von Ihrer Bibliothek abhängen, möglicherweise 1.0.*.

Wenn jemand den neuesten Dev-Master verwenden möchte, wird er auf ein Problem stoßen: Einige Pakete erfordern möglicherweise 1.0.*, sodass diese beiden Konflikte verursachen, da Dev-Master nicht mit 1.0.* übereinstimmt.

Basierend auf dem oben Gesagten erscheinen Aliase.

Branch-Alias

Der Dev-Master-Zweig ist einer im Haupt-VCS-Repository. Es ist üblich, dass einige Leute die neueste Hauptentwicklungsversion möchten. Daher ermöglicht Ihnen Composer, den Dev-Master-Zweig mit einem Alias ​​auf die 1.0.x-Dev-Version zu versehen. Dies erfolgt durch Angabe des Branch-Alias-Felds unter „Extra“ in Composer.json:

{
    "extra": {
        "branch-alias": {
            "dev-master": "1.0.x-dev"
        }
    }
}
Nach dem Login kopieren

Wenn es sich bei dem Alias ​​um eine nicht vergleichbare Version handelt (z. B. dev-develop), müssen Sie dem Branch-Namen dev- voranstellen. Sie können für vergleichbare Versionen auch Aliase hinzufügen (d. h. beginnend mit einer Zahl und endend mit .x-dev), jedoch nur als spezifischere Versionen. Beispielsweise kann 1.x-dev als 1.2.x-dev bezeichnet werden.

Der Alias ​​muss eine vergleichbare Entwicklungsversion sein und der Branch-Alias ​​muss in dem Zweig erscheinen, auf den er verweist. Für Dev-Master müssen Sie es im Master-Zweig festschreiben.

Viele Leute brauchen jetzt also 1.0.* und er wird gerne dev-master installieren.

Um einen Branch-Alias ​​zu verwenden, müssen Sie Eigentümer des Repositorys für das Alias-Paket sein. Wenn Sie einem Drittanbieterpaket einen Alias ​​hinzufügen möchten, ohne einen Fork davon zu verwalten, verwenden Sie Inline-Aliase, wie unten beschrieben.

Erfordert Inline-Aliase

Zweig-Aliase sind für Hauptentwicklungslinien nützlich. Um sie jedoch verwenden zu können, müssen Sie das Quell-Repository kontrollieren und Änderungen müssen der Versionskontrolle übergeben werden.

Es ist nicht sehr interessant, wenn Sie versuchen möchten, einen Fehler für eine Bibliothek zu beheben, die von Ihrem lokalen Projekt abhängig ist.

So können Sie Pakete in den Feldern require und require-dev mit Aliasen versehen. Angenommen, Sie finden einen Fehler im Paket monolog/monolog. Sie klonen Monolog auf GitHub und beheben das Problem in einem Zweig namens Bugfix. Jetzt möchten Sie diese Version von Monolog in Ihrem lokalen Projekt installieren.

Sie verwenden Symfony/Monolog-Bundle, das Monolog/Monolog Version 1.* erfordert. Daher müssen Sie dev-bugfix verwenden, um diese Einschränkung zu erfüllen.

Fügen Sie dies zum Root-Composer.json Ihres Projekts hinzu:

{
    "repositories": [
        {
            "type": "vcs",
            "url": "https://github.com/you/monolog"
        }
    ],
    "require": {
        "symfony/monolog-bundle": "2.0",
        "monolog/monolog": "dev-bugfix as 1.0.x-dev"
    }
}
Nach dem Login kopieren

Dadurch wird die Version des Dev-Bugfix von Monolog/Monolog von Ihrem Github abgerufen und mit einem Alias ​​auf 1.0.x -dev versehen.

Hinweis: Inline-Aliasing ist eine Nur-Root-Funktion. Wenn ein Paket mit einem Inline-Alias ​​erforderlich ist, verwenden Sie den Alias ​​(rechte Seite von as ) als Versionseinschränkung. Der linke Teil von as wird verworfen. Wenn A also B benötigt und B die Monolog-/Monolog-Version benötigt, ist dev-bugfix 1.0.x-dev , dann erfordert die Installation von A, dass B auch 1.0.x-dev benötigt, das als Zweigalias oder als tatsächliche Version 1.0 vorhanden sein kann Zweig. Wenn nicht, müssen Sie den Alias ​​erneut inline in A's „composer.json“ einfügen.

Hinweis: Die Verwendung von Inline-Aliasnamen sollte vermieden werden, insbesondere für veröffentlichte Pakete/Bibliotheken. Wenn Sie einen Fehler finden, versuchen Sie, Ihren Fix mit den Originalautoren zusammenzuführen. Dies wird dazu beitragen, Probleme für Benutzer Ihres Pakets zu vermeiden.

Weitere technische Artikel zu Composer finden Sie in der Tutorial-Spalte Composer-Befehl!

Das obige ist der detaillierte Inhalt vonWarum Aliase verwenden?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn

Heiße KI -Werkzeuge

Undresser.AI Undress

Undresser.AI Undress

KI-gestützte App zum Erstellen realistischer Aktfotos

AI Clothes Remover

AI Clothes Remover

Online-KI-Tool zum Entfernen von Kleidung aus Fotos.

Undress AI Tool

Undress AI Tool

Ausziehbilder kostenlos

Clothoff.io

Clothoff.io

KI-Kleiderentferner

Video Face Swap

Video Face Swap

Tauschen Sie Gesichter in jedem Video mühelos mit unserem völlig kostenlosen KI-Gesichtstausch-Tool aus!

Heiße Werkzeuge

Notepad++7.3.1

Notepad++7.3.1

Einfach zu bedienender und kostenloser Code-Editor

SublimeText3 chinesische Version

SublimeText3 chinesische Version

Chinesische Version, sehr einfach zu bedienen

Senden Sie Studio 13.0.1

Senden Sie Studio 13.0.1

Leistungsstarke integrierte PHP-Entwicklungsumgebung

Dreamweaver CS6

Dreamweaver CS6

Visuelle Webentwicklungstools

SublimeText3 Mac-Version

SublimeText3 Mac-Version

Codebearbeitungssoftware auf Gottesniveau (SublimeText3)

Beispiel für Laravel -Einführung Beispiel für Laravel -Einführung Apr 18, 2025 pm 12:45 PM

Laravel ist ein PHP -Framework zum einfachen Aufbau von Webanwendungen. Es bietet eine Reihe leistungsstarker Funktionen, darunter: Installation: Installieren Sie die Laravel CLI weltweit mit Komponisten und erstellen Sie Anwendungen im Projektverzeichnis. Routing: Definieren Sie die Beziehung zwischen der URL und dem Handler in Routen/Web.php. Ansicht: Erstellen Sie eine Ansicht in Ressourcen/Ansichten, um die Benutzeroberfläche der Anwendung zu rendern. Datenbankintegration: Bietet eine Out-of-the-Box-Integration in Datenbanken wie MySQL und verwendet Migration, um Tabellen zu erstellen und zu ändern. Modell und Controller: Das Modell repräsentiert die Datenbankentität und die Controller -Prozesse HTTP -Anforderungen.

Lösen Lösen Apr 18, 2025 am 09:24 AM

Bei der Entwicklung von Websites mit CraftCMS stoßen Sie häufig mit Ressourcendateiproblemen, insbesondere wenn Sie häufig CSS und JavaScript -Dateien aktualisieren, alte Versionen von Dateien möglicherweise weiterhin vom Browser zwischengespeichert. Dieses Problem wirkt sich nicht nur auf die Benutzererfahrung aus, sondern erhöht auch die Schwierigkeit der Entwicklung und des Debuggens. Kürzlich habe ich in meinem Projekt ähnliche Probleme gestoßen, und nach einigen Erkundungen fand ich das Plugin Wiejeben/Craft-Laravel-Mix, das mein Caching-Problem perfekt löste.

Verbesserung der Serialisierungseffizienz der Doktrin: Anwendung von Sidus/Doctrin-Serializer-Bundle Verbesserung der Serialisierungseffizienz der Doktrin: Anwendung von Sidus/Doctrin-Serializer-Bundle Apr 18, 2025 am 11:42 AM

Ich hatte ein schwieriges Problem, wenn ich an einem Projekt mit einer großen Anzahl von Leitungseinheiten arbeitete: Jedes Mal, wenn das Unternehmen serialisiert und deserialisiert wird, wird die Leistung sehr ineffizient, was zu einer signifikanten Zunahme der Systemantwortzeit führt. Ich habe mehrere Optimierungsmethoden ausprobiert, aber es funktioniert nicht gut. Glücklicherweise habe ich durch die Verwendung von Sidus/Doctrine-Serializer-Bunde dieses Problem erfolgreich gelöst und die Leistung des Projekts erheblich verbessert.

So vereinfachen Sie das E -Mail -Marketing mit Composer: Anwendungspraktiken von Duwa.io. So vereinfachen Sie das E -Mail -Marketing mit Composer: Anwendungspraktiken von Duwa.io. Apr 18, 2025 am 11:27 AM

Ich habe ein schwieriges Problem bei einer Mail -Marketing -Kampagne: So erstellen und senden Sie E -Mails im HTML -Format effizient. Der traditionelle Ansatz besteht darin, Code manuell zu schreiben und E-Mails mit einem SMTP-Server zu senden. Dies ist jedoch nicht nur zeitaufwändig, sondern auch fehleranfällige. Nachdem ich mehrere Lösungen ausprobiert hatte, entdeckte ich Duwa.io, eine einfache und benutzerfreundliche Wiederherstellung, die mir hilft, HTML-Mail schnell zu erstellen und zu senden. Um den Entwicklungsprozess weiter zu vereinfachen, habe ich beschlossen, Composer für die Installation und Verwaltung von Duwa.ios PHP -Bibliothek - Captaindoe/Duwa zu verwalten.

Laravel Framework Installationsmethode Laravel Framework Installationsmethode Apr 18, 2025 pm 12:54 PM

Artikelzusammenfassung: Dieser Artikel enthält detaillierte Schritt-für-Schritt-Anweisungen, um die Leser zu leiten, wie das Laravel-Framework einfach installiert werden kann. Laravel ist ein leistungsstarkes PHP -Framework, das den Entwicklungsprozess von Webanwendungen beschleunigt. Dieses Tutorial deckt den Installationsprozess von den Systemanforderungen bis zur Konfiguration von Datenbanken und das Einrichten von Routing ab. Durch die Ausführung dieser Schritte können die Leser schnell und effizient eine solide Grundlage für ihr Laravel -Projekt legen.

So erstellen Sie schnell Fecmall Advanced Project Templates mit Composer So erstellen Sie schnell Fecmall Advanced Project Templates mit Composer Apr 18, 2025 am 11:45 AM

Bei der Entwicklung einer E-Commerce-Plattform ist es entscheidend, das richtige Framework und Werkzeuge auszuwählen. Kürzlich, als ich versuchte, eine featurereiche E-Commerce-Website aufzubauen, stieß ich auf ein schwieriges Problem: wie ich schnell eine skalierbare und voll funktionsfähige E-Commerce-Plattform erstellen kann. Ich habe mehrere Lösungen ausprobiert und am Ende die erweiterte Projektvorlage von FecMall (FECMALL/FBBCBASE-APP-APMANCED) ausgewählt. Durch die Verwendung von Komponisten wird dieser Prozess sehr einfach und effizient. Komponist kann über die folgende Adresse gelernt werden: Lernadresse

Verwenden Sie den Komponisten, um das Dilemma von Empfehlungssystemen zu lösen: Andres-Montanez/Empfehlungen-Bundle Verwenden Sie den Komponisten, um das Dilemma von Empfehlungssystemen zu lösen: Andres-Montanez/Empfehlungen-Bundle Apr 18, 2025 am 11:48 AM

Bei der Entwicklung einer E-Commerce-Website habe ich auf ein schwieriges Problem gestoßen: So liefern Sie den Benutzern personalisierte Produktempfehlungen. Anfangs habe ich einige einfache Empfehlungsalgorithmen ausprobiert, aber die Ergebnisse waren nicht ideal und die Benutzerzufriedenheit war ebenfalls betroffen. Um die Genauigkeit und Effizienz des Empfehlungssystems zu verbessern, habe ich mich entschlossen, eine professionellere Lösung zu übernehmen. Schließlich habe ich Andres-Montanez/Empfehlungen durch den Komponisten installiert, was nicht nur mein Problem löste, sondern auch die Leistung des Empfehlungssystems erheblich verbesserte. Sie können Komponist über die folgende Adresse lernen:

Laravel -Installationscode Laravel -Installationscode Apr 18, 2025 pm 12:30 PM

Um Laravel zu installieren, befolgen Sie die folgenden Schritte: Installieren Sie den Komponisten (für MacOS/Linux und Windows). Installieren Sie LaRavel Installer. Erstellen Sie eine neue Projektstart -Service -Access -Anwendung (URL: http://127.0.0.1:8000).

See all articles