Вы можете просто сохранять файлы в состоянии по умолчанию в удаленном хранилище, удалять файлы из .gitignore и игнорировать изменения, которые будут сделаны в уже отслеженных файлах локально, используя:
git update-index --skip-worktree [filepath]
Каждый соавтор вашего проекта в идеале должен сделать это, чтобы они могли изменять файлы локально, не затрагивая файлы в удаленном хранилище.