2013-07-15 33 views
6

Tôi đang sử dụng nhà soạn nhạc như quản lý sự phụ thuộc của tôi và kể từ khi tôi cần phải phát triển với Yii Khung tôi đã thêm nó vào tập tin composer.json tôi, vì vậy nó trông như thế này:Composer và Yii

//other properties... 
"require": { 
    //other dependencies... 
    "yiisoft/yii": "dev-master" 
} 

Composer.json là ok, Yii đã tải xuống chính xác, nhưng có một tính năng mà tôi nghĩ rằng nhà soạn nhạc đã bỏ lỡ. Thư mục yii của tôi hiện có đầy đủ các thư mục "rác", thư mục demo, xây dựng các tệp bla bla mà tôi không thực sự cần. Có cách nào để nói với nhà soạn nhạc chỉ giữ một số thư mục và vứt bỏ những thư mục khác?

Trả lời

3

Với nhà soạn nhạc, chúng tôi làm việc theo một cách khác. Với nhà soạn nhạc, ứng dụng của chúng tôi chỉ chăm sóc mã của nó. Trong thực tế, nếu bạn kork với git, bạn phải thêm thư mục yii vào .gitignore couse không phải là thư mục ứng dụng của bạn. Đây là cách symfony.

Còn về Yii !? Trước hết, tôi đề nghị bạn bắt đầu các dự án yii với:

$ composer create-project yiisoft/yii path/to/your/project 

Đây là cách để làm việc với nhà soạn nhạc. Sau đó, khi bạn kết thúc để dowload yii, nhà soạn nhạc sẽ hỏi bạn xem bạn có muốn giữ hay không tập tin git của yii. Bạn chỉ có thể nói không và xóa các tệp này theo cách thủ công. Bạn cũng có thể thử nĩa yiisoft/yii và cải thiện hành vi này để loại bỏ các chất liệu này sẽ tự động xảy ra.

+0

Tôi đã một cấu trúc ứng dụng tùy chỉnh sử dụng Yii, với mục nhà cung cấp cho phụ thuộc của tôi (có sẽ đi yiisoft/yii và có nó là git bỏ qua) và thư mục ứng dụng cho "tiểu ứng dụng" của tôi như phụ trợ, giao diện người dùng, vv .. (rất giống với cấu trúc yii2). Tuy nhiên tôi chỉ muốn giữ thư mục khung thay vì toàn bộ kho lưu trữ. – th3n3rd

+0

Không tồn tại một kho lưu trữ chỉ với khung công tác. Chỉ cần ngã ba 1.1.14 dự án và loại bỏ tất cả các chất liệu bạn không cần. Dễ thôi. – sensorario

+1

sử dụng kho lưu trữ không chính thức có vẻ là một giải pháp không tốt, tôi có nghĩa là nó chỉ ok tôi tự ngã chính thức và loại bỏ tất cả các công cụ "vô ích", sau đó tôi sẽ phụ thuộc vào kho lưu trữ của riêng mình! – th3n3rd

2

Tôi đã có cùng một vấn đề chính xác, vì vậy tôi đã kết thúc repackaging Yii để nó chỉ chứa thư mục khung. Nó làm giảm gói bởi ~ 10Mb. Đây là link to the github repo.

Chỉ cần thêm phần sau vào tệp composer.json của bạn.

{ 
    "require": { 
     "square1-io/yii-framework": "1.1.14" 
    } 
} 

Sau đó chạy:

$ composer install 

Tôi đã ném lên một bài đăng blog về nó: http://blog.square1.io/post/60830077608/yii-1-1-14-via-composer

+0

đó là một giải pháp nhưng nó chỉ buộc tôi đóng gói lại yii ở mỗi bản phát hành mới, tuy nhiên, 1 cho giải pháp của bạn. – th3n3rd