Cuando comencé a usar hg, la actualización parecía tener una capacidad casi mágica para tomar los nuevos cambios e integrarlos en mi repositorio local. Últimamente, sin embargo, noto que incluso si mis cambios locales no entran en conflicto con los cambios recién sacados de otro lado, siempre tengo que fusionarme, lo que resulta en un conjunto de cambios adicional que duplica un montón de cambios que ya tengo en uno de mis líneas de código locales (cabezas).Mercurial: ¿Por qué a veces necesito fusionarme después de una extracción en lugar de simplemente actualizar?
Quiero entender qué es lo que provoca que hg requiera una fusión, en lugar de solo suavizar todos los cambios junto con la actualización. Un conflicto debe requerir claramente una fusión. ¿Qué más?
Entonces, en una nota relacionada: si rebase en lugar de fusionar, ¿eso mantiene una sola línea de código contigua? Me di cuenta de que hgsubversion requiere esto si quieres poder regresar a SVN, y eso tiene más sentido a la luz de esta información. –
Rebasing produce una historia lineal, pero es una historia lineal ligeramente deshonesta (porque el desarrollo no fue lineal, sino simultáneo). Algunas personas prefieren eso, pero prefiero que mi historia refleje de manera verdadera y precisa el orden en que se cometieron las cosas. Todo se trata de preferencia personal (o política del equipo) al final. –
Por curiosidad, ¿por qué es "incorrecto"? Sé que está en desuso, pero no por qué –