Say we have the File structure (`--outDir js`): ``` bash ts a.ts foo |> b.ts |> c.ts js a.js foo |> b.js |> c.js ``` If we compile with all three files with `outDir` its all okay. But if we only compile `b.ts` or `c.ts` with `outDir js` then we would get a new folder inside `ts`: ``` bash js |> b.js |> c.js ``` Current workaround is to create a `.baseDir.ts` file under the `ts` folder and always pass it to the compiler in addition to the individual files. Workaround from grunt-ts : https://github.com/grunt-ts/grunt-ts/issues/77 Ported from Codeplex : https://typescript.codeplex.com/workitem/2297