pub fn fork<G, S>( rid: RepoId, signer: &Device<G>, storage: &S, ) -> Result<(), ForkError>where G: Signer<Signature>, S: WriteStorage,