Only cache the push event for the fork-source when it exists
What does this MR do?
This fixes a bug when trying to keep track of the last event for a forked project.
We'd try to set the last push event for the source-project to the newly created event if the project was forked.
But since https://gitlab.com/gitlab-org/gitlab-ce/merge_requests/14422 it is possible for a project to be "forked" while the
forked_from_project does not exist anymore.
Does this MR meet the acceptance criteria?
- 
Changelog entry added, if necessary 
- 
Tests added for this feature/bug 
- Review
- 
Has been reviewed by Backend 
 
- 
What are the relevant issue numbers?
Fixes #39352 (closed)