2012-06-12 46 views
15

Tôi muốn tìm kiếm một cụm từ cụ thể (ví dụ "dấu phẩy_delimited") trong một tệp cụ thể (ví dụ "index.php") trong một nhánh cụ thể (ví dụ: "ABC-123"). Lý do cho điều này là, văn bản đó không còn trong tập tin, và tôi muốn xem tại đó cam kết nó đã được đưa ra, mà không nhìn vào mọi sửa đổi của tập tin này trên chi nhánh này.cách sử dụng các công cụ tìm kiếm của rùa?

Có cách nào để thực hiện điều này trong tortoisehg không? Tôi thấy có nút Tìm kiếm xuất hiện bảng tìm kiếm nơi bạn có thể nhập các mẫu, nhưng tôi không biết cách sử dụng nó (và không biết cách viết mẫu) và sau khi tìm kiếm được một thời gian, không thấy hữu ích thông tin về nó.

Cảm ơn

Trả lời

11

Có hai nút tìm kiếm - một để tìm kiếm kho lưu trữ và nút kia là lọc biểu đồ sửa đổi. Có lẽ bạn đã ép sai?

Nếu bạn sử dụng menu để chọn Xem/Tìm kiếm, hãy chọn chế độ xem tìm kiếm mà bạn muốn.

Nó sẽ cho bạn thấy một bảng lớn bên dưới đồ thị sửa đổi với một số điều khiển để điền vào.

  • Enter "comma_delimited" vào chỉnh sửa kiểm soát đầu tiên (trên cùng một dòng như tìm kiếm và Stop ở bên phải)
  • Chọn nút radio "Tất cả lịch sử" bên dưới kiểm soát chỉnh sửa đó.
  • Nhập **index.php vào chỉnh sửa kiểm soát nhãn "Bao gồm" (hoặc đường dẫn đầy đủ đến index.php nếu bạn có nhiều hơn một và muốn giới hạn việc tìm kiếm một tập tin cụ thể)
  • Nhấn nút Tìm kiếm

Danh sách ở dưới cùng của cửa sổ bây giờ sẽ hiển thị chi tiết của các phiên bản bao gồm cụm từ đó. Nó sẽ hiển thị khi nó đã được bổ sung (bắt đầu bằng một '+') và khi nó đã được gỡ bỏ (bắt đầu bằng một '-')

Dưới đây là một cửa sổ ví dụ tìm kiếm: Example search window

+0

kho lưu trữ của tôi có lịch sử rất lớn với nhiều chi nhánh, tôi không muốn tìm kiếm mọi sửa đổi của index.php, chỉ những thay đổi được thực hiện nhánh này. điều đó có thể không? –

+0

Dường như không có tùy chọn đó từ giao diện người dùng. Chỉ cần nhìn vào một tập tin duy nhất thay vì toàn bộ kho lưu trữ không tăng tốc nó lên rất nhiều vì vậy có lẽ đó là đủ. Từ dòng lệnh, bạn có thể giới hạn tìm kiếm đối với một loạt các bản sửa đổi hoặc một nhánh đơn lẻ: 'hg grep --all -I" ** index.php "-r" branch (branch_name) "comma_delimited' nhưng điều đó không có vẻ để làm việc trong chế độ xem tìm kiếm của rùa. –

+0

hoàn hảo, nhờ –

1

Các lĩnh vực tìm kiếm TortoiseHg hỗ trợ revsets . Dường như có chức năng grep(regex), nhưng có vẻ như nó chỉ là một biến thể regex của hàm từ khóa, chỉ tìm kiếm "thông báo cam kết, tên người dùng và tên của các tệp đã thay đổi". Rất tiếc. Có vẻ như bạn chỉ có lựa chọn là sử dụng Mercurial's grep command:

> hg grep -r ABC-123 'comma_delimited' index.php 
+0

tôi đã kiểm tra liên kết bạn đã đăng ... grep sẽ "Tìm kiếm thư cam kết, tên người dùng và tên của các tệp đã thay đổi cho chuỗi". nhưng không phải là văn bản trong một tệp ... –

+0

@estherh Cảm ơn. Tôi đã sửa chữa câu trả lời của mình. –

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