¿Cómo anulo los conflictos de búsqueda, de modo que si git encuentra el mismo file exacto, no da un conflicto?

Después de mirar a través de innumerables sitios web y muchas publicaciones diferentes sobre flujo, no pude encontrar la respuesta a lo que parece ser una solución bastante simple.

Mi configuration

Desarrollo localmente en NetBeans pero no hago ninguna operación de git a través de NetBeans, excepto para search actualizaciones. Cada vez que guardo / elimine / cree / etc. en NetBeans, esos cambios se propagan automáticamente a un server Linux remoto. Luego ejecuto todos mis commands git usando la command-line de Linux en ese server remoto.

El problema y la pregunta

Desde que hice mi desarrollo original en netbeans, algunos de los files que extrae la operación de recuperación de git ya existen en netbeans y por lo tanto arroja conflictos. ¿Hay alguna manera de evitar que esto suceda? Necesito poder get actualizaciones de otros desarrolladores en mi netbeans y no recibir estos conflictos causados ​​por mis propios files ya existentes. Anteriormente usé SVN y no tuve este problema porque a SVN no le importaba, pero ahora cambiamos a git y tengo que resolver esto.

ACTUALIZAR

SE EXTIENDE QUE EL PROBLEMA FUE DEBIDO A NETBEANS en windows con terminaciones de línea diferentes (/ r / n) que cuando los files se crean en Linux (/ n). Así que un complemento de netbeans llamado http://plugins.netbeans.org/plugin/46829/change-line-endings-on-save convierte todas las terminaciones de línea a Linux y solucionó el problema.

Después de que esto se resolvió, surgió otro problema que básicamente me dice que el soporte de netbeans para GIT no está completo al 100%. Básicamente, si tratas de get files que ya tienes en tu copy de trabajo de netbeans, GIT lanza un conflicto incluso si son los mismos files exactos con el mismo contenido con las mismas terminaciones de línea de Unix. Para resolver este problema, tuve que download un cliente de línea de command git para windows http://msysgit.github.io/ (porque netbeans actualmente no tiene soporte para stashes). Y luego simplemente instale la porción bash con terminaciones de línea Unix, y ejecute git stash, guarde "mis cambios". Luego haga la búsqueda y fusión (o tire), luego ejecute git stash y aplique PATCHNAME. Sin conflictos 🙂 ¡Gracias! Mayur!

Este es un comportamiento esperado y deseado. Supongamos que realiza un cambio en la function a en el file b y no confirma y lo mantiene en su repository local (su espacio de trabajo). Y diga que algún otro desarrollador también realizó cambios exactamente en el mismo file y function, pero lo ingresó en el repository de git desde donde realiza sus cambios. En este caso, git intentará usar su inteligencia (algorithm de combinación) de la mejor manera posible para fusionar el código, pero si el conflicto es realmente desagradable, notifica al desarrollador una fusión manual. ESTO ES COMPORTAMIENTO REQUERIDO. ¿Cómo sabría Git qué save?


RESOLUCIÓN CUANDO TRABAJAMOS JUNTOS EN ESTO:

Fueron los finales de línea de Linux (EOL) los culpables. Cada git captado en las windows a través de netbeans IDE introduciría linux EOL que entraría en conflicto con el estilo de fin de línea y causaría un conflicto de fusión. Lo mejor que puede hacer aquí es confirmar como EOL de linux cuando confirma desde el recuadro de Windows.