Sincronizar Alterações do Arquivo de Especificação com o Código de Origem Gerado
Você pode usar o comando ochain sync para trazer novas alterações do arquivo de especificação para os arquivos de origem atuais (modelo e controlador). O comando funciona com os projetos TypeScript e Go.
Observação:
- A sincronização é unidirecional: você pode trazer alterações do arquivo de especificação para o projeto do chaincode, mas não o contrário. As alterações feitas em seu projeto de chaincode permanecem como estão após o processo de sincronização.
- O comando
ochain syncsó funcionará se o projeto de chaincode tiver sido montado usando um arquivo de especificação. Não exclua, renomeie ou mova o arquivo de especificação se você planeja sincronizar quaisquer alterações do arquivo de especificação para o código-fonte no futuro. - Se você usou um único arquivo de especificação para gerar mais de um projeto de chaincode, poderá sincronizar apenas um projeto de cada vez usando o comando
ochain sync.
Uso:
sync [options] [...args]my-mac:TsProject myname@ ochain sync -h
Usage: sync [options] [...args]
Synchronize Changes from spec file to the required chaincode.
Arguments:
[...args] (optional) Sync Arguments.
Options :
-h, --help output command usage information
-D, --debug enable debug logging
-p, --project <path> (optional) Path to Chaincode project to sync. If not specified, it defaults to current directory
-c, --confirm <bool> (optional) Parameter to ensure if you have resolved all the conflicts, and commit changes
Examples :
$> ochain sync
without chaincode initial argumentsO comando
ochain sync tem dois argumentos opcionais:
-p / --projectEsta opção usa o diretório de projeto do chaincode no qual a sincronização precisa ser executada. Se não estiver especificado, ele assumirá como padrão o diretório atual.
-c / --confirmEsta opção usa valores Booleanos (true/false). Se houver conflitos durante o processo de mesclagem, você deverá resolvê-los manualmente e definir essa opção como verdadeira no próximo ciclo de sincronização. Não use esta opção se não tiver certeza de que os conflitos foram mesclados.
Se o comando
ochain sync falhar e você tiver instalado e configurado todos os pré-requisitos, incluindo o Git e o nome de usuário e a senha do Git, execute as seguintes etapas para reinicializar a operação de sincronização:
- Verifique se há erros no arquivo de especificação e corrija os erros encontrados.
- Na pasta do projeto do chaincode, remova as seguintes pastas se elas estiverem presentes:
.sync_temp,.sync_backupe.sync_repo. - Na pasta
src, remova a pasta.gitse ela estiver presente. - Na pasta raiz do projeto, edite o arquivo
ochain.jsone defina a propriedadesyncEnabledcomo false. Salve e feche o arquivo. - Tente novamente o comando
ochain sync.