tortoisesvn - crear - create branch svn tortoise
¿Cómo funciona el compromiso no recursivo de Tortoise? (9)
He comprobado localmente una copia de la rama SVN (mi sucursal) a la que me he fusionado de una rama diferente (que tiene una estructura de carpetas completamente diferente). Entonces, básicamente, hay muchas eliminaciones (de archivos antiguos) y adiciones (de archivos nuevos).
Cuando trato de comprometer la fusión al repositorio (a mi sucursal), Tortuga dice
Esta confirmación no es recursiva, y hay carpetas movidas / renombradas seleccionadas para la confirmación. Dichos movimientos / renombrados siempre se realizan recursivamente en el repositorio. ¿Quieres comprometerte de todos modos?
¿Está bien proceder con este compromiso? Si no, ¿qué debo hacer para que no haya ningún problema?
Además, para algunos archivos que he agregado, hice cambios después de agregarlos (si esto afecta la naturaleza).
¿Está bien si procedo con este compromiso?
No, su confirmación ignorará todos los cambios en WC-tree y reflejará solo cambios a nivel de raíz (fusión discontinua).
Inicialmente cometió un error al verificar no recursivo. Puede intentar realizar una buena confirmación completa utilizando el parámetro --depth infinity
en la CLI o encontrar este --depth infinity
en la GUI de TortoiseSVN.
svn commit --depth infinity . -m "Merge"
También para algunos archivos que he agregado a SVN, hice cambios después de agregarlos (si esto afecta la naturaleza).
En mi caso, eso fue exactamente lo que causó que el mensaje apareciera, incluso yo deseleccioné esos archivos para la confirmación.
Solución fea que solo funciona de forma segura si solo se ven afectados unos pocos archivos:
- Crea una copia de los archivos modificados
- Revertir los archivos modificados
- Comprometerse en la fusión / reintegración
- Copie los archivos cambiados nuevamente al lugar original
Recordatorio para uno mismo: solo reintegre una rama si el objetivo (troncal) está limpio.
El problema podría ser que alguien borre tu mergeinfo o automáticamente, porque las informaciones se movieron hacia arriba en el árbol. Si vas a fusionarlos de nuevo, funcionará por el momento. Pero todos los demás tendrán problemas con sus ramas no fusionadas. SVN perderá algo de código y fusionará el código ya enviado de nuevo.
Así que revertir esos archivos y cambiarlos nuevamente podría funcionar, pero no solo debes comprometer los cambios.
Encontrado por Google cómo solucionarlo: presione F5 en la ventana de confirmación (no en el "aviso emergente")
Ver http://tortoisesvn.tigris.org/ds/viewMessage.do?dsForumId=757&dsMessageId=2831045 para más detalles.
Parece que TortoiseSVN realiza algún tipo de comprobación de validez antes de llamar a commit. Bien, pero el mensaje de error no está claro.
Cuando me enfrenté a este problema, volví a usar la línea de comando svn para confirmar. Commit failed debido a la razón por la cual una de las carpetas no estaba actualizada. Después de actualizar solo esa carpeta, ejecuté "svn commit" una vez más y se ejecutó.
Editar: PD: antes de usar, prueba esto, asegúrate de no tener ningún archivo marcado como "ignorar al confirmar". "Ignorar al confirmar" es específico de la tortuga y el compromiso del SVN también selecciona estos cambios.
Solo pensé en publicar esto porque funcionó para mí ...
La razón por la que esto ocurrió es porque renuncié parcialmente a uno de los nuevos proyectos que había creado y, por alguna razón, todos aparecieron como "Perdidos" en la pantalla de confirmación.
Después de eliminar el proyecto y la carpeta (que SVN había puesto en marcha) y ponerlo de nuevo como un nuevo proyecto, de repente todo el "Desaparecido" se convirtió en "Agregado" y el compromiso funcionó bien sin advertirme de nada .
¡Espero que esto ayude!
Solo tuve el mismo problema. En lugar de seleccionar todos los archivos, hice clic en versionado y todo funcionó bien. En mi caso, la opción versionada seleccionó todos los archivos, entonces todo está bien ahora.
Tuve el mismo problema, pero lo resolví invirtiendo los cambios en los archivos que había marcado para ''ignorar-en-comprometer''
Una vez que revertí estos archivos, tortoisesvn pudo confirmar todos los demás archivos de la fusión
no conozco una opción para tortoisesvn pero podría usar la línea de comando
svn commit --non-recursive [folder]
Eso debería funcionar como a usted le gusta que funcione