给定缩小文件后,如何查找D3的确切版本?

时间:2019-03-21 17:58:17

标签: git d3.js

我在使用大量D3的旧系统上工作。不幸的是,几年前将我们缩小版的d3.js提交回购交易的人没有记录该文件的哪个版本,所以现在我想确切地找到它的版本,以便可以使其与webpack一起很好地玩,并且评估升级D3会发生什么情况。

鉴于此信息,找到我们拥有的D3版本的最佳方法是什么?

提交时间为2013-09-05,文件本身具有shasum Helper::getAll(\App\Models\User::class); Helper::getAll(\App\Models\Subfolder\OtherModel::class); // ... 。我通过对文件进行比较来检查了releases here中的3.3。[0-3],但没有找到。

我还制作了一个小bash脚本来找到它,但是找不到它:

8c20d53ba2c073a0b939b06847f12204ba0f81c6

这是第一行的一部分:

#!/usr/bin/env bash

for tag in $(  git tag -l | grep -e "v2.8.*" -e "v2.9.*" -e "v3.0.*" ); do
    echo -e "\n"
    git checkout $tag > /dev/null;
    for jsfile in *.js; do
      sha=$(shasum $jsfile | awk "{print $1}")
      if [[ "$sha" == "8c20d53ba2c073a0b939b06847f12204ba0f81c6" ]]; then
        echo "Found it! $tag has file $jsfile with the right sha!"
      fi
    done
done

1 个答案:

答案 0 :(得分:3)

对于任何D3版本,无论是否缩小,d3.version都会为您提供已加载的版本。

例如,使用D3 v3.3.0:

console.log(d3.version)
<script src="https://cdnjs.cloudflare.com/ajax/libs/d3/3.3.0/d3.min.js"></script>

即使在非常老的发行版(例如D3 v1.2)中也可以使用

console.log(d3.version)
<script src="https://cdnjs.cloudflare.com/ajax/libs/d3/1.29.5/d3.min.js"></script>