Well, for .deb there is the dependency problem. Even if your deb is just a release of a project, you can only use versions of dependencies that are in debian repository. Or include it all in your .deb, which becomes hard to maintain.
By "infinite branches" you probably mean that a nix derivation / flake is a recipe that can build any version of the project?
By "infinite branches" you probably mean that a nix derivation / flake is a recipe that can build any version of the project?