Sincronizar cambios de archivo de especificación con código de origen generado

Puede utilizar el comando ochain sync para traer nuevos cambios del archivo de especificación a los archivos de origen actuales (modelo y controlador). El comando funciona con los proyectos TypeScript y Go.

Note:
  • La sincronización es unidireccional: puede llevar los cambios del archivo de especificación al proyecto de código de cadenas, pero no al revés. Los cambios realizados en el proyecto de código de cadenas permanecen tal cual después del proceso de sincronización.
  • El comando ochain sync solo funciona si el proyecto de código de cadenas se ha andamiado mediante un archivo de especificación. No suprima, cambie el nombre ni mueva el archivo de especificación si tiene previsto sincronizar los cambios del archivo de especificación con el código de origen en el futuro.
  • Si ha utilizado un único archivo de especificación para generar más de un proyecto de código de cadenas, puede sincronizar solo un proyecto a la vez mediante el comando ochain sync.

Sintaxis:

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
El comando ochain sync tiene dos argumentos opcionales:
  • -p / --project

    Esta opción toma el directorio del proyecto de código de cadenas donde se debe realizar la sincronización. Si no se especifica, se establece por defecto en el directorio actual.

  • -c / --confirm

    Esta opción toma valores booleanos (verdadero/falso). Si hay conflictos durante el proceso de fusión, debe resolverlos manualmente y definir esta opción en true en el siguiente ciclo de sincronización. No utilice esta opción si no está seguro de que los conflictos se hayan fusionado.

Si el comando ochain sync falla y ha instalado y configurado todos los requisitos, incluidos Git y el nombre de usuario y la contraseña de Git, realice los siguientes pasos para reinicializar la operación de sincronización:
  1. Compruebe si hay errores en el archivo de especificación y corrija los errores que encuentre.
  2. En la carpeta del proyecto de código de cadenas, elimine las siguientes carpetas si están presentes: .sync_temp, .sync_backup y .sync_repo.
  3. En la carpeta src, elimine la carpeta .git si está presente.
  4. En la carpeta raíz del proyecto, edite el archivo ochain.json y defina la propiedad syncEnabled en false. Guarde y cierre el archivo.
  5. Vuelva a intentar el comando ochain sync.