Tôi đang cố gắng sử dụng phần mở rộng Mercurial hg-git trên Windows (Windows 7 64 bit, để cụ thể). Tôi đã cài đặt Mercurial và Git. Tôi đã cài đặt Python 2.5 (32 bit).Làm thế nào để cài đặt đúng dulwich để có được hg-git hoạt động trên Windows?
Tôi đã làm theo hướng dẫn trên http://hg-git.github.com/ để cài đặt tiện ích. Các easy_install ban đầu thất bại vì nó đã không thể biên dịch Dulwich mà không Visual Studio 2003.
Tôi đã cài đặt bằng tay Dulwich bởi:
- git clone git: //git.samba.org/jelmer/dulwich.git
- cd Dulwich
- c: \ Python25 \ python setup.py --pure cài đặt
Bây giờ khi tôi chạy easy_install hg-git, nó thành công (vì phụ thuộc Dulwich được thỏa mãn).
Trong C của tôi: \ Users \ username \ Mercurial.ini, tôi có:
[extensions]
hgext.bookmarks =
hggit =
Khi tôi gõ 'hg' tại dấu nhắc lệnh, tôi thấy: "*** thất bại trong việc nhập khẩu mở rộng hggit: Không có mô-đun nào được đặt tên hggit "
Tìm trong thư mục c: \ Python25 của tôi, tham chiếu duy nhất để hggit tôi thấy là Lib\site-packages\hg_git-0.2.1-py2.5.egg
. Điều này có nghĩa vụ phải được trích xuất một nơi nào đó, hoặc nó nên làm việc như-là?
Vì điều đó không thành công, tôi đã thử hướng dẫn "có liên quan" từ trang hg-git gợi ý sao chép git: //github.com/schacon/hg-git.git và tham chiếu đường dẫn trong cấu hình Mercurial của tôi. Tôi nhân bản repo, và thay đổi tập tin mở rộng của tôi trông giống như:
[extensions]
hgext.bookmarks =
hggit = c:\code\hg-git\hggit
Bây giờ khi tôi chạy hg, tôi thấy: *** thất bại trong việc nhập khẩu mở rộng hggit từ c: \ đang \ hggit \ hggit: Không có mô đun nào có tên dulwich.errors.
Ok, do đó nói với tôi rằng nó là tìm hggit bây giờ, vì tôi có thể nhìn thấy trong hggit \ hggit \ git_handler.py mà nó gọi
from dulwich.errors import HangupException
Điều đó làm cho tôi suy nghĩ Dulwich không được cài đặt một cách chính xác hoặc không ở trong đường dẫn.
Cập nhật:
Từ Python dòng lệnh:
import dulwich
mang Import Error: No module named dulwich
Tuy nhiên, theo C: \ Python25 \ Lib \ site-packages, tôi có một dulwich- Thư mục 0.5.0-py2.5.egg dường như được điền. Điều này đã được tạo ra bởi các bước được đề cập ở trên. Có một bước bổ sung tôi cần phải thực hiện để làm cho nó một phần của con đường "Python"?
Từ dòng lệnh Python (như đề xuất trong một trong các câu trả lời):
import pkg_resources
pkg_resources.require('dulwich')
sản lượng [dulwich 0.5.0 (c:\python25\lib\site-packages\dulwich-0.5.0-py2.5.egg)]
Vậy điều đó cho tôi biết? Nhập dulwich không thành công, nhưng rõ ràng pkg_resources có thể tìm thấy nó. Tôi có thể làm gì với thông tin đó?
Trong một phiên Python tương tác, chạy: {{{ >>> import Dulwich >>> print Dulwich .__ version__ }}} gì cho thấy? – durin42
Đã thêm kết quả vào phần Cập nhật ở trên –