现在,无论我在github项目页面中选择哪个分支,我都可以让我的travis盾牌反映最新的运行或特定的分支。我可以通过在URL的末尾省略或指定分支名称来做到这一点。相反,我想获得与所选分支相对应的盾牌。换句话说,每次选择不同的分支时,README.md
文件中travis shield的URL都会发生变化。
在SVN中,您可以使用SVN关键字通过使用分支名称(或类似名称)修改屏蔽URL来实现某种排序。这个QA为git提供了一些替代方案,但是:
有什么想法吗?希望我只是错过了一些愚蠢的东西。像这样的感觉必须有一个非常简单的方法。
答案 0 :(得分:15)
我为miniCRAN使用Travis构建盾牌,解决方案非常简单。
请注意,在每个travis屏蔽链接的末尾添加了.avatars
。
以下是?branch=...
:
README.md
这导致:
构建状态
答案 1 :(得分:4)
这不是一个完美的解决方案,但是如果你已经从README.Rmd knit
了解自述文件,那么就不会增加成本。基本上,您可以在README.Rmd中使用系统调用,根据您正在使用的任何分支动态生成Travis-CI屏蔽。只要您始终{{1},它将是最新的并且是特定于分支的。在推送到GitHub之前。
这是一个简单的例子:
knit
结果如下:
# Example README.Rmd
Here's a branch specific shield:
```{r, echo=FALSE, eval=TRUE, results="asis"}
travis_url <- "https://travis-ci.org/RevolutionAnalytics/miniCRAN.svg?branch="
shield <- paste0("[![Build Status](",
travis_url,
system("git rev-parse --abbrev-ref HEAD", intern = TRUE),
")](https://travis-ci.org/RevolutionAnalytics/miniCRAN)")
cat(shield)
```
但URL会指向您当前正在处理的任何分支。
注意:h / t到this answer用于检测当前分支名称的相关git命令。