Ethereum 从特定块中分叉实际的mainnet

Ethereum 从特定块中分叉实际的mainnet,ethereum,go-ethereum,geth,Ethereum,Go Ethereum,Geth,我想在以太坊上测试许多smartcontract之间的一些重叠,但是: 其中许多在测试网上不可用/在不同的测试网上 其中一些存在重大的历史/状态变化,很难正确再现当前状态 那么,为了尽可能接近实际的主网,有没有办法复制整个区块链的当前状态以及所有交易,并在特定区块进行分叉以测试某些功能 说明了如何创建专用网络,但如何基于特定的mainnet块创建专用网络 谢谢您可以使用--fork选项运行 在给定块上从另一个当前运行的以太坊客户端进行分叉。输入应该是其他客户端的HTTP位置和端口,例如htt

我想在以太坊上测试许多smartcontract之间的一些重叠,但是:

  • 其中许多在测试网上不可用/在不同的测试网上
  • 其中一些存在重大的历史/状态变化,很难正确再现当前状态
那么,为了尽可能接近实际的主网,有没有办法复制整个区块链的当前状态以及所有交易,并在特定区块进行分叉以测试某些功能

说明了如何创建专用网络,但如何基于特定的mainnet块创建专用网络

谢谢

您可以使用
--fork
选项运行

在给定块上从另一个当前运行的以太坊客户端进行分叉。输入应该是其他客户端的HTTP位置和端口,例如
http://localhost:8545
。您可以选择使用@sign:
http://localhost:8545@1599200

因此,实际的命令可能如下所示:

ganache-cli --fork https://mainnet.infura.io/v3/<your_infura_id>
ganache cli--forkhttps://mainnet.infura.io/v3/
您可以使用
--fork
选项运行

在给定块上从另一个当前运行的以太坊客户端进行分叉。输入应该是其他客户端的HTTP位置和端口,例如
http://localhost:8545
。您可以选择使用@sign:
http://localhost:8545@1599200

因此,实际的命令可能如下所示:

ganache-cli --fork https://mainnet.infura.io/v3/<your_infura_id>
ganache cli--forkhttps://mainnet.infura.io/v3/