Creating customize workspace folder on Salesforce Dev Platform




Currently there is no way to setup customized workspace folder within Salesforce Cloud9 Platform.

For instance, there is no option to set the placeholder folder so we can have every source code under ./src directory instead of root folder.

Has this feature being built yet?



I think @Jeff_Jobs has dealt with this issue before and may have a workaround for it but I can’t remember exactly what it was. He also might know where the thread is that I’m thinking of.


@bradydowling: I’ll be responding in depth to this when I can. Hopefully before this weekend.


Awesome, thanks @Jeff_Jobs. And for the record, I was thinking of this post about the migration tool in my comment above but I’m not sure if that’s exactly what you’re looking for @jonghyun85. If it’s not then I’m sure Jeff will provide more info in the next couple days.


We are currently using ant tool for migration to push over our code changes through git. Our goal is simply allocate git push to push our code to the staging. However, we simply won’t be able to execute such command due to the folder structure differences within cloud9.


@jonghyun85 not sure about your exact setup but for what it’s worth, here is how I use Cloud9 with the migration tool:


Thanks for sharing the video @Jeff_Jobs.

Indeed, I am using similar folder setup like you and using ant build tool to push our changes to organization. Except the fact that we have separate build files for different projects.

Unfortunately this kinda defeats the purpose of working under cloud9 IDE since IDE basically forcing you to execute ‘ant build’ instead of auto-sync save provided by cloud9 IDE. Developer shouldn’t need to go through this pain taking processes. This work-around carries additional burden for us to train fellow employees to properly use build.xml and ant tool within cloud9.

We will be falling back to other IDE until cloud9 comes with easy solution for better feature.

@bradydowling , please take a look at the video that jeff have it for me and check with engineers to see if they can reference this video and come up with the feature to support it.

Thanks all.



I empathize with your situation and am also hopeful that there will be an option to use “src” as a root folder.

I’ve made an ANT template folder that I upload into every new c9 project which cuts down on the setup tremendously. I also sometimes use a “migration” folder that houses a special package.xml so I’m only deploying and retrieving what I need instead of the whole repo.

I hope you stay with the community and check back for updates; appreciate you watching the video :slight_smile:


Thanks Jeff for kind response, your video helps to understand the workaround. I can see that you’ve went through pain process to set this folder up for migration. It’s good thing to know for sure.

I figured its not worth tackling to invest money on this since c9 for salesforce is still in the development and I am hoping to see more convenient factors to fully convince our developers, architects, contracts to use this cloud based IDE.

I shall keep monitor and check back for further updates as I do believe c9 will provide more feature later. :slight_smile:



The pain is minimal pnce you have a template, but I’m told that Cloud9 is working on this issue. I’ll post again on this thread at that time. Thanks for watching the video :slight_smile:


This is quite a disappointment, i love this IDE so far. Some great features, loving the test runner. I have read all the docs on setting up GitHub and have the Changes tab work great.

But yes, the lack /src is a challenge to sharing what i am working on in a GitHub repo most of the SF community is used to seeing, that being one with a /src in the root. Sadly lack of a /src folder also breaks my GitHub Salesforce Deploy button as well. I can also see this being a challenge for enterprise devs, where IDE choice is flexible and as such consistency with the use of /src is vital.

I like Jeff’s solution, but as has been pointed out kinda erodes all the things i love about this IDE so far. I’m starting to wonder if there is a solution involving some use of symbolic folder links and git ignores perhaps?


I’ve actually had success getting the symlink solution to work, and it actually works nicely in that I can run git commands in Bash directly within the ~/workspace directory. However, my problem seems to be that the s9 command which I need to push metadata to Salesforce appears to be using an older version of the Metadata API, and I have no way to the version used. My package.xml specifies API 39.0.