如何使安装脚本仅在Travis CI中运行一次

时间:2019-10-22 19:26:21

标签: git github travis-ci github-pages

我已经设置了GitHub pages。它是使用gitfolio制作的。

我还设置了Travis CI以自动更新网站的详细信息。这是我的before_script

before_script:
  - git clone https://github.com/imfunniee/gitfolio.git
  - cd gitfolio
  - npm install

每次构建开始时,此脚本都会克隆gitfolio存储库。但是,我希望Travis CI仅克隆一次仓库,而不是每次克隆。这是因为我想对克隆的git repo进行一些更改,并且由于我一次又一次地克隆该repo,所以我的更改都不会持久。

我是否可以通过任何方式克隆git repo一次,对克隆的repo进行更改,然后再也不必再次进行git clone了?

1 个答案:

答案 0 :(得分:0)

Travis将在每个版本上启动一个新实例,因此您的更改将不会持久。

您可以尝试使用cache on travis side,但我怀疑这种情况是否完全适合您的需求。无论如何,您都必须依赖缓存,检查目录是否存在,并仅在不存在时进行克隆。您还必须实施拉动策略以获取最新更改,如果保留未提交的更改,则可能会变得棘手。试试看吧。

一个更好的选择IMO是继续进行克隆(尽管我会考虑使用--depth参数来加快操作速度),然后进行更改并将其提交回特定的存储库/分支。然后,您只需git clone -b specificBranch即可获得您的持久更改。