Save a new copy of a Projucer project


#1

I want to save a second copy of a Projucer project.

But the “Save As” option only seems to save individual files.

Is there a “save new copy of this project” option?


#2

No, you’d need to create a copy of the .jucer file in the location where you’d like to save a copy the project. What is the use case for doing this?


#3

This question has been asked before, but copying a project isn’t as simple as copying a file. It’s a folder full of stuff, and it’s not obvious what “copying” it all would entail. Do you want it to copy your source code, or just the project? Or some of the code? Where would the build products go? What about include paths?

I don’t think you’ll find any IDE that lets you “save as” at the project level.


#4

The use-case is I have an existing project, but I want to fork a variant of it. For example, two projects might well share a number of components, but I want something with a different top-level.

I’m surprised if other IDEs don’t do this. The place I do this a lot is in Processing. Where I have a project with a bunch of functionality. I then want to try an alternative top level interface or visualization, but keep the existing project as is. If you save the project under a new name it clones the entire directory of source files, data assets etc.


#5

A way better way to do that is to move the code you share between projects into modules.
The modules section is not only for juce modules, you can create your own or download from other users from github and add them using the Projucer.

Here is the format description, how modules are defined:


#6

Yep.

That’s the ideal, @daniel. But normally my workflow, when I’m still figuring this stuff out is to make two copies of the project and then fiddle with both. Eventually I’ll end up discovering where the real re-usable components are and refactor them out to explicit modules.

But that’s usually slightly later.

It’s not like I know at this point exactly where to draw the boundaries.

But anyway, I guess the answer to my original question is “no”. So I should just copy the project folder manually maybe.


#7

Another possible workflow could be to manage your project with git and just create new branches if you are at a point where you want to try an alternative approach to a detail without recreating the whole thing.


#8

If you’re not already using some kind of version control for your project then git is definitely the way to go. There’s a little bit of a learning curve when you get started but it’s absolutely worth the effort.


#9

It would be wise to give a GIT newbie some version control suggestions. VS and Xcode both have version control but they aren’t the easiest to work with if something goes out of whack. You may want to try out SourceTree or TortoiseGIT and it’s always wise to learn a few of the common command lines…