Nested projects workflow
Hello everyone I am a freelance professional developer and I mostly work alone. I haven't been able to find a proper tool or setup for my workflow. My projects are commonly structured as follows:
MyProject/
|__my_project_api/
|__my_project_web/
|__database_docker/
|__any_other_docker/
| __docker_compose.yml
| __readme.md
The reason for this structure is that I can have every part of my project living in its own docker context so things play nicely when I deploy using compose. Also, I deploy to my own VPS. My current workflow is as follows:
- An intelliJ IDEA window for deployment/VCS and to code scripts (these are commonly plain bash or python).
- A PyCharm window for api projects and a webstorm window for web projects
- When I make changes, I have to go back to the "main" (IDEA) window, commit from there and deploy (Tools→deploy)
The problem with this approach is that I find myself switching between windows very often, sometimes I get confused and end up committing and pushing from the Pycharm window instead of the IDEA one (missing changes from the Web window). Sometimes I switch to IDEA but it takes some time for it to pickup the changes. Sometimes I just need to upload a quick fix, so I have to open 2 windows: pycharm/webstorm to make the changes, and then switch to IDEA to commit & deploy. It gets messy.
How can I deal with this? Do you have a better idea?
Moreover, is there some Intellij tool that is not language-bound but provides the "base" VCS/services/deploy functionality? I don't want to load the Full IDE experience just to edit a couple of scripts and commit code every now and then.
Please sign in to leave a comment.
Why not just using IntelliJ IDEA for all the stuff (deployment/VCS, code scripts, api projects and web projects)?
I used to do that, however my projects have grown large enough to need 2 or more Python projects and I can't have them opened or attached in the same window because Pycharm doesn't support multiple projects completely (yet) e.g., I can't have two different console or django console profiles in the same window, or two different Django manage prompts in the same window as well.
It makes sense to submit the feature request for multiple Django console profiles then: https://youtrack.jetbrains.com/newIssue?project=PY (and for the other features that are not yet supported so that you can use the single IDE window for everything).