Xcode / Why do we need to copy ~/Library/MobileDevice/ to /Library/MobileDevice/?

While running the command cordova run ios, or ionic run ios, I came across this error:

Check dependencies
Code Sign error: No matching provisioning profile found: Your build settings specify a provisioning profile with the UUID “31e9e9bb-8da1-48c6-9256-ec365145a0ac”, however, no such provisioning profile was found.
CodeSign error: code signing is required for product type 'Application' in SDK 'iOS 7.1'

At first glance, I decided to refresh my provisioning profiles, ensuring that they were valid and reachable. However, same issue occurred.
I'm pointing out that running the app from Xcode directly worked/works great.

Until I ... came across this post, suggesting to run this command:

cp -r ~/Library/MobileDevice/ /Library/MobileDevice/

Tried it and...the whole works!

I found that very...ugly and totally non-intuitive.

May anyone explain the essence of this kind of copy?
Isn't Xcode smart enough to handle that automatically?

That works, indeed, but I never want to admit things I don't figure out ;)

I don't understand what I've done.