..
-n 参数的实现
-n 参数说明 1
"n", "Only chunk and hash - do not write to disk."
代码实现
在 func (api *UnixfsAPI) Add(ctx context.Context, files files.Node, opts ...options.UnixfsAddOption) (path.Resolved, error)
接口中有类似如下代码
if settings.OnlyHash {
node, err := getOrCreateNilNode()
if err != nil {
return nil, err
}
addblockstore = node.Blockstore
exch = node.Exchange
pinning = node.Pinning
}
if settings.OnlyHash {
md := dagtest.Mock()
emptyDirNode := ft.EmptyDirNode()
// Use the same prefix for the "empty" MFS root as for the file adder.
emptyDirNode.SetCidBuilder(fileAdder.CidBuilder)
mr, err := mfs.NewRoot(ctx, md, emptyDirNode, nil)
if err != nil {
return nil, err
}
fileAdder.SetMfsRoot(mr)
}