Rumah pembangunan bahagian belakang tutorial php Pakej Komposer Peribadi dengan Gemfury

Pakej Komposer Peribadi dengan Gemfury

Feb 19, 2025 am 09:19 AM

Private Composer Packages with Gemfury

mata utama

    Gemfury adalah penyelesaian platform-as-a-service (PAAS) untuk menganjurkan pakej komposer swasta, menyediakan alternatif kepada pilihan hosting diri seperti Toran Proxy atau Satis. Ia menyokong pelbagai bahasa termasuk Pakej Komposer PHP, Ruby Gems, Node.js NPM, Python Pypi, Apt, Yum, dan Nu-Get.
  • Untuk menggunakan Gemfury, anda perlu membuat akaun, membuat pakej, dan memuat naiknya ke platform. Ini boleh dilakukan dengan menggunakan Git dan mempunyai Gemfury mengendalikan selebihnya, atau dengan secara manual mengosongkan kod sumber pakej dan memuat naiknya di papan pemuka Gemfury.
  • anda boleh menambah repositori peribadi anda ke fail
  • projek anda. Ini membolehkan anda menggunakan mana -mana pakej komposer peribadi yang anda buat dengan Gemfury tanpa menambah repositori berasingan setiap kali anda mahu menggunakan pakej tersebut. composer.json
  • Gemfury juga menyediakan alat baris arahan untuk menguruskan pakej anda. Alat ini membolehkan anda menyenaraikan pakej anda, melihat versi pakej tertentu, dan banyak lagi. Anda boleh memasangnya menggunakan arahan
  • . sudo gem install gemfury
Katakan anda sudah biasa dengan komposer, ini adalah pengurus pakej PHP yang terbaru dan mungkin. Jika tidak, lihat pengenalan Alexander dan saya pasti anda akan segera tertarik kepadanya. Anda perlu mempunyai pengetahuan yang bekerja untuk memanfaatkan artikel ini.

Komposer berfungsi dengan cekap dan lancar dengan Packagist, repositori pakej awam yang komprehensif.

Walau bagaimanapun, lambat laun, anda akan menemui pakej yang anda tulis sendiri, yang atas sebab tertentu tidak boleh menjadi sumber terbuka dan dikongsi secara percuma melalui Packagist.

Terdapat beberapa pilihan untuk menganjurkan pakej peribadi ini. Anda boleh mengkonfigurasi fail

projek dengan menambah repositori pakej secara berasingan. Sebagai alternatif, Satis membolehkan anda menjana repositori statik anda sendiri. Sebagai alternatif, proksi Toran membolehkan anda membuat versi pembungkus peribadi yang dihoskan sendiri yang, sekali ditubuhkan, lebih mudah untuk dikendalikan daripada menentukan repositori dalam

anda. composer.json composer.json Gemfury adalah alternatif PaaS. Selain daripada ketenangan fikiran (walaupun perlu dibayar) bahawa penyelesaian yang dihoskan adalah kelebihan besar yang menyokong bukan sahaja pakej komposer PHP, tetapi juga permata Ruby, Node.js NPM, Python Pypi, APT, dan NU -Get. Ini sangat berguna jika anda mempunyai pelbagai bahasa.

mari kita menyelam cara menggunakannya.

Sediakan akaun anda

Pertama sekali, anda memerlukan akaun. Terdapat tempoh percubaan 14 hari, dengan akaun percuma terhad kepada satu kolaborator dan pakej hosting, dan pelbagai rancangan lain bermula pada $ 9 sebulan.

anda boleh mendaftar menggunakan alamat e -mel atau akaun github anda. Pergi ke laman web untuk mendaftar.

Buat pakej pertama anda

3

Cara paling mudah untuk membuat pakej baru ialah menggunakan arahan berikut:

composer init
Salin selepas log masuk
Salin selepas log masuk

Ia meminta anda satu siri soalan;

<code>...  (此处省略与原文相同的composer init交互过程) ...</code>
Salin selepas log masuk
Salin selepas log masuk
Seperti yang anda lihat, kami membuat pakej mudah dengan hanya satu Faker Ketergantungan.

Seterusnya, mari tambahkan garis ke

yang baru dibuat dan beritahu di mana untuk mencari kod sumber pakej. composer.json

"autoload": {        
    "psr-0": {
        "Acme\": "src/"
    }
},
Salin selepas log masuk
Salin selepas log masuk
Sekarang mari kita buat pakej itu sendiri. Kami akan membuat kelas dengan hanya satu tujuan;

Dalam direktori kerja anda, buat direktori

dan src, dan kemudian buat fail berikut bernama src/Acme: Coupon.php

<?php namespace Acme;

use Faker\Factory;

class Coupon {

    public static function generate($percent) 
    {
        $faker = Factory::create();

        return sprintf('%s-%s-%d',
            strtoupper(date('M')),
            strtoupper($faker->word()),
            intval($percent));
    }

}
Salin selepas log masuk
Salin selepas log masuk
Jalankan sekarang

untuk memuatkan satu -satunya kebergantungan dan konfigurasikan autoloader. composer install

Ini adalah pakej yang kami bina. Sekarang muat naik ke Gemfury.

Untuk meneruskan, anda memerlukan kunci API anda. Jika anda pergi ke papan pemuka anda, anda akan mendapatinya di bawah tetapan.

Cara paling mudah untuk membina dan memuat naik pakej adalah dengan hanya menggunakan git dan membiarkan Gemfury mengendalikan yang lain.

pertama membuat fail

dengan kandungan berikut: .gitignore

<code>vendor/
composer.lock</code>
Salin selepas log masuk
Salin selepas log masuk
memulakan repositori sekarang:

git init
Salin selepas log masuk
Tambah fail:

Sekarang kita akan menambah repositori jauh git. Anda boleh mencari URL yang relevan dengan memilih bermula di papan pemuka Gemfury dan kemudian memilih tab PHP Composer. Ia akan kelihatan seperti ini:
git add src
git add composer.json
Salin selepas log masuk

Pastikan untuk menggantikan
<code>https://your-username@git.fury.io/your-username/<package-name>.git</code>
Salin selepas log masuk
dengan nama pengguna Gemfury anda (jika anda mendaftar dengan GitHub, ia akan sama dengan nama pengguna GitHub anda) dan tambahkannya sebagai repositori jauh:

your-username

Pada ketika ini, anda mempunyai dua pilihan. Yang pertama adalah menggunakan kawalan versi eksplisit, di mana anda menentukan versi dalam fail
git remote add fury https://your-username@git.fury.io/your-username/coupon.git
Salin selepas log masuk
, seperti yang ditunjukkan di bawah:

composer.json

{
    "name": "your-username/coupon",
    "description": "Generates a coupon code",
        "version": "1.0.0",
    ...
Salin selepas log masuk
Adalah penting bahawa anda menggunakan versi semantik. Jika tidak, pakej anda tidak boleh dibina dengan betul; ini juga boleh membawa kepada beberapa mesej ralat yang aneh.

atau, anda boleh menggunakan tag git. Sebagai contoh, buat versi baru dengan tag, seperti yang ditunjukkan di bawah:

tidak kira kaedah mana yang anda ambil, langkah seterusnya adalah menyerahkan:
git tag -a 1.0.0 -m "Version 1.0.0"
Salin selepas log masuk

Akhirnya, jalankan arahan berikut:
git commit -a -m "Initial commit"
Salin selepas log masuk

Ini menolak kod anda ke Gemfury, yang kemudiannya akan membinanya secara automatik ke dalam pakej.
git push fury master --tags
Salin selepas log masuk

Sekarang jika anda pergi ke papan pemuka anda, anda harus melihat bahawa repositori baru anda disenaraikan. Seterusnya, mari kita lihat bagaimana anda menggunakannya dalam projek anda.

Menggunakan pakej peribadi

Jika anda kembali ke papan pemuka dan pilih "Repos" di sebelah kiri, anda akan menemui URL Repositori Swasta anda. Ini harus disimpan secara peribadi, jadi sila selamatkannya. Ia akan kelihatan seperti ini:

Ia adalah
<code>https://php.fury.io/SECRET-CODE/your-username/</code>
Salin selepas log masuk
yang menjadikannya tidak dapat diramalkan dan oleh itu sebenarnya peribadi.

SECRET-CODE tambahkan sekarang ke projek anda

:

composer init
Salin selepas log masuk
Salin selepas log masuk

Anda hanya perlu menambah repositori ini untuk menggunakan mana -mana pakej komposer peribadi yang anda buat dengan Gemfury. Tidak perlu menambah repositori berasingan setiap kali anda mahu menggunakan pakej tersebut.

Sekarang anda boleh memerlukan pakej peribadi anda seperti yang anda lakukan pada Packagist. Berikut adalah contoh lengkap projek composer.json:

<code>...  (此处省略与原文相同的composer init交互过程) ...</code>
Salin selepas log masuk
Salin selepas log masuk

Kaedah lain

secara peribadi, saya percaya bahawa menggunakan Git dan Tags adalah cara yang paling mudah dan paling berkesan untuk menguruskan pakej.

atau, jika anda lebih suka, anda boleh membinanya sendiri dengan zipping kod sumber pakej dan memuat naiknya di papan pemuka Gemfury.

alat baris perintah

Gemfury juga menyediakan alat baris arahan. Untuk memasangnya:

"autoload": {        
    "psr-0": {
        "Acme\": "src/"
    }
},
Salin selepas log masuk
Salin selepas log masuk

Untuk menyenaraikan pakej anda, anda boleh menggunakan arahan berikut:

<?php namespace Acme;

use Faker\Factory;

class Coupon {

    public static function generate($percent) 
    {
        $faker = Factory::create();

        return sprintf('%s-%s-%d',
            strtoupper(date('M')),
            strtoupper($faker->word()),
            intval($percent));
    }

}
Salin selepas log masuk
Salin selepas log masuk

untuk melihat versi pakej tertentu:

<code>vendor/
composer.lock</code>
Salin selepas log masuk
Salin selepas log masuk

Untuk maklumat lanjut mengenai CLI, sila lawati bahagian dokumentasi yang berkaitan.

Ringkasan

Dalam artikel ini, saya memperkenalkan Gemfury, salah satu daripada banyak pilihan untuk menguruskan repositori swasta. Sebagai penyelesaian PaaS, ia tidak memerlukan beban tambahan pilihan hosting diri seperti Toran dan lebih mudah digunakan daripada Satis. Ia juga mempunyai kelebihan besar pakej sokongan dalam pelbagai bahasa, dari pakej komposer PHP ke Ruby Gems dan Node.js NPM. Sudah tentu, sebagai penyelesaian PaaS, ia perlu membayarnya - tetapi mengapa tidak mencuba dengan percubaan percuma atau pelan pakej tunggal percuma untuk melihat sama ada ia sesuai untuk anda?

(Bahagian FAQ asal ditinggalkan di sini kerana bahagian ini adalah soalan yang sering ditanya, dan ia mempunyai pengulangan yang tinggi dari kandungan utama artikel itu, dan nilainya tidak tinggi selepas pseudo-asal.)

Atas ialah kandungan terperinci Pakej Komposer Peribadi dengan Gemfury. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn

Alat AI Hot

Undresser.AI Undress

Undresser.AI Undress

Apl berkuasa AI untuk mencipta foto bogel yang realistik

AI Clothes Remover

AI Clothes Remover

Alat AI dalam talian untuk mengeluarkan pakaian daripada foto.

Undress AI Tool

Undress AI Tool

Gambar buka pakaian secara percuma

Clothoff.io

Clothoff.io

Penyingkiran pakaian AI

Video Face Swap

Video Face Swap

Tukar muka dalam mana-mana video dengan mudah menggunakan alat tukar muka AI percuma kami!

Artikel Panas

<🎜>: Bubble Gum Simulator Infinity - Cara Mendapatkan dan Menggunakan Kekunci Diraja
3 minggu yang lalu By 尊渡假赌尊渡假赌尊渡假赌
Nordhold: Sistem Fusion, dijelaskan
4 minggu yang lalu By 尊渡假赌尊渡假赌尊渡假赌
Mandragora: Whispers of the Witch Tree - Cara Membuka Kunci Cangkuk Bergelut
3 minggu yang lalu By 尊渡假赌尊渡假赌尊渡假赌

Alat panas

Notepad++7.3.1

Notepad++7.3.1

Editor kod yang mudah digunakan dan percuma

SublimeText3 versi Cina

SublimeText3 versi Cina

Versi Cina, sangat mudah digunakan

Hantar Studio 13.0.1

Hantar Studio 13.0.1

Persekitaran pembangunan bersepadu PHP yang berkuasa

Dreamweaver CS6

Dreamweaver CS6

Alat pembangunan web visual

SublimeText3 versi Mac

SublimeText3 versi Mac

Perisian penyuntingan kod peringkat Tuhan (SublimeText3)

Topik panas

Tutorial Java
1670
14
Tutorial PHP
1274
29
Tutorial C#
1256
24
Terangkan hashing kata laluan yang selamat di PHP (mis., Password_hash, password_verify). Mengapa tidak menggunakan MD5 atau SHA1? Terangkan hashing kata laluan yang selamat di PHP (mis., Password_hash, password_verify). Mengapa tidak menggunakan MD5 atau SHA1? Apr 17, 2025 am 12:06 AM

Dalam php, kata laluan_hash dan kata laluan 1) password_hash menjana hash yang mengandungi nilai garam untuk meningkatkan keselamatan. 2) Kata Laluan_verify Sahkan kata laluan dan pastikan keselamatan dengan membandingkan nilai hash. 3) MD5 dan SHA1 terdedah dan kekurangan nilai garam, dan tidak sesuai untuk keselamatan kata laluan moden.

PHP dan Python: Membandingkan dua bahasa pengaturcaraan yang popular PHP dan Python: Membandingkan dua bahasa pengaturcaraan yang popular Apr 14, 2025 am 12:13 AM

PHP dan Python masing -masing mempunyai kelebihan mereka sendiri, dan memilih mengikut keperluan projek. 1.PHP sesuai untuk pembangunan web, terutamanya untuk pembangunan pesat dan penyelenggaraan laman web. 2. Python sesuai untuk sains data, pembelajaran mesin dan kecerdasan buatan, dengan sintaks ringkas dan sesuai untuk pemula.

PHP dalam Tindakan: Contoh dan aplikasi dunia nyata PHP dalam Tindakan: Contoh dan aplikasi dunia nyata Apr 14, 2025 am 12:19 AM

PHP digunakan secara meluas dalam e-dagang, sistem pengurusan kandungan dan pembangunan API. 1) e-dagang: Digunakan untuk fungsi keranjang belanja dan pemprosesan pembayaran. 2) Sistem Pengurusan Kandungan: Digunakan untuk penjanaan kandungan dinamik dan pengurusan pengguna. 3) Pembangunan API: Digunakan untuk Pembangunan API RESTful dan Keselamatan API. Melalui pengoptimuman prestasi dan amalan terbaik, kecekapan dan pemeliharaan aplikasi PHP bertambah baik.

Bagaimanakah jenis membayangkan jenis PHP, termasuk jenis skalar, jenis pulangan, jenis kesatuan, dan jenis yang boleh dibatalkan? Bagaimanakah jenis membayangkan jenis PHP, termasuk jenis skalar, jenis pulangan, jenis kesatuan, dan jenis yang boleh dibatalkan? Apr 17, 2025 am 12:25 AM

Jenis PHP meminta untuk meningkatkan kualiti kod dan kebolehbacaan. 1) Petua Jenis Skalar: Oleh kerana Php7.0, jenis data asas dibenarkan untuk ditentukan dalam parameter fungsi, seperti INT, Float, dan lain -lain. 2) Return Type Prompt: Pastikan konsistensi jenis nilai pulangan fungsi. 3) Jenis Kesatuan Prompt: Oleh kerana Php8.0, pelbagai jenis dibenarkan untuk ditentukan dalam parameter fungsi atau nilai pulangan. 4) Prompt jenis yang boleh dibatalkan: membolehkan untuk memasukkan nilai null dan mengendalikan fungsi yang boleh mengembalikan nilai null.

Relevannya PHP: Adakah ia masih hidup? Relevannya PHP: Adakah ia masih hidup? Apr 14, 2025 am 12:12 AM

PHP masih dinamik dan masih menduduki kedudukan penting dalam bidang pengaturcaraan moden. 1) kesederhanaan PHP dan sokongan komuniti yang kuat menjadikannya digunakan secara meluas dalam pembangunan web; 2) fleksibiliti dan kestabilannya menjadikannya cemerlang dalam mengendalikan borang web, operasi pangkalan data dan pemprosesan fail; 3) PHP sentiasa berkembang dan mengoptimumkan, sesuai untuk pemula dan pemaju yang berpengalaman.

PHP dan Python: Paradigma yang berbeza dijelaskan PHP dan Python: Paradigma yang berbeza dijelaskan Apr 18, 2025 am 12:26 AM

PHP terutamanya pengaturcaraan prosedur, tetapi juga menyokong pengaturcaraan berorientasikan objek (OOP); Python menyokong pelbagai paradigma, termasuk pengaturcaraan OOP, fungsional dan prosedur. PHP sesuai untuk pembangunan web, dan Python sesuai untuk pelbagai aplikasi seperti analisis data dan pembelajaran mesin.

PHP dan Python: Contoh dan perbandingan kod PHP dan Python: Contoh dan perbandingan kod Apr 15, 2025 am 12:07 AM

PHP dan Python mempunyai kelebihan dan kekurangan mereka sendiri, dan pilihannya bergantung kepada keperluan projek dan keutamaan peribadi. 1.PHP sesuai untuk pembangunan pesat dan penyelenggaraan aplikasi web berskala besar. 2. Python menguasai bidang sains data dan pembelajaran mesin.

Bagaimana anda menghalang suntikan SQL di PHP? (Penyataan yang disediakan, PDO) Bagaimana anda menghalang suntikan SQL di PHP? (Penyataan yang disediakan, PDO) Apr 15, 2025 am 12:15 AM

Menggunakan penyataan preprocessing dan PDO dalam PHP secara berkesan dapat mencegah serangan suntikan SQL. 1) Gunakan PDO untuk menyambung ke pangkalan data dan tetapkan mod ralat. 2) Buat kenyataan pra -proses melalui kaedah menyediakan dan lulus data menggunakan ruang letak dan laksanakan kaedah. 3) Hasil pertanyaan proses dan pastikan keselamatan dan prestasi kod.

See all articles