簡體   English   中英

git describe --match在TeamCity上不起作用

[英]git describe --match does not work on TeamCity

在我們的BitBucket中,我們有一些像這樣的標簽:

build-0.0.4.152  
0.0.4  
build-0.0.3.151  
build-0.0.3.150  
0.0.3 

所有帶有前綴“ build ”的標簽都來自中間的預發行版本,其中不帶前綴的標簽是生產版本。 我有一個gradle方法可以從VCS根目錄獲取最新的生產標簽(因此,在這種情況下,我希望獲得標簽0.0.4 ):

def getVersionFromTag() {  
   def stdout = new ByteArrayOutputStream()  
  exec {  
   commandLine 'git', 'describe', '--abbrev=0', '--match="[!build]*"'   
   standardOutput = stdout  
  }  
   return stdout.toString().trim()  
}  

在IntelliJ本地,該構建能夠獲取正確的標簽。 但是在TeamCity上,它在此處的構建日志中顯示錯誤:

fatal: No names found, cannot describe anything.

如果我'--match="[!build]*"'刪除參數'--match="[!build]*"' ,則在上述方法中它將起作用 ,但它將獲得最新的標記( build-0.0.4.152 ,但不是我想要的標記) 0.0.4 )。 因此,我認為該參數在TeamCity的git版本中不可用,但在我自己的git(2.6.3.windows.1)中可用。

如果我錯了,請糾正我,並讓我知道如何解決此問題。 謝謝

刪除雙引號后,它可以工作

'--match=[!build]*'

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM