-
Notifications
You must be signed in to change notification settings - Fork 29
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Plugin detects asset modified in other branch, even though all changes of the branch are merged into the working branch #121
Comments
Hello, I am sorry to hear that you hit some problems. I can think of one known issue reported by another user;
Internally Plastic SCM tracks the merge status of the branch, but doesn't track it per asset, and as such the underlying CLI commands that the plugin uses are not taking this into account. Does this match your experience?
Can I also ask what version of Unreal you are using? Thanks! |
Hey @SRombauts, So, we have definitely run into the issue you described with subtractive merge multiple times. It is annoying but we can usually go back and find the CS, see it was a subtracted, and make the call to ignore the warning, which then fixes the issue once another version is saved. I'd +1 this! However I think this is something else. Investigating the file more, I found that a fork was created in the file version on the task branch that is mentioned in the warning. I am not sure exactly how since I thought exclusive checkouts combined with this modified warning should prevent that. Now, it looks like when the task branch with the fork was merged back into the main branch, it did not merge the file that was forked. Whether this was by choice of the person merging or not I am unsure. So now the two branches have independent conflicting versions of the file, even though they were merged. Any subsequent merges now do nothing because they are already merged, but they still contain different versions of the file, even after merging both ways. We also tried cherry-pick with ignore merge history. I'm not sure if this is a bug on the SCM side of things because it seems a bit strange. Now after all that, the plugin in Unreal seems to always show this warning on the file, seemingly because it sees a revision on another branch that isn't a parent in the current one, correct me if I'm wrong here. So the way to fix the warning was to explicitly reset the file to a specific version on all of the related branches individually, as separate changes, to manually force them in sync again. After that it went away. Do you think this actually be a problem with Plastic itself? It seems strange to me that the different branches can still contain their own versions of the file after merging them so I'm not sure here. Thanks again. |
Thanks for the detailed answer! It's more or less a limitation of how the plugin use the command line to track file status, while Plastic SCM use the branch graph to track merge on the changeset level (not per file). Cheers! |
Fix FPlasticSourceControlProvider::UsesFileRevisions() for UE5.5
Hey there,
We're running into a recurring issue in 1.7.0 (not sure if it's happened in previous versions as well) where it seems the plugin is detecting "Modified in /some-other-branch as CS:123 by username" even though the full branch, including the exact changeset that it mentions, is already merged into the working branch.
We take these warnings very seriously and block checkout in this case in order to prevent data loss. In most cases this works well but it seems like there are false positives like this which ends up really slowing things down.
Do you think this is a bug? Or is there anything else I can do to find the cause of the issue?
Much thanks!
The text was updated successfully, but these errors were encountered: