How to solve “could not be successfully checked out” with SVN and Unreal Engine 4 Editor

Some time ago I did play with Unity and when I was searching for help, I always stumble on articles comparing Unity and Unreal Engine. And few days ago, I decided to check Unreal Engine 4.

Usually when I try to learn something new, I find some tutorial and follow it. And as you can imagine, at the beginning any tutorial will take a lot of time. And obviously it would be nice to save your work periodically, just to save time if everything will go wrong. Also, at the beginning you can press or click something without knowing what you did, and everything will go wrong, and you will spend enormous amount of time figuring it out.

As result even when I am learning, I always use version control to periodically commit my work into it. And I saved a lot of time because I was doing so. And this time I was trying to setup version control for my UE4 tutorials. I chose to use Subversion as it is very simple to setup and use. I created local repository for this purpose.

But Unreal Engine 4 Editor did not work with my setup. I spent quite a bit of time on it and every time when I was trying to do “Check Out” I got this lovely message:
The following assets could not be successfully checked out from source control:
/Game/ThirdPersonBP/Blueprints/ThirdPersonGameMode

I did check tutorials, search for solutions etc. but no luck. I spent quite some time on it and finally decided to use Tortoise SVN for source control management instead of using Unreal Engine Editor.

But today I finally decided to spend some time on it and figure out what’s going on.

First thing that I found that file is locked after executing “Check Out” command in Unreal Engine Editor. This is good because it means that correct SVN command was issued to checkout file. But that’s it. I got no other text or error message. Then I found log file at Saved\Logs\MyProject.log. But I could not find anything useful there as well. It has exact command that were executed. Then it states which user has lock on that file. Everything looks correct to me, but I still have this error.

But finally, I did realize what was wrong. When I did “Connect to Source Control” I did not specify user name as it is local repository. And when Unreal Engine Editor executed SVN lock command, it will lock as user that logged-in in current Windows session. And after executing lock Unreal Engine Editor will compare user that holds lock against user in “Source Control Login” dialog. If they didn’t match, Unreal Engine Editor will assume that another user locked that file and will not allow to work with this file.

As result it was simple fix. I used my logged-in user name in “Source Control Login” and everything is working.

I hope it helps someone.