Asana is used for collaborative project management and tracking. It can integrate emails, files, tickets, and more offering over 100 integrations. GitLab is a single application that spans the entire DevOps lifecycle, providing not only project management, but also planning, CI/CD, packaging, verification, release, and monitoring, all automatically looping back their status and data from across the lifecycle into the issues being tracked.
Asana is less powerful than GitLab Issues within the issue descriptions themselves… e.g. no deep linking to comments, no automatic cross-linking between issues when they are mentioned, etc.