Qué detecta
TYBA mira marcadores en el git-dir de ese árbol, en este orden:
Ninguno de ellos, ninguna franja.
Al lado del título vienen los dos lados:
main ← feature. El ours es tu branch (durante un rebase, el HEAD está suelto, así que lee el head-name que la propia operación dejó). El theirs es el otro lado — el nombre cuando git sabe decirlo, un SHA corto cuando no.
No importa quién empezó el merge. Tú ejecutando
git merge en la terminal de la sesión, o el agente haciéndolo solo: la fuente es el estado real de git, y la franja refleja los dos igual.La lista de archivos
Cada archivo en conflicto es una línea, con el códigoXY de git al lado — UU (los dos cambiaron), AA (los dos añadieron), DD, AU… El código está ahí porque cambia lo que significa “elegir un lado”.
Cada línea tiene cuatro acciones:
Elegir un lado es el archivo entero. No es por hunk, no es por línea. Es la herramienta correcta para un lockfile, un snapshot, un archivo generado — y la herramienta equivocada para el
src/ que tiene intención de los dos lados.
¿Te equivocaste de lado? Hasta que la operación se concluya,
git checkout -m -- <archivo> en la terminal de la sesión rehace el conflicto y devuelve los marcadores. Nada aquí es irreversible antes del commit.Resolver con el agente
El botón a la derecha de la franja le pasa el problema al agente. Monta un prompt con la operación, los dos lados, la lista de archivos con sus códigos, y una instrucción explícita de preservar la intención de los dos lados y quitar los marcadores. Entonces:- ¿Hay una sesión de agente viva en la carpeta? El prompt va a su composer.
- ¿No? TYBA levanta una sesión de agente en esa carpeta — con sandbox y con el gate de aprobación — y el prompt va a su composer.
El prompt se escribe, no se envía. Se queda en el composer, escrito, esperando tu
↵. Es a propósito, y el prompt es de una sola línea por el mismo motivo: un pegado multilínea se convierte en el chip [Pasted text] del composer, y no podrías leer lo que vas a mandar antes de mandarlo.- Merge — el agente resuelve, hace
git add, y para. No concluye el commit del merge. Quien revisa la resolución y commitea eres tú. - Rebase / cherry-pick — el agente resuelve y ejecuta
--continuehasta que la operación termina, sin crear commits más allá de los que la propia operación replica.
El último paso es tuyo
¿Resolviste todo? La franja no desaparece — se pone ámbar y dice:Conflicts resolved — finish the operation (commit / —continue).Eso no es un bug: TYBA no concluye la operación por ti. Detecta, te deja elegir lado por lado, marca lo resuelto. El
git commit del merge, el git rebase --continue, el git cherry-pick --continue son tuyos, en la terminal de la sesión. Es el último acto deliberado antes de que el historial cambie de forma.
Cuando la operación termine, el marcador desaparece del git-dir y la franja desaparece de la pantalla.
Qué no existe
- Concluir la operación con un botón. Ni commit de merge, ni
--continue. - Abortar con un botón.
git merge --abortes en la terminal. - Editor de merge de tres vías. Las opciones son: un lado entero, o tu editor.
- Elegir el lado por hunk. Es el archivo entero.
- La franja mientras exploras otra branch. Explorando una branch en el picker, el panel esconde la franja — lo que está en pantalla no es el árbol conflictuado. Vuelve a la sesión y reaparece.
Ver también
Branches
Cambiar de branch, fetch, y lo que el picker rechaza.
Clasificación de riesgo
Lo que el agente hace solo mientras resuelve.