Cannot sync my experiment

I am running an experiment now in pavlovia.
I need to change something in the experiment but I cannot sync my experiment in psychopy.
Should I delete and upload the experiment again? If I do so, is there any way that the URL can be the same?

Thank you very much for any help in advance.

Hey!

Could you share what happens when you try to sync? Any error messages?

Cheers, Thomas’

This is my screenshot when I tried to sync the experiment.

Ekran Resmi 2021-03-13 21.27.54

Should I recreate the project?

Go for it. Now, given that later on we’ll have an old and new project with the same name, we’ll need to take this into account when merging. We’re working on an approach on how to do this elegantly next week.

Thank you very much for your quick response. Will URL stay same if I do so?

Psychopy gave me this error when I recreate the experiment:

Updates were rejected because the remote contains work that you do
hint: not have locally. This is usually caused by another repository pushing
hint: to the same ref. You may want to first integrate the remote changes
hint: (e.g., ‘git pull …’) before pushing again.
hint: See the ‘Note about fast-forwards’ in ‘git push --help’ for details.’

This could be a quick fix: (1) delete the repo from gitlab, (2) wait a minute, (3) in your local folder, delete the .git subfolder (you might need to enable showing hidden folders for that, (4) sync again

2 Likes

PS, if you use the same project name, it will have same URL

1 Like

Sorry if this question is trivial for you but I am very new to this. Where can I delete repo? Should I delete the folders in repository one by one? I could not see delete repository option in gitlab.

No prob! In the left panel: Settings → General. You’ll see a page with heading like “General Project” and “Permissions”. At the bottom, expand “Advanced”, scroll down, and you’ll see a red button “Remove Project”

Thanks a lot. When I removed the project, the older results also deleted. I did not think about it. Is there a way to see the older results?

Not sure if we can retrieve them now, but they will be restored again when we start restoring the database from before the fire.

Ok Thomas, thanks a lot for all of your help.

1 Like

Hello @thomas_pronk,

I did not want to open a new topic therefore I directly ask you a small question here. I hope that is fine.

Actually, my problem is not perfectly syncing the experiment. It is more like “not being able to sync after a while”, For instance, I work on an experiment during the day, and make some changes here and there without any problem. However, if I want to edit the experiment the day after (or some hours after) usually I get the following error which tells me at the end ‘Could not find GitLab project with id 256756.’. :

Traceback (most recent call last):

  • File “C:\Program Files\PsychoPy\lib\site-packages\gitlab\exceptions.py”, line 304, in wrapped_f*
  • return f(*args, *kwargs)
  • File “C:\Program Files\PsychoPy\lib\site-packages\gitlab\mixins.py”, line 112, in get*
  • server_data = self.gitlab.http_get(path, *kwargs)
  • File “C:\Program Files\PsychoPy\lib\site-packages\gitlab\client.py”, line 662, in http_get*
  • result = self.http_request(*
  • File “C:\Program Files\PsychoPy\lib\site-packages\gitlab\client.py”, line 628, in http_request*
  • raise gitlab.exceptions.GitlabHttpError(*
    gitlab.exceptions.GitlabHttpError: 404: 404 Project Not Found

The above exception was the direct cause of the following exception:

Traceback (most recent call last):

  • File “C:\Program Files\PsychoPy\lib\site-packages\psychopy\projects\pavlovia.py”, line 663, in project*
  • self._project = self.session.gitlab.projects.get(self.id)*
  • File “C:\Program Files\PsychoPy\lib\site-packages\gitlab\v4\objects\projects.py”, line 782, in get*
  • return cast(Project, super().get(id=id, lazy=lazy, *kwargs))
  • File “C:\Program Files\PsychoPy\lib\site-packages\gitlab\exceptions.py”, line 306, in wrapped_f*
  • raise error(e.error_message, e.response_code, e.response_body) from e*
    gitlab.exceptions.GitlabGetError: 404: 404 Project Not Found

During handling of the above exception, another exception occurred:

Traceback (most recent call last):

  • File “C:\Program Files\PsychoPy\lib\site-packages\psychopy\app\builder\builder.py”, line 1374, in onPavloviaSync*
  • pavlovia_ui.syncProject(parent=self, file=self.filename, project=self.project)*
  • File “C:\Program Files\PsychoPy\lib\site-packages\psychopy\app\pavlovia_ui\project.py”, line 743, in syncProject*
  • if not project.localRoot or not Path(project.localRoot).is_dir():*
  • File “C:\Program Files\PsychoPy\lib\site-packages\psychopy\projects\pavlovia.py”, line 746, in localRoot*
  • if self.project.path_with_namespace in knownProjects:*
  • File “C:\Program Files\PsychoPy\lib\site-packages\psychopy\projects\pavlovia.py”, line 666, in project*
  • raise KeyError(f"Could not find GitLab project with id {self.id}.")*
    KeyError: ‘Could not find GitLab project with id 256756.’

What do I do in this case? I go to advanced settings and delete the experiment and re-sync with the same name so that the URL of my experiment stays the same. That is a pretty fast solution for an experiment that does not have any data, however, if I have already collected data I cannot delete the experiment and create a new one with the same name without losing data. Am I correct?

What can I do in this case? I would be so grateful if you have any solution for this situation.
Thanks in advance!

Hey! Sorry, I’m afraid I’m not well-informed enough about the newest PsychoPy developments to be of help, though I got two general tips:

  • Ask your question in a new thread
  • Don’t tag anyone in particular; otherwise the community might assume the tagged person is on the case

We’re working on a fix for this, but you can try this in the meantime: Unable to sync experiment to pavlovia - #7 by TParsons