Skip to content

Repository files navigation

Yap

Yet Another Package VCS — control de versiones con merge semántico.

Junio 2026 — Kaede / TanukiSoftworks


Instalación

git clone https://github.com/tanukisoftworks/yap
cd yap
cargo install --path .

O descarga el binario precompilado desde releases.


Uso rápido

Inicializar un repositorio

cd mi-proyecto
yap init

Esto crea un directorio .yap/ con los metadatos del repositorio y un .yapignore por defecto.

Agregar archivos

yap add src/main.py
yap add src/utils/*.py
yap add .              # todos los archivos no ignorados

Hacer commit

yap commit -m "agrega módulo de autenticación"

Ver historial

yap log
yap log --oneline      # versión compacta

Ramas

yap branch                          # listar ramas
yap branch feature-auth             # crear rama
yap branch --delete feature-auth    # eliminar rama
yap switch feature-auth             # cambiar de rama

Fusionar

yap merge feature-auth              # fusiona feature-auth en la rama actual

Feature workflow

yap feature start mi-feature        # crea rama y cambia a ella
yap feature finish mi-feature       # fusiona en main y elimina la rama

Deshacer commits

yap reset                           # soft reset a HEAD~1 (cambios en staging)
yap reset --hard                    # hard reset a HEAD~1 (descarta todo)
yap reset <hash>                    # reset a un hash específico

Remotos

yap remote add origin yap://192.168.1.50:42034
yap remote push                     # empujar cambios
yap remote pull                     # traer cambios

Iniciar servidor de red

yap daemon --port 42034

¿Qué hace a Yap diferente?

Concepto Git Yap
Unidad de contenido Blob de bytes Fragmento semántico (AST-aware)
Merge Línea por línea Por AST: funciones, clases, JSON keys
Operaciones Inferidas (rename = delete+add) Nativas (rename, refactor, modify)
Red Origin central Multi-master con peers opcionales
Paquetes No integrado VCS + package manager unificado
Seguridad Opcional (GPG) Firmas obligatorias + secret scanning

Siguientes pasos

Lee la documentación completa:


Licencia

Yap está bajo GNU Affero General Public License v3.0 (AGPLv3).

  • Uso personal y académico: libre.
  • Uso comercial: si modificas Yap o lo ofreces como servicio, debes liberar el código fuente de tus modificaciones.
  • Licencia comercial: disponible a través de TanukiSoftworks para quienes necesiten usar Yap sin las restricciones de la AGPL.

Ver LICENSE para el texto completo de AGPL.

YAP - Yet another package encoder

This program is free software: you can redistribute it and/or modify it under the terms of the GNU Affero General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.

This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Affero General Public License for more details.

You should have received a copy of the GNU Affero General Public License along with this program. If not, see https://www.gnu.org/licenses/.

Proyecto de TanukiSoftworks — construido con Rust.

About

yet another package codifier

Resources

Stars

Watchers

Forks

Releases

Packages

Contributors

Languages