2011-07-06 30 views
8

Khi tôi chạy lệnh "hg log" của Mercurial từ cửa sổ đầu cuối, kết quả thường rơi ra khỏi màn hình, buộc tôi phải cuộn lên trên cùng. Kết quả là, tôi đã tạo ra một mẫu để giảm verboseness và định dạng của nhật ký:Làm cách nào để giới hạn kích thước của nhật ký Mercurial?

[alias] 
slog = log --template '{rev}:{node|short} {desc|firstline} ({author})\n' 

Tuy nhiên, tôi muốn cải thiện này hơn nữa bằng cách hoặc là a) hạn chế kích thước của "làm lụng vất vả" để chỉ 10 cam kết cuối cùng hoặc b) sử dụng lệnh như "hg slog ##", trong đó "##" sẽ là số lượng nhật ký được hiển thị trong kết quả.

Bất kỳ suy nghĩ nào về cách đạt được A hoặc B?

Trả lời

12

Bạn có thể xác định bí danh của bạn để làm chỉ có một giới hạn nhất định theo cách này:

slog = log --limit 10 --template "{rev}:{node|short} {desc|firstline} ({author})\n" 

Hoặc, bạn có thể đặt --limit ở cuối dòng để bạn có thể chuyển số cho nó, vì đối số cho bí danh sẽ được nối vào cuối:

slog = log --template "{rev}:{node|short} {desc|firstline} ({author})\n" --limit 

Ở trên có thể được gọi là này trong 10 changesets lần cuối:

hg slog 10 

Bạn cũng sẽ có thể xác định phiên bản tham số theo cách này, nhưng nó dường như không được sở hữu mở rộng $1:

slog = log --limit $1 --template "{rev}:{node|short} {desc|firstline} ({author})\n" 

#I had to use shell execute to make it expand: 
#slog = !hg log --limit $1 --template "{rev}:{node|short} {desc|firstline} ({author})\n" 
+0

Bất kỳ suy nghĩ về cách làm cho "--limit" tùy chọn? Nếu tôi nhập "hg slog", tôi không bắt buộc phải nhập giá trị. Sẽ tốt hơn nếu tôi có thể tùy ý làm điều đó. – Huuuze

+0

Phụ thuộc vào trình bao của bạn, nhưng về cơ bản bạn sẽ phải kiểm tra nếu '" $ 1 "' bằng '" "'. Trong Windows tôi sẽ làm 'slog =! Nếu" $ 1 "==" "(hg log --limit 10) khác (hg log --limit $ 1)' để làm cho nó hoạt động trên một dòng với kiến ​​thức tập tin bó hạn chế của tôi. (các mẫu bị bỏ qua cho ngắn gọn) –

7

Để có được 10 changeset lần cuối:
hg log -l10

giải pháp thay thế:
Configure autopager plugin trong file .hgrc.
Kết quả cuối cùng là tương tự như đã đề cập giải pháp

hg log | less 
+0

Tức là, '-l' (chữ thường L) cho giới hạn. –

0

Nếu bạn đang sử dụng một môi trường * nix, điều này cho phép bạn di chuyển trở lại thông qua lịch sử đăng nhập tại giải trí của bạn:

hg log | less 

hoặc theo sở thích của bạn:

hg log | more 
Các vấn đề liên quan