These seem to be conflicting demands:
- you want the latest version to always be available in your repository
- you don't want to keep all versions
- you want to keep the history of all other files (which ideally should not change).
Here are some ideas that might possibly help you on your way:
rewrite history
You could however rewrite your history to remove the pdf file from the history, but then your complete history would need to be rewritten (regularly?) to keep the repository size small. This will then break your history and synchronization with colleagues will be broken, since all commit hashes will change, and it will be very complicate for them to keep in sync with you.
separate branch
An alternative approach might be to just store the pdf in a special branch "pdf" with a single commit. You can then always just rewrite that commit and keep all other history intact. But this would make it relatively complicated for your team members to get the latest version of the pdf.
other ideas
Investigate these alternatives:
- store the pdf elsewhere than in git
- can the pdf be generated from code? In that case store the code in git, not the end result