chore(metodo): reparto — fase 1 de compresion: dos contradicciones vivas
La seccion Entrega recomendaba 'git pull' donde otro rail dice que es un no-op, y presentaba el porcelain como LA puerta cuando solo cubre una ventana. Desambiguadas las dos, no borradas. Solo .metodo/ — byte a byte desde la matriz. Sesion: superadmin Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
This commit is contained in:
parent
274cc1672a
commit
d690d5c861
@ -1,4 +1,4 @@
|
|||||||
90bd7d9feb0ebf513cf60e292436dc90653e42e31a41b4ff115eaf93cd0c480a metodo.md
|
411e75dd254ed1555a6091cf9c99ee15c889b320707fcf9caabd11d7cffc9082 metodo.md
|
||||||
fb7e88324524184b9f685c49c0bbcc6c9a55beb07bb5c0b1b31cd29c51c4117f bin/metodo
|
fb7e88324524184b9f685c49c0bbcc6c9a55beb07bb5c0b1b31cd29c51c4117f bin/metodo
|
||||||
f89b71bdf31028b05075636c1763c964e379bc37a00e0357d1c23a4dd19c09aa workflows/README.md
|
f89b71bdf31028b05075636c1763c964e379bc37a00e0357d1c23a4dd19c09aa workflows/README.md
|
||||||
cc241bbecf9647c747b8525b3a6b527455cd50ca0312caa44bc3544342c8ac41 workflows/comunicacion-entre-sesiones.md
|
cc241bbecf9647c747b8525b3a6b527455cd50ca0312caa44bc3544342c8ac41 workflows/comunicacion-entre-sesiones.md
|
||||||
|
|||||||
@ -2093,8 +2093,15 @@ pega tal cual.
|
|||||||
- **Git canónico único y MEDIDO**: se empuja a un remoto y solo ahí; un fallo se **mide**
|
- **Git canónico único y MEDIDO**: se empuja a un remoto y solo ahí; un fallo se **mide**
|
||||||
(dry-run/reintento) antes de concluir "no hay credenciales"; el remoto muerto se elimina localmente.
|
(dry-run/reintento) antes de concluir "no hay credenciales"; el remoto muerto se elimina localmente.
|
||||||
- **Commits Conventional** (`feat/fix/docs/ci` + scope); el `doc:` registra el **porqué**.
|
- **Commits Conventional** (`feat/fix/docs/ci` + scope); el `doc:` registra el **porqué**.
|
||||||
- **Working-tree compartido**: `git add` con ruta explícita (**nunca `-A`**), `git pull` antes de
|
- **Working-tree compartido**: `git add` con ruta explícita (**nunca `-A`**) y, mejor,
|
||||||
deploy y antes de commitear docs, una tarea = una sesión/worktree.
|
**`git commit -- <rutas>`**, que ignora el índice para todo lo demás; una tarea = una sesión.
|
||||||
|
⛔ **Y `git pull` NO es parte de esto**: entre sesiones **de esta máquina** es un **no-op** —
|
||||||
|
comparten árbol e índice, ver el cuarto filo de `§9`— y creerlo una protección **es el modelo
|
||||||
|
equivocado**. Donde **sí** hace falta es contra el **remoto**, cuando ha podido empujar **otra
|
||||||
|
máquina o una persona**. *(Los dos casos, el 2026-09-02: un satélite midió que su `pull` no traía
|
||||||
|
nada porque ya lo tenía; y `MOT` rechazó un `push` porque **un compañero había empujado tres
|
||||||
|
commits** desde otro sitio.)* ⇒ **Distingue de quién te estás sincronizando**: de otra sesión, no
|
||||||
|
hay nada que traer; de otra máquina, sí.
|
||||||
- ⛔ **QUIÉN EMPUJA: el `push` es un acto de ÁMBITO, no un acto sobre tus commits** *(Xavier,
|
- ⛔ **QUIÉN EMPUJA: el `push` es un acto de ÁMBITO, no un acto sobre tus commits** *(Xavier,
|
||||||
2026-08-29)*. **Un `push` publica todo lo que hay entre el remoto y tu HEAD, lo haya puesto quien
|
2026-08-29)*. **Un `push` publica todo lo que hay entre el remoto y tu HEAD, lo haya puesto quien
|
||||||
lo haya puesto** — así que el permiso no se decide por quién escribió el commit, sino por **de
|
lo haya puesto** — así que el permiso no se decide por quién escribió el commit, sino por **de
|
||||||
@ -2214,8 +2221,13 @@ pega tal cual.
|
|||||||
⇒ **El gesto que falta NO es «no uses `git add -A`»** —no se usó— **sino: si te llevaste algo
|
⇒ **El gesto que falta NO es «no uses `git add -A`»** —no se usó— **sino: si te llevaste algo
|
||||||
ajeno, DILO EN EL MENSAJE.** Es lo único que devuelve la atribución cuando `git` no distingue
|
ajeno, DILO EN EL MENSAJE.** Es lo único que devuelve la atribución cuando `git` no distingue
|
||||||
sesiones, y **cuesta una línea**.
|
sesiones, y **cuesta una línea**.
|
||||||
⇒ Y el sub-raíl operativo: **`git status --porcelain` ANTES de tu primer `git add`**. Si hay algo
|
⇒ Y el sub-raíl operativo, **con su límite dicho, que es la mitad que faltaba**: `git status
|
||||||
*staged* que no es tuyo, **no es tuyo el índice**: o esperas, o lo declaras.
|
--porcelain` **ANTES de tu primer `git add`**. Si hay algo *staged* que no es tuyo, **no es tuyo el
|
||||||
|
índice**: o esperas, o lo declaras. ⛔ **Pero sólo ve lo que YA ESTABA cuando empezaste** — una
|
||||||
|
escritura ajena que entra **después** de tu `add` **no la caza**, y hoy se usaba como si bastara.
|
||||||
|
⇒ **La que cubre esa ventana es `git diff --cached --name-only` INMEDIATAMENTE antes de commitear**,
|
||||||
|
leída por ojos y **no encadenada con `&&`** a lo que viene detrás. **Las dos no son redundantes:
|
||||||
|
cubren ventanas distintas.**
|
||||||
⛔ **Y UN CUARTO, QUE ES DE OTRA COMPROBACIÓN: `git status` NO VE LOS COMMITS SIN EMPUJAR.** Son
|
⛔ **Y UN CUARTO, QUE ES DE OTRA COMPROBACIÓN: `git status` NO VE LOS COMMITS SIN EMPUJAR.** Son
|
||||||
**dos gestos distintos y ninguno implica al otro** — `git status --porcelain` dice **qué me llevo
|
**dos gestos distintos y ninguno implica al otro** — `git status --porcelain` dice **qué me llevo
|
||||||
DENTRO del commit**; `git log origin/main..HEAD` dice **qué PUBLICO con él**. Correr el primero y
|
DENTRO del commit**; `git log origin/main..HEAD` dice **qué PUBLICO con él**. Correr el primero y
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user