Modular approach to writing a dissertation using Overleaf, LaTeX, and Git.
Switch branches/tags
Nothing to show
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Failed to load latest commit information.

Creating a Modular Dissertation with Overleaf and Git

This accompanies the full description in this blog post.

The goal is to easily reuse content from journal or conference articles to create the chapters of your dissertation. This is accomplished by creating a dissertation project, then adding the chapters as fake git submodules, using the workflow described here.


  • Submodules don't work in Git. Add fake repositories instead.
  • This means that the changes to the overall project will cascade to the submodules- watch out!
  • Sync the individual chapters with Overleaf before syncing the dissertation


  • Pull changes from chapter from Overleaf
  • Edit each chapter independently
  • Push updates to Overleaf
  • Push overall dissertation to Overleaf


File Type conflicts

Overleaf prevents you from pushing .log, .blg, .gz, .aux files. These need to be included in .gitignore.

If you've already committed with these files and are getting an error when you try to push, you can make git forget these files by doing git rm --cached <file> and then committing.