Tôi đang làm việc trên một usercript cho Firefox, vì vậy tôi sử dụng GreaseMonkey. Hơn nữa, để tạo thuận lợi cho sự phát triển, tôi sử dụng git để cập nhật các phiên bản khác nhau của mã của tôi.Làm thế nào để làm việc chính xác trên một người dùng GreaseMonkey bằng git?
Bây giờ, hãy để tôi cố gắng giải thích vấn đề.
Khi tôi thêm vào GreaseMonkey usercript từ thư mục git cục bộ của tôi, thì các tệp mới được tạo trong thư mục gm_scripts trong tiểu sử Firefox của tôi.
GreaseMonkey sử dụng các tệp này dưới dạng nguồn chứ không phải thư mục git của tôi, vì vậy nếu tôi muốn sửa đổi mã của mình và kiểm tra một số nội dung, tôi phải thay đổi tệp trong gm_scripts. Điều này có nghĩa rằng tôi không thể cam kết sửa đổi, trước tiên tôi phải sao chép các tập tin từ gm_scripts vào thư mục git của tôi. Điều này thực sự không tiện lợi.
Có một giải pháp khác. Tôi cũng có thể sửa đổi kịch bản từ thư mục git của tôi, và sau đó cài đặt lại nó vào GreaseMonkey bằng cách sử dụng một bookmark trỏ đến các tệp cục bộ này. Nhưng một lần nữa, điều này không có ích chút nào.
Điều tôi nghĩ thứ ba là xác định thư mục bên trong gm_scripts làm thư mục git của tôi. Thật không may, dự án của tôi chứa nhiều tệp mà tôi đã đặt hàng vào các thư mục và tôi muốn giữ nó sạch sẽ. Nhưng thêm một usercript vào GreaseMonkey làm cho tất cả các file được trích xuất từ thư mục của chúng.
Hơn nữa, dự án git của tôi không chỉ chứa các thư mục UserScript, có một số công cụ khác. Vì vậy, có lẽ không phải là một ý tưởng tốt để khai báo thư mục của gm_script như một nguồn cho git, đưa nhiều tệp vào gm_scripts trong khi chúng không liên quan gì đến usercript không phải là một phương pháp hay. Và nó không phải là bắt buộc phải làm việc trong một thư mục bị mất trong chiều sâu của hồ sơ Firefox của tôi.
Tôi muốn biết nếu có một kỹ thuật để làm việc hiệu quả và dễ dàng trên một dự án bao gồm cả GreaseMonkey và git.
Cảm ơn rất nhiều vì điều đó. Tôi cần phải làm một cái gì đó tương tự, nhưng trên Linux. Trong thiết lập của tôi, chỉ cần liên kết toàn bộ thư mục 'gm_scripts' bằng cách sử dụng tập lệnh Bash. Bằng cách đó tôi có thể quản lý toàn bộ thư mục dưới một repo GitHub. Tìm tập lệnh trong cùng một repo tại https://github.com/bgoodr/bgoodr-userscripts/blob/master/firefox/install_gm_scripts_dir_link.sh – bgoodr
Trên Windows, nó phải là một liên kết cứng (ví dụ:'mklink/H <><>'). Liên kết tượng trưng, là mặc định, không đủ khi nguồn liên kết là '<>' (tức là tệp thực sự tồn tại trong thư mục git). Tôi không kiểm tra xem git có bị nhầm lẫn hay không khi liên kết là một cách khác, với mục tiêu liên kết là '<>' (tức là tệp thực sự tồn tại trong * gm_scripts * với một liên kết quay lại nó trong thư mục git), nhưng cũng có thể cần một liên kết cứng với hướng đó. Windows không làm các liên kết tượng trưng một cách minh bạch, nhưng các liên kết cứng hoạt động. Thử nghiệm trên Win10 x64. –
Makyen