I'm working on a web project with frequent merges and releases into production. I'd like the repository to contain a full record of everything that was ever pushed onto the production server, mainly so that I can analyse an error log entry from three weeks ago knowing exactly what code was in production at that time.
I cannot use a release
branch for this because in Git, there is no concept of a history of commits made on a specific branch. We do use a release
branch currently, but it does not enable me to answer the question of "what code was in production three weeks ago".
So, how should I do this in Git?