Version control in the NRP


#1

Dear all,

What would you suggest for the version control of my own projects I have created in the NRP on local install? We would like to avoid creating a git repository in the project itself on the NRP.

I tried to use a separate folder with a git repository in it and set a Symlink in the NRP pointing to that, which apparently worked in older versions of the NRP, but does not for me (I am not sure which version of the NRP I use, how do I check?).

Has anyone a good suggestion?

Thank you,
Annika


#3

Dear Annika,

Not sure if you mean template or cloned experiments, but the best way to handle versions in the NRP would be to use the cloning mechanism. Every version of your experiment would be a clone of it. You can clone clones, etc… The experiments are then stored into $HOME/.opt/nrpStorage, folder which you can backup if you want.

Best


#4

Hello Axel,

So I cloned a project and adjusted it. And this is indeed in $HOME/.opt/nrpStorage.
The idea was now to put my modified (cloned) project on some sort of version control (git), but apparently it had led to problems when creating a git repository directly in that folder, so the idea was to create a symlink in $HOME/.opt/nrpStorage which links to a folder/git repository saved somewhere else. In a previous version of the NRP, this apparently worked, but if I try to do that, my experiment does not show up when I launche the NRP.

Should I just create the git repository directly in my project folder in $HOME/.opt/nrpStorage.

Thank you for your help,
Annika


#5

Dear Annika,

I think that if you create a git repo using your experiment folder (git repo name = folder name), and then you clone it exactly in the place the folder was, and it has the same name, it should work. The folder is referenced in .opt/nrpStorage/FS_db/experiments (don’t edit it, but you can read it and see that only the experiment folder name is used).

Axel


#6

Dear Axel,

would it also work if the folder, which referenced in .opt/nrpStorage/FS_db/experiments is a symlink?
Is there anything intentional in the platform that might prevent this from working?
Because it works on my old installation (August 2018), in contrast to Annikas very recent installation where it does not work.

Cheers,
Matthias


#7

Dear Matthias,

I tested it. Indeed symbolic links are just ignored by our proxy. But we did nothing for that. Might be that MongoDB internals changed? We will investigate. I filed a bug report (thought it sounds a bit more like a feature request because it is not a usual use case, but ok).

Cheers,
Axel


#8

Dear Matthias,

This has been solved and is in the master branch and the latest image. Consider updating your installation and try again.

Best
Claudio