我讀過的所有文檔都說我可以在指定revset時使用正則表達式我正在嘗試使用tag()謂詞和正則表達式,例如, tag('v334.\*')
以列出所有標有v3340
到v3349
的版本。在hg revset中使用正則表達式
離開了我所遇到的語法錯誤,使用正確的正則表達式的語法,只要我可以從網頁告訴像https://www.mercurial-scm.org/repo/hg/help/revsets(參見「模式」一節)的最佳機會似乎是:
tag(r're:v334.\*')
這至少解析了一下,但結果說是tag 're:v334.\*' does not exist
。我知道這些標籤存在,我做錯了什麼?
更新1
首先...你的第一反應表明re:v334
這不是一個正則表達式。我的理解是glob:
前綴指定了一個簡單的正則表達式,前綴re:
使用Python正則表達式,所以應該是re:v334.*
...是的?
然後它只是不起作用。這裏有兩種形式:
$ hg log -r 'tag(r"re:v334.*")'
abort: tag 're:v334.*' does not exist
$ hg log -r 'tag(r"re:v334")'
abort: tag 're:v334' does not exist
哦,並且使用hg tags | grep v334
確實表明這些標籤存在。
你好,我更新了你的問題,把你的評論放到我的答案中,我的回答在你的評論之後。未來,請遵循以下建議: 1.不要在評論中提問。相反,更新你的問題,並留下評論的答案只是提到你更新了你的問題。 2.不要使用HTML格式。瞭解StackOverflow支持的非常簡單的Markdown語法。 感謝:-) –