2013-10-18 13 views
10

Khi tạo một phân phối nguồn sử dụng setuptools python (python setup.py sdist), tôi đang sử dụng một tập tin MANIFEST.in chứa dòng:Bỏ qua các liên kết tượng trưng trong trình thiết lập MANIFEST.in?

recursive-include mypackage

vì tôi muốn bao gồm một số tác phẩm phi mô-đun bên trong thư mục mypackage. Tuy nhiên, cũng có các liên kết tượng trưng trong thư mục mypackage có các mục tiêu mà tôi không muốn đưa vào phân phối nguồn của mình. Có cách nào để chỉ định "bỏ qua các liên kết tượng trưng" bên trong MANIFEST.in không?

Tôi biết ... Tôi có lẽ không nên có các liên kết tượng trưng đó.

+0

Có thể bạn có thể loại trừ chúng bằng cách chạy hàm chuyển 'MANIFEST_template.in' thành' MANIFEST.in' khi bắt đầu 'setup.py'? Quét tìm các liên kết tượng trưng với thông tin từ [bài đăng này] (http://stackoverflow.com/questions/17889368/if-path-is-symlink-to-another-path). Sẽ là tốt đẹp nếu có một lựa chọn như vậy, mặc dù. – greschd

+2

Theo hiểu biết tốt nhất của tôi, bạn nên tránh sử dụng 'mypackage' bao gồm đệ quy để bao gồm mọi thứ trong gói của bạn. Điều này có thể nhận được rất nhiều điều bạn thực sự không muốn bao gồm trong bản phân phối của bạn. Bạn nên liệt kê các tệp cụ thể nếu chúng ít và đặc biệt hoặc bao gồm các tệp đó theo tiện ích hoặc mẫu tên tệp khác, ví dụ: 'đệ quy-bao gồm mypackage * .mydataformat'. – taleinat

+1

Nếu bạn biết các liên kết tượng trưng, ​​bạn có thể thêm 'exclude's' sau 'recursive-include' trong' MANIFEST.in' - các chỉ thị được đánh giá theo thứ tự. – fpbhb

Trả lời

3

Các dấu hiệu không cung cấp bất kỳ xử lý đặc biệt nào của các liên kết tượng trưng. Bạn có thể xem qua distutils code và thấy rằng việc xử lý tệp MANIFEST.in đang thực hiện đối sánh mẫu đơn giản, sử dụng os.listdir đệ quy, mà không cần xử lý đặc biệt cho các liên kết tượng trưng.

+3

Bạn có thể muốn chỉnh sửa câu trả lời này để làm rõ rằng điều này có nghĩa là "không" đối với câu hỏi ban đầu của tôi - không thể nói các distutils bỏ qua các liên kết vì nó không biết về chúng. – foobarbecue

Các vấn đề liên quan