@fikran CC licenses are not for software, so they can be misinterpreted and manipulated in various very lawyery handwavey ways when applied to software, mainly because of the subtlety of source-binary difference, but also patent law. They are also very different themselves. CC-BY is just attribution like MIT or BSD, CC-BY-SA is strong copyleft like GPL, CC-BY(-SA)-NC is weird "don't make money from this cause if there is a way to make money I want it all for myself??" kind of license.
GPL is more specific and covers software specific nuances better. GPL2 is outdated and shouldn't be used, it has loopholes and ergonomics problems and it's not compatible with GPL3 which fixed them. The only reason to use GPL2 and it's biggest loophole is to allow so called tivoization, locking down hardware, aka the reason you can't root your android device or update its kernel/OS.
@fikran Well, I don't have all the details committed to memory, I usually just do a quick search when I have specific question, usually forgetting to look in the most obvious place:
https://www.gnu.org/licenses/quick-guide-gplv3.en.html
@namark Can you explain a bit more about the problems with the GPLv2? I am familiar with Tivoization, but not with the rest…