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 sync só 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 arguments
O comando ochain sync tem dois argumentos opcionais:
  • -p / --project

    Esta 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 / --confirm

    Esta 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:
  1. Verifique se há erros no arquivo de especificação e corrija os erros encontrados.
  2. Na pasta do projeto do chaincode, remova as seguintes pastas se elas estiverem presentes: .sync_temp, .sync_backup e .sync_repo.
  3. Na pasta src, remova a pasta .git se ela estiver presente.
  4. Na pasta raiz do projeto, edite o arquivo ochain.json e defina a propriedade syncEnabled como false. Salve e feche o arquivo.
  5. Tente novamente o comando ochain sync.