git - 在 Dockerfile 中:如果主分支更改,则仅克隆 git repo
问题描述
我有一个克隆 repo 的 Dockerfile。在切换到私人仓库之前,我可以ADD
在文件中最后一次提交的哈希。仅当提交哈希更改时,缓存才会被破坏。不幸的是,私人回购更加困难。我已经复制了 ssh 密钥,并且可以检索最后一次提交,git ls-remote
但RUN
即使提交 ID 更改,该命令也不会破坏缓存。我怎样才能做到这一点?
RUN git ls-remote git@github.com:user/something.git master
RUN git clone -b master git@github.com:user/something.git folder/
解决方案
推荐阅读
- ruby-on-rails - 如何在 rails 6 或 rails 7 alpha 引擎中使用 jqueryUI
- c++ - 使用 GDB 将字符串传递给函数
- c++ - 我们如何知道一个指针是用 new 还是 new[] 分配的?
- sql - 了解 SQL Server 执行计划
- html - CSS 悬停属性不适用于嵌套 div
- javascript - 如何测试从 REST api 获取它的 src 属性的反应图像组件
- amazon-web-services - AWS lambda 部署问题 - 权限不足
- generics - 同一个列表中非常相似的类型(继承 vs 区分联合 vs 泛型?)
- django - 对 on_delete.SET() 使用参数或类方法?(如何在删除时更改 ForeignKey 字段)
- ruby-on-rails - 无法使用 Select2 在轨道上创建标签