¿Detener a Git de llevar los cambios al maestro a mi twig?

Voy a prolocar esto diciendo que soy relativamente nuevo en git, y estoy apoyándome en la GUI de Eclipse git, probablemente más de lo que debería. De todos modos, esto es lo que sucedió:

  1. Creé una sucursal remota desde el origen / maestro y revisé esa twig.
  2. Otro desarrollador registró un cambio a maestro. El cambio no se comstack en mi sistema, por razones complicadas.
  3. Hice un git pull esta mañana, mientras estaba registrado en mi sucursal, y los cambios en el maestro se llevaron a mi espacio de trabajo.

Así que ahora las versiones que no funcionan de ciertos files están en mi espacio de trabajo, aunque me ramifiqué antes de que esos cambios se registraran. Esto es un poco sorprendente.

¿Podría alguien ayudarme a entender por qué git está importando estos cambios mientras estoy ramificado, y cómo controlar este comportamiento? Por lo less, me gustaría revertir los files que no comstackn a las versiones anteriores, y evitar que git fusione cambios adicionales desde el maestro en mi twig hasta que esté listo para volver a fusionarme en el maestro. Idealmente, me gustaría introducir algunos de los cambios realizados por el otro desarrollador, porque algunos files en el proyecto son muy difíciles de fusionar.

Aquí está la configuration de git para mi copy del repository. Estoy en MYBRANCH:

 [core] symlinks = false repositoryformatversion = 0 filemode = false logallrefupdates = true [remote "origin"] url = ssh://git@1.2.3.4:7999/foo/bar.git fetch = +refs/heads/*:refs/remotes/origin/* [branch "master"] remote = origin merge = refs/heads/master [branch "SOMEOTHERBRANCH"] remote = origin merge = refs/heads/master [branch "MYBRANCH"] remote = origin merge = refs/heads/master 

Entonces, el problema aquí es que MYBRANCH está configurado para rastrear origin/master , lo que significa que cuando haces un git pull , el origin/master se fusionará en él. Puede destrabarlo haciendo git config --unset branch.MYBRANCH.merge . Asumiendo que hay un origin/MYBRANCH , puedes rastrearlo haciendo git branch -u origin/MYBRANCH (mientras estás en MYBRANCH). Si el origin/MYBRANCH aún no existe, puedes crearlo / seguirlo con git push -u origin MYBRANCH .

Además para revertir los cambios desde su twig, debería ver el command git reset http://git-scm.com/docs/git-reset