#270: lang: add lang.push_unique
fixes #270: command/publish: fix the bug that if pkg.directories is in .gitignore, cortex install will fail due to some dirs are missing