Tôi đang quản lý $ HOME bằng Mercurial, để giữ cho các dấu chấm của tôi đẹp và được theo dõi, hoặc ít nhất là những thứ quan trọng với tôi.Làm cách nào để bỏ qua tất cả các thư mục ngoại trừ một thư mục sử dụng .hgignore?
Tuy nhiên, có rất nhiều tệp và thư mục trong ~ không cần phải theo dõi và tập hợp đó luôn thay đổi và phát triển.
Về mặt lịch sử, tôi đã giải quyết điều này bằng cách .hgignore này:
syntax: glob
*
Điều này sẽ giúp tình trạng của tôi sạch sẽ, như xa như nó đi, làm cho chỉ trước các file có thể nhìn thấy được theo dõi. Tuy nhiên, tôi có một số thư mục (trong trường hợp của tôi, scripts
, .emacs.d
) mà tôi muốn xem các tập tin không được theo dõi trong; Tôi gần như luôn luôn muốn theo dõi các bổ sung mới cho những thư mục đó.
Tôi biết rằng tôi có thể chạy hg st -u scripts
để xác định các tệp không được theo dõi, nhưng tôi muốn phương tiện theo đó tôi có thể đạt được cùng chức năng sử dụng trạng thái ole hg thuần túy.
Có cách nào để thực hiện việc này không?
Đây là giải pháp tối đa, nhưng tất cả các tệp trong ~ vẫn được hiển thị, tại _least_ là nhiễu. Tôi không theo dõi tất cả các dotfile (không ít nhất trong số đó bởi vì rất nhiều gói nhấn mạnh vào thả chúng trong thư mục ~ của tôi). –
Trừ khi bạn có thể sử dụng các mẫu tên tập tin để phân biệt các dấu chấm (để bỏ qua) từ các thư mục (không bị bỏ qua), tôi nghĩ bạn không may mắn. Tài liệu Mercurial nói rằng nếu một đường dẫn 'a/b/c' không khớp với mẫu' .ggignore', cùng một mẫu được thử với cả 'a/b' và nếu thất bại,' a'. Vì vậy, các tệp và thư mục trong thư mục gốc chỉ có thể được phân biệt theo cách chúng được viết. Nếu chỉ một vài thư mục được theo dõi bắt đầu bằng một dấu chấm, thì bạn có thể thêm thủ công những thứ đó và '.ggignore' mọi thứ khác bắt đầu bằng một dấu chấm. – shambulator