Common reasons why you may be missing a commit in your reports:
If you are unable to find a commit in one or all of your reports, check to see if any of the below reasons apply to your missing commit.
1. The commit is pushed to the server?
Waydev will not see your commit until it has been pushed to the server.
2. Repositories are completely updated?
Sometimes your data might be in the process of updating. Your repos are updated approximately every 3-4 hours - so long as there is a connection to your repository. If your repositories are not successfully updating, refer to this help document on blocked repositories for common causes and troubleshooting solutions.
3. Is your commit hitting our outlier detection?
If you see a commit in the Work Log but not in the Developer Summary Report you might be hitting our outlier detection. The is a record of truth and will have all of your commits. If your commit is hitting outlier detection it will not be included in calculations on any other report. We created outlier detection to remove commits from metrics that are likely not done by a real human in one day - things like minified js files, or importing a library.
4. Has your commit been Squashed ?
If your commit has been Squashed, you will not see your original pre-Squashed commit in Waydev. Waydev will display the revised commit post-Squash since we look to Git for the record of truth for your commit data.
From Git's perspective, Squashing is a form of historical ‘revisionism’ and alters the Git record. Right now, we've taken the approach of staying true to the Git history, and so you'll see some change in the reports when this is changed.
What does a squashed commit look like?
There are a couple important things to note about squashed commits, specifically what information gets preserved and what gets discarded. Both the original contributor information and time stamps are discarded and replaced by the contributor doing the squash, and time of the squash. The original commit messages will, by default, be concatenated into a new commit message, so the whole process looks something like this:
What a squashed commit looks like
The most important thing to note here is that squashing inherently distorts both the work timeline and any notion of proper attribution. Any use of squashing where the ‘squasher’ is someone other than the original contributor(s) is particularly problematic, as there will be no accurate record of who originally wrote those pieces of the codebase. This has the unfortunate side effect of making ‘git blame’ rather misleading, as it will report the squasher having authored that code.
Because of this, it’s a good idea to limit squashing to cases like the one described above — smaller tactical squashes of one’s own work, where the goal is to clear pieces of the work record which, if left in, would do more harm than good.
5. Has your commit been Amended?
If your commit has been Amended, just like Squashing you will not see the original commit in your reports. Waydev will display the revised commit post-Amend since we look to Git for the record of truth.
6. Do you commonly Git push --force?
If you force push your local work to a remote server without pulling in new work that has recently been merged, you risk overwriting this work thereby altering your Git history and deleting commits.
7. Still don't see the commit?
Email us at firstname.lastname@example.org or on our live chat system.