Làm cách nào để xuất bản lên Packagist?

Trong bài viết này, tôi sẽ chỉ cho bạn cách đóng gói Laravel của bạn vào Packagist để các nhà phát triển khác có thể tải xuống gói của bạn dễ dàng hơn với Composer

Packagist là gì?

Packagist là kho lưu trữ gói mặc định của nhà soạn nhạc giúp bạn tìm các gói và giúp các nhà soạn nhạc tìm nơi cung cấp chúng. Nhân tiện, khi bạn đăng ký gói của mình với Packagist, Packagist sẽ gán cho gói của bạn một tên duy nhất. Hầu hết các nhà phát triển có thể sử dụng tên đó để tải gói của bạn xuống dự án của họ thông qua trình soạn thảo mà không cần biết mã nguồn của bạn ở đâu

Bước 1. Đặt mã nguồn của bạn vào GitHub

Điều đầu tiên cần làm là bạn phải đưa mã nguồn của mình lên một dịch vụ lưu trữ máy chủ, bạn có thể sử dụng GitHub hoặc Bitbucket… Trong hướng dẫn này, tôi sẽ sử dụng GitHub. Sau khi đưa gói mã nguồn vào GitHub, bạn nhập cài đặt vào kho lưu trữ của gói

Bên cạnh Webhook & Dịch vụ

Tại màn hình này, vào Services, chọn Add Services và nhập gói vào trường bộ lọc, chọn dòng Packagist. Sau đó GitHub sẽ yêu cầu bạn nhập mật khẩu để xác nhận

Sau khi thêm dịch vụ thành công, phần dịch vụ sẽ thêm các gói sau

Ngoài ra, hãy đọc Câu hỏi và câu trả lời phỏng vấn hay nhất trên PHP Frameworks

Bước 2. Đặt tên cho gói

Bước tiếp theo là chọn tên cho gói của bạn. Đây là bước rất quan trọng vì tên gói không thể thay đổi và là duy nhất để tránh xung đột sau này

Tên gói bao gồm 2 phần là tên nhà cung cấp và tên dự án được nối với nhau bằng dấu “/”

vendor/package-name

Ví dụ: nếu tôi tạo một gói có tên là thanh trượt và tên của tôi là Sammer thì tôi sẽ đăng ký tên gói của mình với nhà đóng gói sammer/thanh trượt

Phần nhà cung cấp tồn tại để tránh xung đột. Ví dụ: nếu nhà phát triển tạo thanh trượt gói, anh ta có thể chọn somename/thanh trượt

Tên gói của bạn nằm trong trình soạn thảo của gói. json, ở dòng đầu tiên “tên”. “sammer/thanh trượt”

Bước 3. gửi gói

Bước cuối cùng bạn cần làm là đăng ký một tài khoản trên Packagist. Sau khi gửi nội dung gửi của bạn, hãy sao chép url của kho lưu trữ GitHub của bạn vào hộp URL Kho lưu trữ và nhấp vào kiểm tra. Pakagist sẽ kiểm tra xem có gói nào trùng tên với gói của bạn không, nếu không có thì tức là bạn đã đăng ký thành công gói của mình với packagist rồi đó

Lần này tôi đã tạo và xuất bản gói Trình soạn thảo, vì vậy tôi nghĩ sẽ chia sẻ các bước liên quan. [Ngoài ra một số mẹo dành riêng cho Laravel. ]

Sau đây là gói đã được xuất bản và tôi sẽ sử dụng nó làm ví dụ để giải thích
https. //github. com/mazraara/random-password

Chúng ta hãy bắt đầu ngay bây giờ

1. Tạo kho lưu trữ công khai trên GitHub

2. Tạo nhà soạn nhạc. json ở cấp cao nhất của kho lưu trữ

Với `composer init`, bạn có thể tạo một mẫu nhanh

{
"name": "mazraara/random-password",
"description": "Generate random password of a given length",
"type": "library",
"require": {
"php": ">=5.3.0"
},
"license": "proprietary",
"authors": [
{
"name": "Azraar Azward",
"email": "mazraara@gmail.com"
}
],
"minimum-stability": "dev"
}

3. Viết một bài đọc

Hãy chắc chắn bao gồm README cho người dùng ít nhất với những điều sau đây,

Tên của gói
Cài đặt thế nào
Cách sử dụng
Giấy phép [Chức năng GitHub có thể tạo tệp GIẤY PHÉP]

4. Viết mã gói

Hãy tạo một gói thực tế

Xin lưu ý những điểm sau

thư mục src không bắt buộc, nhưng có vẻ như bạn thường đặt mã trong thư mục
Viết càng nhiều bài kiểm tra càng tốt
Khi đã sẵn sàng, hãy thêm phần tự động tải vào trình soạn thảo. json để cho phép sử dụng không gian tên là RandomPassword\Password

"autoload": {
"psr-4": {
"RandomPassword\\": "src/RandomPassword/"
}

Mẹo cho gói Laravel

Trong Laravel 5. 5 trở lên, có một chức năng được gọi là tự động phát hiện tự động đăng ký ServiceProvider khi nó được tạo bởi chính nó

Viết phần sau vào phần bổ sung của nhà soạn nhạc. json

"extra": {
"laravel": {
"providers": [
"RandomPassword\\PasswordServiceProvider"
]
}
}

Khi phát triển các gói Laravel, bạn không thể sử dụng các tính năng dành riêng cho Laravel như bộ chứa dịch vụ, di chuyển, v.v. để viết bài kiểm tra, vì vậy cần sử dụng gói sau cho mục đích đó. dàn nhạc/bàn thử

"require-dev": {
"orchestra/testbench": "^3.8"
}

5. Cuối cùng, Đăng ký tại Packagist [https. // người đóng gói. tổ chức/]

Đăng ký bằng GitHub thật dễ dàng
Đăng ký kho lưu trữ tại https. // người đóng gói. tổ chức/gói/gửi
Đó là nó

Bây giờ gói của bạn sẽ có sẵn tại. https. //người đóng gói. org/gói/mazraara/mật khẩu ngẫu nhiên

Bạn có thể phiên bản gói của mình bằng git, sau đó người dùng có thể cài đặt với thông số thẻ và rất dễ bảo trì

Làm cách nào để xuất bản Trình soạn thảo PHP?

Hãy xem nào. .
Tạo tập tin soạn nhạc của bạn
Đăng ký không gian tên và trình tải tự động của bạn
Viết mã của bạn 🥳
Đẩy mã của bạn vào kho lưu trữ của bạn
Tạo một thẻ hoặc một phiên bản
Gửi gói của bạn tới Packagist [repo của các gói soạn nhạc]

Composer lấy các gói từ đâu?

Nhà soạn nhạc sẽ xem xét tất cả các kho lưu trữ của bạn để tìm các gói mà dự án của bạn yêu cầu. Theo mặc định, chỉ Packagist. kho lưu trữ org được đăng ký trong Composer. Bạn có thể thêm nhiều kho lưu trữ hơn vào dự án của mình bằng cách khai báo chúng trong trình soạn thảo. json.

Làm cách nào để sử dụng gói Composer trong PHP?

Để cài đặt và kích hoạt Composer, chỉ cần làm theo các bước sau. .
Kiểm tra xem PHP đã được cài đặt chưa. .
Cài đặt Composer trên Windows. .
Cài đặt Composer trên CentOS/RHEL/Ubuntu. .
Thiết lập Trình soạn thảo cho các Dự án PHP Mới. .
Tích hợp Thư viện vào Dự án PHP với Composer. .
Xóa Thư viện khỏi Dự án PHP. .
Phạm vi phiên bản. .
Phiên bản ký tự đại diện

Làm cách nào để cập nhật các phụ thuộc của Trình soạn thảo?

Để cập nhật các phụ thuộc, có thể sử dụng hai lệnh. yêu cầu cập nhật trình soạn nhạc và trình soạn nhạc . Sự khác biệt giữa hai lệnh này là bản cập nhật trình soạn thảo sẽ cố cập nhật một phụ thuộc dựa trên các ràng buộc hiện tại trong trình soạn thảo. json và sẽ chỉ cập nhật trình soạn thảo.

Chủ Đề