(Github) Si combino la function A en el maestro y luego alguien más combina la característica B en el maestro. ¿Se perderá la característica A?

Pregunta simple digamos que estoy trabajando en la Característica A de mi proyecto y un amigo está trabajando en la Característica B, ambos empezamos con el mismo código fuente maestro. Y esto sucede:

  • Me fusiono mi twig en maestro. (Característica A)
  • Impulso el proyecto.
  • Luego fusiona su twig con el maestro. (Característica B)
  • Él empuja el proyecto.

¿Se perderá mi twig (Característica A) en el process? ¿Cómo te fusionas adecuadamente en esta situación? (¿Debo fusionar mi twig en la twig de mi amigo primero y luego puede fusionarse con el maestro?) (Probablemente tendrá que sacar (del maestro) primero antes de empujar, pero su código no tendrá la Función A de todos modos).

No podrá presionar directamente al repository remoto porque su historia divergirá de dicho control remoto.

! [rejected] master -> master (non-fast-forward) error: failed to push some refs to 'https://github.com/[me]/[project].git' To prevent you from losing history, non-fast-forward updates were rejected Merge the remote changes (eg 'git pull') before pushing again. 

Yo recomendaría un git pull --rebase --preserve-merges el lado B, para que B reproduzca sus confirmaciones, y luego retroceda.