Have you ever left passwords, secrets or even SSL private keys in your code and later, sometimes years later found it and had that panic moment before you delete it.
Well you’re not alone, I have done it.
That’s why I love GitGuardian!
Because it’ll link up with your GitHub / Bitbucket account and scan every repository you have.
BUT
Not just the latest commit, it’ll scan EVERY commit going back through years of commits.
You might think you have deleted your password by just removing it in the latest commit but it’s still their in the history.
It’ll even teach you how to permanently purge it.
I was surprised even myself when I first used it how many passwords I had buried in my code, I’m a little embarrassed to even admit it but then I’d be doing as disservice to you.
When it comes to keeping your code quality, you need a scanning tool which will analyse every line looking for specific problems and highlighting them.
Things like security holes in your code, like SQL injection, it’ll point out when you write code and don’t escape strings before you inject it into a SQL statement.
The obvious security ramifications with SQL injection are clear, someone can literally take control of your entire site with this hole.
So having a tool which will scan your code on every commit, every upload and every release is a huge deal.
I was even surprised myself when I first used it that very old code of mine from 10 years ago had holes, not SQL injection holes but other things.
You can even install onto your IDE and local plugin called SonarLint which will scan before you even push your code.
Educating you as you code about how you should be writing.
If you’re writing PHP, you are probably making use of composer, or JavaScript with NPM. Both add external libraries to your code, other peoples code which you have little control over.
How would you know the quality of that code?
Without another tool which scans the code, you’d need to go line by line checking.
Synk on the other hand will scan every library and even raise Pull Requests in GitHub / BitBucket for you with recommendations about increasing the version and pointing out with different levels of severity.