Search code examples
perforceunreal-engine5unreal-blueprint

Unreal Engine 5 & Perforce : not detecting changes in blueprint


I am new to UE5 and Perforce so sorry if this question may seem simple but I am a bit lost. I installed Perforce Helix depot and client on the same computer (I am the only person working on the project) by following this tutorial : https://www.perforce.com/blog/vcs/how-use-unreal-engine-5-perforce.

At first everything was going well. Until I realised that the perforce depot didn't had the same files as my workspace (I discorvered it after a sync that erased one month of work...). The reason is that new files or modification in already synced files (blueprints in my case) are not detected automatically and thus not proposed in the UE or PV4 interface.

Even if I manually add those files as changed, it will show the correct diff but will still considered that it is not changed : diff from UE5 showing that the new changes are not considered as changes. I have to say that, sometime, I am working without being connected to the source control and I deactivated the read-only files as I am working alone.

So my question is : is there a way to automatically detect changes in the blue prints or new files in the workspace?

Globally, I installed Perforce expecting that it would work a bit like Git but on UE blueprint and design asset.

What I did: I made changes to a blue print, created a new blueprint and refreshed the change list from UE5 perforce plugin to see my changes. But the list was empty.

What I was expecting: I was expecting the new or modified files to be present in the change list.


Solution

  • When you reconnect to the Perforce server, use the reconcile command. (Do this before you sync!)

    This is explained in more detail in https://portal.perforce.com/s/article/3481, but essentially boils down to running p4 reconcile at the command line (this is what I do since it's a single command and does everything automatically), or "Reconcile offline changes..." in P4V (this takes you through more of an interactive process).

    "Reconciling" your changes puts all of the new/modified files into the "opened" state (kind of similar to git's "staged" state but not quite), and very importantly, allows commands like p4 sync and p4 resolve to handle the files correctly.