La respuesta es no.
No hay una manera de configurar un repositorio remoto para que todos los que lo clonen tengan el comportamiento predeterminado de git pullcambiar.
Sin embargo, puede configurar un enlace del lado del servidor que verifique que nadie empuje las confirmaciones de fusión ( algo como esto , tal vez).
También hay algunas opciones de configuración que pueden interesarle. Todos los desarrolladores que clonen desde el repositorio remoto deberán configurarlo ellos mismos manualmente.
1. Opción branch.<name>.rebase
Puede configurar una sucursal local para usar siempre --rebase, de esta manera, reemplazando <name>con un nombre de sucursal:
git config branch.<name>.rebase true
Después de ejecutar esto master, la mastersección en se .git/configveía así:
[branch "master"]
remote = origin
merge = refs/heads/master
rebase = true
2. Opción branch.autosetuprebase
Ejecutar ese comando de configuración anterior para cada rama de Git puede ser una molestia, por lo que puede configurar Git para configurarlo automáticamente para cada nueva rama:
git config branch.autosetuprebase always
(También se puede especificar never, remotey local, véase man git-configpara más detalles.)
Sin la --globalopción, la configuración se guarda .git/configy solo el repositorio actual se ve afectado. Con --global, la configuración se guarda en ~/.gitconfig, y cada repositorio no configurado se ve afectado.
Esta opción no afecta a las sucursales ya existentes.
3. Opción pull.rebase
git config --bool pull.rebase true
(También puedes darle la --globalopción).
Si esta opción es verdadera, la ejecución git pulles equivalente a git pull --rebase, a menos que branch.<name>.rebasese haya establecido en false.