Sincronizar cambios de archivo de especificación con código de origen generado
Puede utilizar el comando ochain sync
para introducir nuevos cambios desde el archivo de especificación a los archivos de origen actuales (modelo y controlador). El comando funciona con proyectos TypeScript y Go.
Note:
- La sincronización es unidireccional: puede introducir cambios de su archivo de especificación en su 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 cadena 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 al código fuente 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]
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 de proyecto de código de cadena para sincronizar. Si no se especifican, se usan por defecto el directorio actual.
-c / --confirm
Esta opción toma valores booleanos (verdadero/falso). Si hay algún conflicto durante el proceso de fusión, debe resolver esos conflictos 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 han 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, complete los pasos siguientes para reinicializar la operación de sincronización:
- Compruebe el archivo de especificación en busca de errores y corrija los errores que encuentre.
- En la carpeta de proyecto de código de cadenas, elimine las siguientes carpetas si están presentes:
.sync_temp
,.sync_backup
y.sync_repo
. - En la carpeta
src
, elimine la carpeta.git
si está presente. - En la carpeta raíz del proyecto, edite el archivo
ochain.json
y defina la propiedadsyncEnabled
en false. Guarde y cierre el archivo. - Vuelva a intentar el comando
ochain sync
.