回答
查看有關更改文件的信息的實際方式是使用hg status
。這說明在修訂100被修改的文件:
$ hg status -c 100
但是,如果你想擁有的日誌信息,以及,然後hg log
當然是一個自然的起點。不幸的是,沒有內置開關,這將使它每行顯示一個文件。
但是,hg log
的輸出由template system控制,您可以爲其編寫自己的樣式。默認的樣式是here,你可以通過改變
file = ' {file}'
定製做你想做什麼
file = '{file}\n'
接着新樣式保存爲my-default.style
,並添加
[ui]
style = ~/path/to/my-default.style
到您的配置文件。這給你每行一個文件,它甚至可以在文件名中有空格的情況下工作。
我知道一個問題:在hg log
輸出中丟失顏色。事實證明,Mercurial在這裏作弊!它實際上並不使用我在生成日誌輸出時顯示的默認模板。它根本不使用任何模板系統,它只是使用直接代碼生成輸出,因爲它更快。問題是顏色擴展僅適用於硬編碼模板。切換到自定義模板並調用模板引擎時,會丟失顏色輸出。
但是,您可以通過將ANSI escape codes直接插入模板(在類Unix系統上)來恢復顏色。改變
changeset = 'changeset: {rev}:{node|short}\n{branches}...
到
changeset = '\033[33mchangeset: {rev}:{node|short}\033[0m\n{branches}...
是卓有成效的和硬編碼的變更黃色標題行。同時調整changeset_verbose
和changeset_quiet
行,並使用自己的模板輸出彩色輸出。
我相信沒有內置的方式來實現這一點,但有點sed的(也可用於Windows:http://gnuwin32.sourceforge.net/packages/sed.htm)可以幫助:
hg log --template "Rev: {rev}:{node}\nDate: {date|isodate}\nFiles: {files}\n\n" -l 10 | sed -e '/^Files:/s/ /\n /g'
輸出:
Rev: 1:2538bd4661c755ccab9b68e1d5e91144f6f97d33
Date: 2011-12-20 15:47 +0100
Files:
test1.txt
Rev: 2:853a6f3c505308c9babff5a5a2f1e09303f1689c
Date: 2011-12-20 15:44 +0100
Files:
test2.txt
test3.txt
說明的sed -e '/^Files:/s/ /\n /g'
:
/^Files:/
搜索線開始woth「文件: 「並應用以下搜索並僅替換那些行s/ /\n /g
用換行符替換所有行,後跟空格。
當文件名包含空格時,此解決方案將不起作用。
的hg template help文件有這種寶石在它的例子。
格式列表,例如,文件:
$ hg log -r 0 --template "files:\n{files % ' {file}\n'}"
這在Windows上運行,沒有任何翻譯。
看到,在修訂更改的所有文件,使用:
hg status --change REV
- 1. 如何讓`hg status`只顯示'hg diff`顯示的文件
- 2. hg log:顯示何時執行推送-f
- 3. 如何讓WPF TextBlock在多行上顯示我的文本?
- 4. 無法獲取「hg log file」來顯示任何內容
- 5. .hg目錄中的文件在我運行「hg status」時顯示出來
- 6. 如何在調試時讓ipdb顯示更多上下文?
- 7. 如何通過git log在文件中顯示差異
- 8. 如何在git log中顯示修改的文件路徑
- 9. SVM sklearn verbose僅顯示點
- 10. make git log --graph --all顯示hg glog的當前位置
- 11. 如何讓git log不提示繼續?
- 12. hg log - 如何以相反順序顯示修訂日期範圍?
- 13. 如何讓數組顯示在文件上?
- 14. hg log雖然存在,但找不到文件
- 15. 如何讓'grep'在grepped行之上顯示一行五行?
- 16. git log - 關注以在XCode上顯示
- 17. 如何在多行顯示文本?
- 18. 如何讓Eclipse顯示。*文件?
- 19. 如何讓nbviewer顯示本地文件?
- 20. libvirt log/var/log/libvirt/qemu顯示時間是UTC如何讓它顯示當地時間?
- 21. hg commit表示「沒有任何變化」,但是hg狀態-A顯示很多更改的文件
- 22. 在Crystal Report上顯示多行文本的多行文本值
- 23. 如何使用.log數據文件顯示EXT js Grid?
- 24. 如何僅使用git log顯示更改的文件名?
- 25. 如何讓ListView顯示在ListView之上?
- 26. 如何在hg commit上運行pylint?
- 27. 在magit log中顯示HEAD
- 28. 如何從ImageMagick導出多個文件的結果-verbose
- 29. 如何在Silverlight上顯示tiff文件?
- 30. 如何在按鈕上顯示多行文字
對於我的生活,我不能得到這個工作。我已經將line style =「path設置爲我的文件\ my-style.default」,而Hg只是說「abort:找不到樣式:」我的文件路徑\ my-style.default「...?你有什麼想法嗎? – Rook
你在文件名周圍是否使用了雙引號?正如在'style =「路徑中那樣''?令人驚訝的是,配置值沒有在Mercurial配置文件中引用,所以它應該是'style = the –
A-ah,you ment--沒有雙引號,是的,我的錯誤......現在可以工作了,我並沒有想到, – Rook