Beginner questions on team development on Unreal Engine and Perforce

I am going to use Perforce as version control for a team project.

I had a few questions on Perforce and Unreal to ensure my team can develop safely.

  1. If I check out a file, and never check it back in, what happens? Will my team not be able to check out the file ever?
  2. What happens if our version of UE4 is different than the Perforce Server’s UE4? What if everyone on the team has a different UE4 version? Does this cause issues when we submit files?

Thank you!

  1. An file that is Checked Out to someone can only be modified and changes submitted by that person, it is locked to all other users.
  2. If you are using an Launcher Version of Unreal Engine you should ensure that all team members remain on the same version, if someone submits an asset that has been saved by an version greater than the original file it may cause issues for others.

The main idea behind Source Control is as an insurance policy against possible issues and mess ups. You can always revert file(s) to earlier stages if you run into issues, you may lose progress but at the end of the day you havent lost your project.