#source-control

1 messages · Page 66 of 1

glad stag
#

I don't see why not, CI/CD/build/render users do this. You'll just run into issues when you check out/lock

analog lodge
#

Hm, ok, yeah.
I´ll need to think a bit more on how to proceed.
Gotta move one of the workstation out of the office temporarily, so it won´t have access to the office server anywayys.
So I´ll need to create a new temp workspace and sync everything to it and then create a new temp workplace.
Once its back and I just wanna switch between workstations for rendering, I can use the above approach to use the same user with the same workspace from different workstations.

#

Just one more quick question...
Can I just copy over the whole folder from the server to the workstations local drive and set up the mapping, WITHOUT then having to sync the whole depot again?
Copying is obviously a lot faster than syncing from the cloud storage, where we keep the depot.

analog lodge
#

HA!

#

Found it.

#

After copying all the files, right click on the Workspace root directory in p4v client, pick "open command line here", type p4 flush and enter.

#

That just updates the "have list" on your workspace, without syncing all the files.

spiral rapids
#

I just got git integration setup with my project, and when my partners pulled the project and initialized it with git, there's no .sln, how can we fix this?

merry verge
#

you generate it from the uproject

#

you're not supposed to submit the sln or any of the other visual studio project files

spiral rapids
#

Thank you 🙂

jaunty hornet
#

Merging changes from 4.26 to 4.27 is a no go right?

rotund bobcat
#

what do you mean? You can always upgrade project "relatively" effortlessly

#

downgrading would be a lot more annoying

quaint obsidian
#

all branches
yes it can lock, you need a custom plugin for it

lapis lintel
#

Do you guys recommend digital Ocean as a perforce host or are there better options?

jaunty hornet
radiant musk
#

Hello, is someone using perforce? I have a few questions

radiant musk
#

I have used perforce before just as an user to submit etc, but now I had to set it up myself and Im learning most of the basics. For example how can I check how much server space i have on the depot left?

jaunty hornet
#

There should be a separate program called P4Admin

radiant musk
#

yes I have it, but it can't seem to find where it shows

reef oriole
radiant musk
#

All buttons are greyed out except users and groups

jaunty hornet
reef oriole
reef oriole
radiant musk
jaunty hornet
radiant musk
#

ok I logged in as admin

#

I see disk space usage

#

but it doesn't show how much

jaunty hornet
#

this is what i see here

radiant musk
#

what am I missing

jaunty hornet
#

Oddd

#

what OS is your server running on

radiant musk
#

Windows 10

#

oh ffs lol

#

I had to refresh it

#

lol

#

it works now

#

Here is one more thing I don't understand. in perforce admin I have this tab depots and I have some old project in it. Why are they here ? In P4V Depot there is nothing

vale basin
#

In p4v it's probably not mapped in your workspace. Modify your workspace and you can probably reveal them. In p4admin everything is visible, there is no workspace mapping

radiant musk
vale basin
#

No idea. Never had the balls to obliterate anything. P4 is like this black hole that sucks in everything and nothing ever leaves it for me lol

jaunty hornet
#

Wait till you do a Get Latest Revision with the Force Operation on

#

And find out you deleted a file locally and forgot to designate it as deleted on P4

lapis lintel
#

I'm just getting into source control and was wondering how like the change logs work I'm sure they aren't full project files but if I need to roll back to say 3 changes logs previous how is that data stored is it just a massive file is it a snapshot of the project?

radiant musk
#

I feel like my project is gonna be a real mess with perforce lol

vale basin
#

Just imagine it without!

#

Even for solo projects version control is a must for me

radiant musk
#

it was without until now

bleak hamlet
#

how to connect to multi user source control
it always lands this error upon connection

pulsar parcel
runic summit
#

If I want to roll back a few changelists, do I do that sequentiually? I get an error on the first one (most recent one) that says the item is opened on the client (though I've have exited Unreal)

glad stag
low tangle
#

can u setup local perforce server on your pc as your unreal engine source control?\

#

i dont have money to put my perforce server on the cloud atm

#

and im working alone as now so i dont think i need a cloud perforce server

#

tag me btw

runic summit
runic summit
low tangle
#

thanks for the information btw

#

one more question,other than epic documentation on source control,is there any resources that people here use to setup perforce

#

nvm just found my answer on pinned comment from dimy

glad stag
runic summit
reef oriole
storm sleet
#

I just realized you mention how to setup blueprint diffing with plastic. Nice! Will try out as soon as I'm on the computer

runic summit
#

Why can I not seem to push my changelists from p4v? It shows zero files pending - but I can push from Unreal just fine, so I know it's connection

#

I figured out what it was - somehow I logged into a different user on this workspace and all the files are on that pending

#

need to figure out how to change the ownership of htem

#

It won't let me "see" the changes on the other users (User A can see User B's pending changelist) but I need to be able to see User A's FROM User B, because I want this CL pushed from User B)

#

All users have Super access per P4A

#

my only guess at this point is that somehow the connection in Unreal was made to one user, but not the one I want, and P4V doesn't connect the two

#

I'm not sure how you could be connected to Perforce in Unreal but not connected to the same user you logged in as

#

Yeah, that was it

sullen roost
#

anyone know what the default storage amount for a repo using git lfs is? can't find a straight answer online some say 1gb 2gb 10 idk

vale basin
#

Depends who your host is

#

Git lfs itself doesn't specify repo size limits. GitHub and gitlab as hosts do though

#

Gitlab, even self hosted has limits too afaik

rotund bobcat
sullen roost
#

yeah on Github itself its 2GB so i've invested in a data pack

glacial shore
#

Hi Im new to perforce. Is there anyone in here, that I could pay $20-40 just to walk me thru how to import an existing project into perforce and a few things?

#

I already have perforce up and running, hosted on a GCP server.

#

Just wanting to have a good setup to start with

signal lynx
#

anyone having issues with checking out files on ue5 with perforce

signal lynx
#

go to p4v and hit refresh top left- then right click your file and mark for add (on workplace)

#

then doubble click the red thing on the right- add

#

as well still having issues of changing something and ue5 not checking out the files

reef oriole
#

I have been using Perforce for years, but I have always updated Unreal Engine source code from Github, esp for the ability to open Pull Requests from our own changes.
Do some of you know if it's possible to upgrade the Engine directly from Epic Games Perforce servers when you have UDN access?
I guess you have to start from scratch from one of their stream and only then add your own game dir alongside the Engine dir in the repository
Is there some public docs on how to setup that? (now that I don't have UDN access 😉 )

reef oriole
# reef oriole I have been using Perforce for years, but I have always updated Unreal Engine so...

The official documentation on how to "Downloading Unreal Engine with Perforce" is good enough to know how to connect to Epic Games' Perforce repository
https://docs.unrealengine.com/4.26/en-US/ProgrammingAndScripting/UsingPerforce/Basics/ (I have been using this)
But this doesn't tell me if it's possible to, basically, merge from Epic Game Perforce repo to another one

Instructions for downloading Unreal Engine source code with Perforce.

reef oriole
pulsar parcel
#

I don't think so, but the complete history is usually not particularly useful unless you're keeping a live mirror of //UE5/Main or something

#

usually the process was to p4 sync from Epic's P4, copy it over whatever is already there and reconcile

#

pretty much the same process as if you were pulling from the github, with the extra step of running GitDependencies.exe

reef oriole
#

Yes, thanks, it's what everyone does to my knowledge
Albeit some from Github like I said

#

But I have someone else telling me that it should be better than that since it's both Perforce,
So I was considering that, perhaps, I missed a sort of "distributed" model for Perforce: I couldn't find anything like that using google & Perforce official docs

pulsar parcel
#

I'm sure there is a distributed/clustering model since I'm sure that's what Epic does for their worldwide team, but that's when it's the same set of depots and the servers trust each other

#

If you have a 2015.1 or greater Helix Core server then you can use the Helix native DVCS commands (p4 clone/p4 fetch/p4 push). If you have a pre-2015.1 version of Helix Core (or very large repository sizes to be transferred), then P4Transfer.py may be your best option! See next section for guidance.

#

hmmmm

reef oriole
#

Mirroring I was aware of
p4transfer is community based, not supported, but very interesting nonetheless!

pulsar parcel
#

it's worked on by someone who works on p4's consulting team

reef oriole
#

I'll have to wrap my head around their DVCS model; I cannot find useful info in if it's possible to use this with Epic Games' repo, or if it need a specific setup

merry goblet
#

Does anyone know why the Perforce plugin is not in my friend's list of available plugins - UE4? Does he have to download any Perforce software first?
Thanks!

lucid stream
#

DVCS isn't enabled with the epicgames repo perforce endpoint atm.

pulsar parcel
#

then you'll probably have to use that python script then if you want a copy with history

lucid stream
#

DVCS is kind of weird, and has a couple different usage scenarios. it's really only useful imo if you're using it to mirror from one server path to another (where there aren't conflicts)

reef oriole
#

Okay, thanks; it seems they are not even using the same terms; "depots" vs "repots"

teal bone
#

Is repots even a word? It should be repos!

pulsar parcel
#

well p4 had branches but they were slow, and streams replaced the

lucid stream
#

it's what you do to plants that have outgrown their temporary home

pulsar parcel
#

so when people say branches now in p4 land they actually mean streams

teal bone
reef oriole
#

sh*t, I am uncovered ;p

#

I was actually mixing with P4 Git
https://www.perforce.com/manuals//helix-for-git/Content/Helix4Git/chapter.depots-and-repos.html

All versioned files that users work with reside in a shared repository called a depot. By default, a depot named depot of type local is created in the Helix Core server (the Helix server ) when the server starts up. This kind of depot is also referred to as a classic Closed. In addition, the Helix server installation creates a default graph depotClosed named repo. A graph depot is a depot of type graph that serves as a container for Git repos.

crude basalt
#

I've used Subversion professionally for decades on a variety of projects, and for Unreal for the last six.
It works well, and I'm not sure why there's so much dismissal for it.
We chose it because we were a small company and didn't have the time or money to bring in Perforce. i.e. we aren't big enough to want to have a "Perforce Expert" on staff, which seems to be required to use it well.
Subversion supports central locking (required for uassets and source assets), works on a regular-old linux server (we actually have our running on a Synology), and backs up with normal backup systems.
It handles very large binary files (required for uassets, sources) as well as code. (We put both kinds of data in the same repo.) Git's large file solution(s) are still not ready for primetime, IMO, and need a completely secondary filesystem that you have to also manage.
We couple it with BeyondCompare for code commits.
Art and content teams usually commit from inside Unreal.

crude basalt
# crude basalt I've used Subversion professionally for decades on a variety of projects, and fo...

We also use TortoiseSVN (as we do all dev on Windows boxes).
Unreal's Subversion plugin does have some performance problems. The main one being that asking for the status on individual files is much slower than getting the status on the entire repo (once you ask for more than like three files).
We made a local change to the plugin so that it just does a full-repo status update instead, and then the standard Unreal revcontrol caching kicks in.

#

Sadly, OFPA isn't supported on anything but Perforce as this point, and I haven't heard any promises for the other systems yet. Nor is there any real docs about the Interfaces implemented for Revision Control, so it's hard to tell what needs to be implemented for them to work.

[Edit 4/27/2022: I was mistaken: UE5 handles OFPA in editor with Subversion just fine. Changelists don't work, but everything else does. (Hooray!)]

#

Forgot to say: we've launched and maintained a live game using Unreal + Subversion.

shadow kernel
#

Is there any issues with submitting a changelist to the perforce server and working on the project at the same time? I assume it should be fine if it's on the local and not connected to source control?

woven sluice
#

Just don't

vale basin
#

i've always avoided it incase i change the file that is about to be submitted and then my commit is not what i wanted it to be

#

your commits SHOULDN'T take too long if local, go grab a coffee or something. IF your commits are taking that long, i'd probably look at your workflow to reduce commit size. commit early, commit often as they say. And ofcourse limit commits to specific pieces of work, not monolithic commits of hundreds of changes

shadow kernel
merry goblet
#

Does Perforce P4V add the Perforce plugin to UE4, or do you need to also install P4 and P4D? I've setup the server on my local pc but my friend needs to access it so we can both make changes.
Thanks

vale basin
#

I think you still need to install p4v to setup your workspace at the very least. And then ue4 just provides some automatic functions and editor integration

#

so yes, pretty sure you need P4V. You don't need P4D

#

not just for another users machine anyway

rain basalt
#

Hi, I have a perforce server with two computers connected (PC and Mac), but when I edit a file from mac, with some special character in it (like 'ñ', 'á'...), on Windows it loses all the references of that file. That didn't happen with Git server, so I think this is something about the character encoding on the perforce server setup. Does anyone know about this?

teal bone
#

In the file contents or file name?

rain basalt
#

the file name

#

like, all textures inside a folder that has an 'á', or a static mesh with an 'ñ', in the name. All those files gets lost if are referenced in the level or inside a blueprint

#

but only if I modify them from mac and download them on windows

merry goblet
#

I have my pc set up as a Perforce server. When my friend installs P4V, does he need to choose Remote Server to be able to connect to mine in order to use Multi-User Editingf in UE4?

merry goblet
#

I found loads of videos on how to setup the first pc, but not how a second pc can link to it in UE4

storm sleet
#

The thing that's officially only supported with perforce is changelists

reef oriole
# storm sleet The thing that's officially only supported with perforce is changelists

I have started adding support for warning if changes are made to an asset on another branch
And the weeks after it will be about implementing the support for changelists 🙂
I'll see if it make sense to release partial support for earlier adopters or go straight for the full blown integral support at once (depends on the amounts of time and issues I encounter)

storm sleet
#

Btw I assumed the current implementation notices that the assets changed on any branch? Most users will likely have a single-branch-for-assets workflow so it doesn't matter too much. The persons working on branches are very few in our case, and we work closely together

#

(btw I hope you don't have to work ok saturdays?)

reef oriole
#

Nice!
I should be doing all the important changes on branches as PR for external reviews and validation
But I am still doing some boring cleanup and refractor on main directly when I feel like moving faster and it isn't risky

#

I am not really working, I'll enjoy the weekend don't worry!

storm sleet
#

Ok 🙂

#

Imo it's fine to do smaller and not risky stuff directly on main. I personally really like that you develop features on branches. I know many smaller projects that just have their commits on main directly and rarely branch, but most of these projects are very distributed (as in: receive "pull requests" as patches per mail for peer review)

#

Eg, the whole OS I'm using in private as a hobby is maintained on one branch, basically

#

(ok they used hg before, and before that they had their own update mechanism called replica, which was essentially copying source files from a shared directory based on changes)

#

(the default trunk branch name there is btw "front", although it's a git repo 😂)

#

You know what would be great? If codice had some public repos users could include as xlink (or at least pull from directly)

#

At least it would be interesting

ivory zephyr
#

I am running into an issue using UE5 and Git with LFS. I am using LFS for my .umap files and when I pull them they show up empty. The file loads properly but it shows up as if it was an empty world with not actors in it at all. Has anyone experienced this or knows what to do?

storm sleet
#

External actors? Did you commit the external actors, too?

#

(just an idea. I'm not a git user with Unreal)

ivory zephyr
#

The folder that is __?

storm sleet
#

ExternalActors

#

Hm... __ExternalActors__

#

Or something

ivory zephyr
#

Hmm no i didnt

#

I thought that was a generated file

storm sleet
#

Should be directly inside Content

ivory zephyr
#

Didnt see that on ue4

#

I guess they changed the way thigns work

storm sleet
#

(that is, if you have ofpa enabled for that map)

#

It's a new feature

ivory zephyr
#

I see

#

Thanks

#

Thats prob my issue than

storm sleet
#

Might be default on world partition maps

#

Each actor has it's own file, basically, which is great

boreal pilot
#

So I have problems with performing large Engine Code operations with Perforce and have for a couple of years that I still don't know how to resolve.

Any time I build and upload an Unreal Engine Source build to Perforce I've always had to do any "Reconcile Offline Changes" tasks in small batches and similarly break down large Perforce CL of about 60K+ files into smaller chunks in order to shelve or submit them. If we ever fail to do this, the Perforce server always locks up
(I know it locks at a certain point because at the point where it locks up, 'p4 monitor show' will alway show a 95%+ CPU usage and it will remain running for more weeks if left to run.) As a result, if that happens, I generally terminate it.

This is a real pain when trying to update our local engine source with what is on the UnrealEngine GitHub, as we can't just Reconcile Offline and Submit all at once. Whenever I try the server inevitably locks up and doesn't work, even after just letting it run for a few days.

We currently run P4 on a 4 vCPU Hyper-V VM with 32GB of Memory. Surely this is an overkill hardware config for hosting an Unreal Engine Helix Core installation? Does hosting a large centralized UE perforce installation require more compute than we're using?

We enabled parallel sync, submit and shelve a few months ago, this raised the capacity of files before lockup, but doesn't completely fix the issue.

Anyone know what could cause this, and/or we could do to address it?

reef oriole
# boreal pilot So I have problems with performing large Engine Code operations with Perforce an...

Hey, I didn't handle the administration of our Perforce server, but I helped set it early;
it was running on an old 2x2cpu with something like 8GB and it was far from enough as soon as the project started growing (also, we had disk corruption)
We switched to a dedicated server with something more like 8 or 16 cpu and 64GB or RAM and dual giga ethernet IIRC; we asked an external company to spec it and install it.
It was night and day; my understanding is that Perforce server is really hardware hungry
(remember that it's just one experience, not serious science there 😉 )

reef oriole
# boreal pilot So I have problems with performing large Engine Code operations with Perforce an...

My recommendation would be that you try to up it to 8vCPU and see if it help, and if it does but is not enough, go above
I would say that you also need at least 2GB RAM per vCPU as a rule of thumb in a lot of case with server & build machines (but often more than that with database servers)
So think that right now your setup should be very good with memory, cpu limited, if you double vCPU I think it would be enough, but beyond that beware / track the peak memory usages
And as a last bit of experience: when p4d got stuck at 100%cpu it often get stuck forever, at least if some other people keep trying using it

boreal pilot
boreal pilot
wet comet
#

"p4 configure set dm.status.matchlines=0" dramatically sped up my p4 server when I was doing engine merges before

wheat harness
#

I am starting to learn Unreal Engine should I start learning version 4 or version 5?

wet comet
#

This is not the proper channel for that question

wheat harness
#

Sorry didn't see I was source control?

#

also don't know why I phrased that as a question. Have a good one.

junior bluff
#

hello can someone explain me how to connect to my friend's perforce server? he did install the helix core p4d server and after the helix p4d and i dont know if he did good for me to join (we are not in lan)

pale walrus
snow herald
#

I'm a newbie to this, I'd like to setup a perforce server for my team. Which would be simpler to start and maintain, digitalocean or amazon aws? Or does it not matter?

radiant musk
#

has someone setup perforce for ue 5? I think I did everything right, but It can't find my workspace

reef oriole
radiant musk
#

oh damn

#

I Forgot to add ssl:

#

in front of the ip

#

lol

#

but anyway, can you give me some tips or something about using perforce with unreal ? Because I haven't used it before

reef oriole
#

I would say, make sure you have read the official doc;
https://docs.unrealengine.com/5.0/en-US/using-perforce-as-source-control-for-unreal-engine/
https://docs.unrealengine.com/5.0/en-US/using-source-control-in-the-unreal-editor/
but then, if it's not your style, or not enough, watch a youtube tutorial, Helix own official docs & tutorials... plenty of materials here since it's basically the default source control for most big game studios

How to setup Perforce so that you can share assets with other on your team.

How to use Source Control software inside UE4.

radiant musk
#

thanks

reef oriole
# boreal pilot Mind if I capture your response to use for later reference?

Hey, sorry, I swear I did write an answer to let you know I don't mind, but somehow I didn't send it
I also wanted to double check with official docs;
But all what they say is that you could do it with a couple GB RAM for a million file, and 2CPU should be enough up to 100 users!
https://www.perforce.com/manuals/teamhub-admin/Content/HTH-Admin/hardware.html
https://p1community.force.com/Community2/s/article/2957
My experience comes from a 20-30 users team, but also 5-6 build machines, some devs at the office and others remote, with multiple workspaces each (up to 3-4 in the tech team)
I didn't investigate/profile the cases of "server locks" and I know there are a lot of factors, as well as a lot of settings to help improve performances... but as a rule of thumbs, my experience with Perforce is that it requires more than is recommended to work comfortably.

vale basin
#

Whitelisted, as in only allow connections from pre-approved IPs

junior bluff
#

How do i do that

radiant musk
#

So Im trying to upload my project

#

but when I submit this changelist nothing happens

#

there is nothing in the depot

#

but in unreal editor my files have a red + sign

glacial shore
#

Hey guys... new to Perforce. I have a clean install of it. I already uploaded my project files to the depot. But I just read I needed to put a 'typemap'

#

Anyone familiar with that?

glacial shore
radiant musk
vale basin
#

The unreal docs have an example typemap iirc

glacial shore
#

Is there a standard typemap i can use? Could i just copy the UE docs one?

vale basin
#

That has a decent starting point for one

glacial shore
vale basin
#

I replaced it, but if you want you could just append to the list under typemap:

#

If you are only working in unreal, just replacing is fine

glacial shore
#

ok

#

yeah im just using it for Unreal

#

thanks

glacial shore
#

I went ahead and appended to it just in case i use other files later.

radiant musk
#

what should it mean "files not on client" ?

pulsar parcel
#

shame it doesn't link to any of the UGS stuff

glacial shore
#

Once I have the files in a depot, what should I do to load the files to a new client? Does the new client just create a workspace and open the UE project from p4v?

jolly fog
#

I need some help with setting perforce up. Any dev ops wizards around?

radiant musk
#

ok what the hell im doing wrong. I submit a changelist with 6500 files, it loads for like 30 minutes

#

and I still have nothing in the depot

#

wtf

glacial shore
radiant musk
#

this bar here is loading

#

but I had a separate bar in the middle of the screen that was showing the submitting files and it's gone

#

and Idk if I should wait now or not

glacial shore
#

I would revert , delete your changelist and then just try one file and make sure it transfers

radiant musk
#

I didn't get any errors, i will wait a bit more

#

and now this appeared

#

how the hell I have remaining 2 gb, when Im using 50 gb space and my project is 15 gb

#

what the hell

glacial shore
#

Check your P4 admin

#

See what it shows for space available

radiant musk
#

it says that I have remaining 2 gb

#

and used 48

#

but what is it used by when my depot is empty?

pulsar parcel
#

whatever the /hxdepots mount point (if it's Linux) points to needs at least 2GB free and P4 is configured to have a minimum amount of available space to prevent data corruption

radiant musk
#

I don't get what is taking up my space ? my depot is empty

#

are there any hidden files ? How do I delete what is there

pulsar parcel
#

well I know literally nothing about your server and how you've configured it

#

p4 diskspace will tell you what's free/used

glacial shore
#

Probably need to just redo your sever - I had to do the same thing after getting errors with uploading my project files to it

radiant musk
#

Im not familiar at all, I just followed a tutorial

glacial shore
#

Clean install

pulsar parcel
#

that's kinda bad advice

#

though on AWS I was able to expand the drive space of the depots volume without a restart

glacial shore
#

He’s got some issue that’s eating up 40gb and it’s a new install anyways - I’d just clean it up first. Also make sure you do your typemap before u transfer files.

radiant musk
#

My server is on digital ocean

#

what should I do ?

radiant musk
#

anyone can help ?

halcyon quiver
#

Guys, is there any way to build a custom Engine from Git that is small in size? My engine takes up 150gb of space.
I only use it to compile projects on the Nintendo switch.

boreal pilot
boreal pilot
#

@radiant musk Well known and respected tutorial here:https://allarsblog.com/2014/09/25/setup-perforce-digital/
Steps are the same for UE5 for getting set up. If you have any specific questions during setup, feel free to shoot me a DM,

woven sluice
#

allar's blog article is nearly a decade old and will be grossly out of date, you could read it for some bits of info but find and use official P4 docs instead

pulsar parcel
#

"yes just run this script from this random URL as root"

#

and it downloads r18.1 which is ...old

boreal pilot
boreal pilot
tiny ore
#

Hello boys, i'm using P4V.

I try to rollback to an X revision.
So i already get the revision, and everything is fine, now i want to push the revision X to became the latest revision, how i can proceed ? ofc as always documentation is blurry as fuck with helix.

#

Okay, i just realise helix just never update their doc correctly.
it's not "rollback" but "undo" now.

I found it (Undo to... command)

simple lodge
#

Use buildgraph to MakeInstallBuild

radiant musk
#

please SSH into the droplet and check if webserver services are running. What should this mean?

crude basalt
storm sleet
#

I doubt there's so much to reverse engineer, really. I think they are just packages?

#

if in doubt, SRombauts is on this discord

#

iirc I was able to use the "older" plastic plugin back in UE5.0 EA and also 4.27 with external actors activated. So there's a high chance it just werks, but within limitations

merry verge
#

OFPA files are indeed just normal uasset packages. I think the speed just comes down to there being so many files and the plugin not originally being designed with that in mind.

storm sleet
#

Yeah. Afaik plastic plugin batched files inside a directory into one program call, but with OFPA you have hundreds of directories with just one or two files each

crude basalt
#

Oh, yeah, there's nothing special as far as I know with the assets themselves. There must be some interface in the SVN plugin which isn't implemented which allows it to work with the special OFPA commit dialog box.
I also haven't checked in the most recent UE 5 update to see if it suddenly started working.

glacial shore
#

So Ive got my project loaded to a Depot... I wanted to have a new user open the files. Once they log into P4V client they can see the depot with the files. Do they just open the project and it will download the files they need? Or do they need to download all the files to their workspace first

pulsar parcel
#

What? You make a workspace and then you sync to it

#

Hopefully it’s actually a stream depot too

pearl tusk
#

are these commands are enough to activate LFS? doesnt seems working

rotund bobcat
#

git lfs install is enough

#

you just need to have the .gitattributes specifying what files should go in lfs

#

also note, if files existed not in lfs, and then you add lfs, those files will still be tracked in non-lfs

#

@pearl tusk

crude basalt
storm sleet
#

With ofpa I started to love the "choose files to save" option

unreal citrus
#

Is there anybody who used both Plastic scm and Perforce as version control and could give opinion about which is more convenient to use?

storm sleet
#

@reef oriole (though he may be biased)

#

but he's the only person that comes to my mind, at least. I can imagine many people who use perforce will continue using it. Plastic is often a cheaper alternative (that's why we use it too)

#

especially in Unreal context. Unreal is pretty perforce-focused with UGS, changelists and more

reef oriole
#

In my opinion, Git without LFS is still the simplest way to handle a single person hobby project because there is nearly no setup, no actual server, admin, authentication etc

#

But for any team project, or as soon as you use PlasticSCM and have it setup, it's the easiest option to create a new workspace, repository etc
It's a breath compared to perforce, though there are still ways to improve in this area

#

Though, for advanced user, there are more powerful setup with Perforce, more tools and options (like virtual steams, UnrealGameSync, )

#

About the GUI/CLI; Perforce doesn't track changes made out of perforce, you have to manually ask for a "reconcile" for it to detect all local modifications (eg if working disconnected, marking files writable locally) and it takes a looong time on big projects
PlasticSCM does just like Git, telling you all pending changes as you make them, with or without proper tools

teal bone
#

Reconcile isn't so bad if you limit the scope.

#

But with UE I've had to wait hours for a clean and sync using p4v.

reef oriole
#

Perforce command line tool is a monstrosity I could never really master nor like in years of using it profesionnaly. Documentation is often bad
PlasticSCM cli is far from perfect, still missing docs and examples sometimes, but at least it makes sense most of the time and I like it more

teal bone
#

I setup a command line tool to complete it in about 30m.

reef oriole
#

Yes, I have had the same experience with Perforce, going back to the command line when I couldn't get a huge merge from the GUI
But this shouldn't be needed!

#

PlasticSCM can also handle branches and merges efficiently, and don't take time to switch your workspace; with Perforce we learned to limit the number of streams, because of the heavy setup, cost to switch and often issues around that
Even if most Unreal game projects keep mainly one main branch, in order to not merge assets, it's good to be able to create branches for code, tools etc

storm sleet
#

what I really love about Plastic SCM is, server-side merge. No need to download all stuff from the art branch just to do the merge and upload it again.

#

(we have /main, /main/ART and /main/whatever-we-are-coding-ticket)

jolly fog
#

はろ

obtuse yoke
#

Anyone ever setup Perforce on their QNAP? I have 872XT so it's Intel processor and 16GB RAM. I've never setup Perforce on anything but just thought maybe having it on the NAS is better than just on the computer that I'm using for UE

reef oriole
pulsar parcel
#

meh we tried Plastic a while ago at my old job and it was a pretty grim experience, buggy and crash prone server, buggy client, artists not knowing wtf to do with merge conflicts

#

we switched back to P4 within 3 months of trying to be patient with it

storm sleet
#

We have two separate repositories. One for every art related work files (maya files and stuff), that's the preparation repo. Then we have the game repo with the fbx files and the unreal project. We (the coders) ignore the source directory there using the cloaked.conf file

#

Since we managed to develop our core functionality in a separate plugin we plan to migrate that to a separate repo and xlink that into the game project

reef oriole
#

Interesting, we used to have the fbx on the preparation repo too

storm sleet
#

I wanted the game repo somewhat self-contained, so that we can always reimport the same version of the fbx

#

Since partial xlinks aren't well supported (and we don't have nice namespaces as in plan 9) there are not many options

#

It would be nice if it worked though

reef oriole
storm sleet
#

Cloaking a directory completely ignores anything about it. That's checkin and also download

#

So you can cloak the dir and it won't download the files and also won't detect any changes

#

Ignore only ignores the changes

#

We basically have cloaked.conf inside our ignore.conf to prevent users from accidentally checking in their own cloaked.conf

#

Artists don't need this, they work with gluon on the art branch only and the preparation repo (which has no branches)

reef oriole
reef oriole
pulsar parcel
#

we don't have binaries in source control

#

they're retrieved by UGS

#

I suppose it's technically in source control but way easier

#

also the cloaking was also buggy

reef oriole
#

Yes UGS is nice

reef oriole
pulsar parcel
#

we ran into a weird race condition on multiple machines with it

reef oriole
#

In the meantime, I released a maintenance version of the plugin
I am finishing the implementation of warning users if assets are changed in another branch
(useful for team using task branch or release branches)
https://github.com/PlasticSCM/UE4PlasticPlugin/releases/tag/1.4.13

GitHub

1.4.13 release for UE 4.27 and UE 5.0 (early support)
What's Changed

Fix icon for Locally Deleted asset to show as Removed instead of Private in for UE5 by @SRombautsU in #21
Fix failure to ge...

storm sleet
#

We don't check in pdb files currently, only dlls. Pdbs are quite big for source control, so I personally would like to not check them in at all (also not the dlls, if possible)

#

I really wish there was some UGS plastic solution and I can't wait to hear about that. It would be great if the binaries are just always latest version and never version controlled. I mean, it's source control, not artifact control.

reef oriole
#

Yes, there should be an option for some binary files to only retain the last N version(s)
More than one so you can still revert or do some bisection can be useful
Then it's good to submit even the symbols if you don't have a better solution like a symbol server

storm sleet
#

That would be best, if that's possible. Please bring that into plastic

#

The only other nice way I see is, create an xlink repo with only the binaries and delete it every n checkins

#

(it's also impossible to completely remove files in plastic

reef oriole
#

It's on the roadmap, I just have no idea when it will land
Seems like the most important thing to me, I'll ask again if they have an eta

storm sleet
storm sleet
#

Do they have a public roadmap?

jolly fog
obtuse yoke
#

Anyone ever setup Perforce on their QNAP? I have 872XT so it's Intel processor and 16GB RAM. I've never setup Perforce on anything but just thought maybe having it on the NAS is better than just on the computer that I'm using for UE

vale basin
#

I run mine in a docker container on my synology

#

works alright

#

just used a bind mount to a folder on the synology to preserve repo data outside of the container

obtuse yoke
vale basin
#

docker is available as a package on the synology store, so no custom work was needed on the synology itself

#

infact i used docker deliberately to avoid doing anything on the main NAS OS

obtuse yoke
#

I'd like to utilize the main NAS space for the actual versioning, but I'm just bit lost on the actual install process. I guess I should check QNAP store what apps they have there

#

Because I don't want to corrupt the whole NAS over some failed install attempts

vale basin
#

docker or similar container tech is good because it compartmentalises the software, and you can use a bind mount to utilise the main NAS storage

#

check if qnap has docker, it probably does

obtuse yoke
#

Did you follow the manual install process for Perforce? I see in their docs they have different packages for ubuntu and such, but I'm guessing those won't work

vale basin
#

i scripted it through a docker image

#

this appears to be a decent rundown of what the process looks like

obtuse yoke
vale basin
#

conceptually you can kind of think of a container as a lightweight vm. Technically it's different, but just to wrap your head around it initially, it's helpful to think of it like that

#

so it has it's own os, own filesystem, etc.

#

you shouldn't need to ever log into the docker container, because you script an image, and it just starts up and does it's thing

obtuse yoke
#

so it's sort of independent replica of what you have and limited to the replicant so anything done on it will keep the main system clean?

vale basin
#

you mount your data outside of teh container using bind mounts or volumes, and you can destroy the container and start a new one up if you wish

#

yes, the main system remains clean except for docker itself ofcourse

obtuse yoke
cold terrace
#

Hi
Can someone share best practices using git (Github, Gitlab) and Unreal for project development in team/collaborative work (merge commits, develop scenes, version control, binary files...)?

outer kiln
#

new at this source control thing, trying to package windows version of project, getting about visual studio which I

#

'll fix eventually, anyway , file in question says, currently checked out, under editor settings, will that prevent it from being read for packaging ?

#

-=-to make changes so UE5 can , see, visual studio2022 ?

merry goblet
#

Source control multi-user editing question - how am I supposed to 'lock' landscape for editing. It doesn't have 'browse to asset' option in World Outliner so I can't find it in a folder to lock it

merry goblet
#

Hi, me again. What's the difference between Persist session changes, Checkout modified files and Submit to source control? Doesn't Checking out a file, persist it anyway, and persist means save the changes to source control?

fallen lynx
#

I have a question on collaborating between developers who are using a Mac and a PC. I'm on a PC and my friend is on a Mac. When she tries to open our project up she gets a missing module error and is unable to open the project. The project has a Source code folder which opens up fine on my PC and I'm able to build but when she tries to open it on her mac she cannot open it in Xcode.

Any ideas how to fix the missing module error? I've been grasping at straws since this is unfamiliar territory for me.

storm sleet
#

Missing module sounds like recompile. Is it a game module or an engine module?

merry goblet
#

I've setup a Helix Core server on my home pc which sees changes I make in UE4, but I don't understand what Server name my friend has to input in P4V to remote connect to the server. Is it simply my PC's name? Thanks for any help!

#

We can see each other in a multi-user editing session, but that doesn't save his changes. Also we currently have Hamachi LogMeIn vpn running if that makes any difference?

#

ps the server name I used following the tutorial was localhost:1666 but surely that's just a generic thing

#

Should he use my external IP address?

#

(as the server name?)

#

I've read tons of Perforce guides / watched lots of videos, but none offer any help

#

Thanks again in advance

trail obsidian
merry goblet
merry verge
#

You don't share workspaces.

#

Every user should have their own workspace on each pc they use.

#

One workspace is a specific mapping of files from a server to a specific PC and user

#

If they can connect to the server then they need to create a workspace themselves in the location they want the files to be on their PC.

#

There's a reason there's a "new" button next to workspace in P4V

merry goblet
#

He set his own Workspace but he couldn't 'Switch' to my Workspace to retrieve the project from my pc

merry verge
#

That's not how perforce works.

#

You have to submit files to the depot.

#

He then pulls files from the depot into your workspace.

#

You should never have to interact with other people's workspaces.

merry goblet
#

Ok, thanks, so how does he access my depot that holds the project so he can DL it to his pc? Or is that all done in UE4 mnulti-user editing?

merry verge
#

The depot is on the perforce server.

merry goblet
#

Yeah, my pc has the depot

#

and runs as the server

merry verge
#

and did you submit files to it?

#

you cannot just drop files into a directory and use that as a depot

#

you have to make a local workspace, add files to a changelist, and submit the changelist.

merry goblet
#

Yeah, I can make changes in UE4 and can see them in P4V

merry verge
#

But did you submit the changelist

merry goblet
#

Yeah, 768 files

merry verge
#

Then they need to simply go to the depot tab of P4V with their workspace active, right click whatever the root folder is, and hit "get latest revision"

merry goblet
#

Ah ok, thanks. Documentation for this is hard to find

#

We'll try that

median pike
#

should Plugins/Developer folder be in source control? I use RiderLink and I feel like it shouldn't be included but I'm new to Unreal git version control

short delta
#

Where do you people keep your personal free projects?
I'm curious. I would use GitLab but they only give 10gb if I am not mistaken, and that is not enough anymore 😄 .
Right now I am considering renting a server to host git.
But I'd like to hear a bit more how others usually have it set up!

median pike
merry goblet
#

Hi, does anyone know what 'exclusive checkout' means in Perforce, with a padlock icon, please?

#

I've looked it up in the P4V guide, but it just says what I can see, without explaining it 😄

woven sluice
#

It means only one person can check out that file at a time

merry goblet
#

Ah that's fine then lol. Next problem is the error I get in UE4 when I try to submit the change to Source Control...
Can't check out file 'filename' from source control when persisting sandbox state

#

ps thanks HoJo

woven sluice
#

Sounds like a weird error from multi user editing or something?

marsh bloom
#

so are there features you can add with the source code and not a plugin ?

#

within the engine

woven sluice
#

I don't think the question makes sense

marsh bloom
#

i do actuallly

woven sluice
#

Ok. Then the answer is yesn't

marsh bloom
#

hehe

merry goblet
#

Next question... when we start the next multi-user session, will Perforce automatically sync the project that's on the server with the remote pcs that are working in UE4, or do we have to Get latest revision every time?

reef oriole
merry goblet
#

'You can "vote" for most important/critical features for your team' - More pay, less hours 😉

storm sleet
#

thank you for the link 🙂

frozen solar
#

Hey guys, I set up git source control before the weekend and everything was working fine until now. Recently when I try to Submit Content in UE5 it just says "No assets to check in", when there clearly are changed files in the project. They appear on GitHub Desktop and I can commit them there, but it annoys the heck out of me that it no longer works in-editor. Anyone know what might be up? Everything looks like it should in the Source Control settings etc with no apparent reasons why it wouldn't work

Tried doing a quick search in the channel because it seems like a simple problem, but no results 😦

#

Oh and I can select each individual file in the editor and "Source Control -> Check in" to commit them one by one, but its not exactly practical, but at least that works, so it doesnt make sense why I get "No assets to check in" when trying to Submit all of them

storm sleet
#

thanks SRombauts, I voted and gave another idea

reef oriole
frozen solar
visual kernel
#

Anyone else have trouble with Perforce freezing on submit? I managed to get the project no problem, but for some reason the editor depot will not submit. I get about 5-7% complete and it freezes. I know it's no longer actually doing anything because I can watch the performance monitor in digitalocean and there's no more I/O

frozen solar
# frozen solar Hey guys, I set up git source control before the weekend and everything was work...

Today it worked again all of a sudden. Im able to Submit all changed files and do not get "No assets to check in" anymore.

One possible explanation for the fix is that the Epic Games Launcher was not seeing my project. To fix it, after some googling I found out I simply had to create a new project in the same directory and then delete it in order to get the launcher to establish a path to the directory. From there the Launcher could see my project and Git Source Control was fixed to work as normal. (Might not be related at all, but that is all I did yesterday and today it worked)

digital bolt
#

Hello, good people. Hope this question falls under source control.

I'm trying to understand the best way to have several sub contractors work on minor levels individually, but from the same starter content. And then merge that work into a master project.

teal bone
#

I mean, why do you need to do anything for this? Just have a single repo and allow subcontractors access to it?

digital bolt
#

I suppose. If I were to have a look at user restrictions in UE5, are there any specific topics I might read up on?

#

(is there such a thing)

teal bone
#

Well, that'd be based on your source control, not UE.

digital bolt
#

So perhaps each level could be under a specific directory, and the user permission would be limited to that + asset folders?

teal bone
#

Don't use git, its user control is basically non-existent as far as I know (you either have fulll access to everything or nothing) and it's bad at large assets anyway.

#

Look into perforce permissions... and using perforce.

digital bolt
#

Currently battling perforce setup final boss

teal bone
#

You could have a separate directory for each subcontractor, sure, or just let them work on assets in a single folder.

#

Depends how much extra work you want to do...

digital bolt
#

Cool, this seems like the way forward. Coming from traditional 3D work, seperate scenes/levels seemed most logical, but I totally get it isn't.

teal bone
#

What are these scenes/levels going to be used for? Not content-wise, but just how are they put together? If at all?

digital bolt
#

There would be a main menu for opening each level, basically.

teal bone
#

And the levels themselves don't really interact?

digital bolt
#

Nope, not apart from sharing assets

teal bone
#

Fair enough.

digital bolt
#

It's for an online digital catalogue, each level is an entry.

teal bone
#

Just have them all work in the appropriate directory for your project, having subcontractor names in your repo isn't the best!

digital bolt
#

Yep, I think that's be best option. Thank you so much for the input.

half orchid
#

hey guys I've been using git for my project and my teammate (we are two) but I've had some bad experiences with git due to some issues with large files and binary files. I currently am looking to use perforce or plastic scm and I would also need a server in the coming 6 months to host a server.

Which one should I use as I have a budget of 20€ per month and we are actually 2 people not wanting to go higher anytime soon but maybe in the far future.... but then maybe 1 or two people more. Which one should I choose?

We are using Unreal engine 5 if that helps.... thank you very much

rotund bobcat
#

git with large files should use git LFS btw if you didn't do that yet

teal bone
#

You don't wanna do that.

woven sluice
half orchid
#

I used git lfs and problems with that where that they had problems to upload correctly despite having an optimal connection and also merging problems with blueprints and merging problems in general

woven sluice
#

upload problems were not likely the fault of the VCS, unless it was running on a (very) poor box

merging blueprint problems will not be magically solved by switching VCS either (perforce does have first-rate locking features to prevent issues, but the solution remains the same: don't let two people work on the same files)

#

and for code merges, git should be very good at it, probably user error

devout walrus
#

Anyone else have issues with riderlink uploading a file called FileSystemMappings.ini no matter what I add to my gitignore it doesnt ignore this file and sometimes even breaks my other gitignores depending on what I try to do in order to ignore it.

median pike
#

Well riderlink doesn’t upload files, git does. Probably the reason why it’s not ignoring it is because you already uploaded it once to your repository and it’s still being tracked. If you want git to ignore it from not on but not touch the file on your local computer, you need to remove it from tracking.

git rm —cached filepath/FileSystemMappings.ini

devout walrus
#

Yeah sorry was a miswording the file was originally not tracked via git and wouldnt even let me ignore it before it was originally pushed to my repo. Either way its the only file ive had any issue with so im not too concerned.

devout walrus
#

Fixed it ez pz.

fair patio
#

Hi guys, Perforce question:
I would like to create 2 depots

  • the 1st is my UE Main project, we will say: UE_Project_v01
  • the 2nd is just a plugin that will go in the UE_Project Plugin directory: PluginA_v01

Why? because I have UE_Project, which can totally change every 2 days, and I would like P4 users who work on plugins to be able to update the UE_Project (from a V1 to a V2 for example) in 1 click without having to break all his PluginA repository.

It seems to me that with Clone it's possible, and/or depot stream, the problem is that the Perforce docs are VERY VERY tech, so heeeelp I would to know the exact workflow to do that (feel free to PM me if I'm not connected)

this is the idea :

woven sluice
#

this is almost easy when using streams depots. you just import your plugin depot to your project stream. the thing I usually struggle with is deciding how to build a barrier between the two - does it make sense if you update the plugin's mainline that the changes should instantly propagate into your project? or do you want to put a gate between them where you can choose when to update the version used in that project? depends how big the team is and how complex things are

fair patio
#

first: thanks a lot for your answer, because it's very cool that it will be possible.
Second, the rest of folders of UE4_project won't change, only work on the Plugin will ( I don't know if this is a expected answer )

woven sluice
fair patio
#

ok, to be clear : UE_Project_v03 don't change ( need to be lock ? )
is just usefull to launch Unreal with the good version for the plugin

#

is not possible to do this kind of management with P4V ? we need commands ?

woven sluice
#

let me figure out more what you're trying to do... you said you have a UE project that can change frequently and you want plugin developers to be able to get updates to the UE project without breaking their plugin repository. is your question focused on development of the game project or is it focused on development of the plugin?

fair patio
#

it's focused on development of the plugin

#

and pluginS ( for the future )

woven sluice
#

what exact purpose does the "UE_Project" serve then? it's just the development project in which you're going to build samples and tests for the plugin? you want to work in and use this project to build this plugin and maybe others?

fair patio
#

it's a main release ( only one dev works on it, and he is not on Perforce )
yeah, that's right, exactly

#

PluginA : 2 devs
PluginB : maybe 3
etc.

so I search the correct way to make something solid and quick for plugins dev
( and maybe the dev not on Perforce will come to P4 a day )

woven sluice
#

this diagram may not mean a lot to you until you watch some videos on streams. in this example I created both the UE/game project mainline and the plugin mainline in the same depot so that I could sketch them together on the same screenshot, but it would work similar if they were in entirely separate depots.

the plugindepot in this case might just include whatever would normally be inside something like GameProjectA\Plugins\MyPlugin\ including the .uplugin file and Source folder

#

I don't know what you want to do though if some of your devs aren't on perforce...

#

if you wanted to dev the plugin on different versions of the engine then you could adapt the above idea and have a 4.26 UE project, 4.27 UE project, 5.00 UE project which all import the raw plugin mainline stream - they would all get all updates to the plugin code and you'd be able to dev and check them all easily

fair patio
#

just 1 dev are not, he send me his project on a .zip ...

#

...

#

so my idea, is to avoid 3 ... 4 ... 10 devs to download this .zip ... ( and the .zip can be change from a day to another day so ... )
my idea, is to convaince the dev out ouf Perforce now to submit only his release version to a locked depot ( kind of "first step" )

#

it will be a big step 🙂

woven sluice
#

is this dev avoiding getting involved properly due to license limits, or because they're lazy?

#

have to ask

fair patio
#

because he has been problems with versioning on a lot of files on UE ( so I presume a not really good experience with versioning and Unreal )

woven sluice
#

in that case, this must be said:
tell them to get their shit together and learn the team's chosen tools properly, or get lost. game dev is hard enough without boat anchors on your team

fair patio
#

yep ... but for now ... I need to find positive solution for the team

#

even if I need to update the .zip to a version of a depot by myself

woven sluice
#

is this dev building the UE project in which all of the plugins are developed, or are they building one of the specific plugins?

fair patio
#

the UE project is pretty basic ... I mean this dev building his own plugin too, that's right

#

Basic UE folders
|
Plugins/
| THEdevMainPlugin
| PluginA
| PluginB
| etc

woven sluice
#

so it's something like: they're sending you a .zip of a UE project and of a plugin, and you are going to extract those zips into a project depot and into a plugin depot and commit the file changes for both... and then the other team members will get those updates and use that updated UE project to keep working on their own PluginA and PluginB?

#

TBH you could just do all of this in one depot, one project

#

I don't see any reason to break it all up and make it all complex yet

fair patio
#

I tried to, but ... when I copy paste all files from the .zip on a perforce depot, it don't really understand what is changed or not ( we talk about a lot of files : 20GB )

woven sluice
#

20 GB isn't very big. how long have you been using perforce? do you know how to use "reconcile offline work" command in P4V (might translate differently depending on your language) ?

fair patio
#

So, my solution was to backup the plugin from the depot UE_PROJECT_AND_PLUGINS
delete it
keep only PLUGINS devs
Unzip the .zip on a new UE_PROJECT_AND_PLUGINS
Copy paste the backuped PLUGINS dev on UE_PROJECT_AND_PLUGINS with the good version of the main project

#

but it's crazy

fair patio
#

I know SVN pretty well, but Perforce is new for me

woven sluice
#

if you edit files without checking them out (such as by manually dumping/overwriting the files with new ones from a .zip) then perforce has no idea you did any of that. the reconcile offline work command looks at every file in the folder and compares it to the server

woven sluice
fair patio
#

I will try
so your advice, is to have one depot ... not at all "stream", but "local"

  • copy paste sometimes the .zip on it,
  • make a "reconcile offline work",
  • submit it
#

and maybe we need a Perforce guy from the Perforce team to convaince THE dev that P4 is not the enemy 🙂

#

but it will be more efficient to have a depot with the equivalent of the .zip no ?

woven sluice
#

it will be most efficient if you and all of your team members spend a few hours watching perforce tutorials, plus get a team member to spend much more time studying how to administrate perforce (or any other VCS, whatever you end up using). this stuff is complex, and anyone who brushes it off because they're lazy is dead weight

fair patio
#

There is a beginning for everything.

#

thanks for your time

glad stag
ripe linden
#

Hey, anyone here have experiencing with setting up Git and LFS on a private Linux server? We're having some issues with Apache configuration

low tangle
#

hey guys i finished setup my local perforce server on my pc and i successfully connect with UE but whenever i open VS,i cant build at all
i got this

#
1>------ Build started: Project: AsrentRPG, Configuration: Development_Editor x64 ------
1>Failed to write to log file "E:\Perforce\CreationArtStudios_Asrent\AsrentRPG\Intermediate\Build\Unused\AsrentRPG.log". Access to the path 'E:\Perforce\CreationArtStudios_Asrent\AsrentRPG\Intermediate\Build\Unused\AsrentRPG.log' is denied.
1>Failed to write to log file "E:\Perforce\CreationArtStudios_Asrent\AsrentRPG\Intermediate\Build\Unused\AsrentRPG.log". Access to the path 'E:\Perforce\CreationArtStudios_Asrent\AsrentRPG\Intermediate\Build\Unused\AsrentRPG.log' is denied.
========== Build: 0 succeeded, 1 failed, 0 up-to-date, 0 skipped ==========```
#

any ideas?i never encountered this before

low tangle
#

answer: you need to check the last 2 on file options and on submit:set it to revert unchanged files and client type to be writtable

woven sluice
#

@low tangle set up your ignores properly, delete temp files such as logs from your repository, and then use a plugin to check out files that you're editing instead of that ugly hack of using a writable workspace

tame spade
#

Is that possible to enable file locking features with git (gitlab/github) as versionning software?

low tangle
#

so i just put.p4ignore on workspace?

woven sluice
#

Plan to spend several hours learning how to use perforce... Do lots of googling and reading on everything

reef oriole
wicked fox
#

Hi, im trying to set up source control on my project, but github's LFS has a 2GB limit per file, it also doesn't tell me exactly which file it is so i cant easily find it to exclude it from the commit, although I prolly do want those large files added to the repo, does anyone know if there is a way around this 2GB limit? or if there is a way to identify the files it wont push to the master? or if there is other source control platforms that i would be able to commit large files like this?

reef oriole
# wicked fox Hi, im trying to set up source control on my project, but github's LFS has a 2GB...

You should really double check all you files on your project
I have a hard time figuring what could need 2GB except for a movie, and in this case you should evaluate if you really want to ship something that big to your players (assuming it's for a game, if not might be different)
Use something like https://windirstat.net/ (more modern options exists, but I stuck with this one)

wicked fox
glad stag
warped heron
#

Working in blueprints, my Diff against Depot is showing changes, but my file isn't changed
I also haven't committed anything on this file on this branch.

Has anyone seen this before?

tame spade
cyan jay
#

I don't really use git but yeah I think so. There's a git plugin frequently mentioned in this channel that lots of people use instead of the built in one, might also be worth a shot.

gray siren
#

Lookin for some P4 help, if a new teammate needs to get a copy of the project, should they Clone the depot similar to Git or does Clone do something weird and different in P4?

#

Cloning is throwing a lot of errors and asking for remote mappings and stuff going to keep digging.

Edit: Think I figured it out, think cloning is only for copying a depot to another server.

#

Is the .idea folder something that should be added to an ignore? I know .vc isn't needed

vale basin
#

yep, cloning is not the same in p4. You just create a new workspace and "Get Latest Revision"

vale basin
reef oriole
reef oriole
#

Hey, do you know if there is a source control Editor Blueprint / python scripting API ?
I though I saw one recently but cannot find it on Google
(not in front of a computer right now)

#

I'd like to do some automation / tests
Like spawn assets on a map and submit

reef oriole
warped heron
#

@reef oriole I'm using git. I re-pulled the main branch several times, and open and recompiled my files and still got this :/

"Diff against Depot" is the built-in Unreal/git integration for examining BPs

storm sleet
#

@reef oriole blutilities have some source control functions for checking out at least. There are functions. Not sure if it's all there what you need, but you can take a look at it. It also shouldn't be too hard creating a test for that in C++

#

(which would nicely integrate into the automation tool)

jolly fog
#

Can I add a specific plugin to a .p4ignore file?

teal bone
#

Just ignore the plugin folder?

desert silo
#

For multiuser editing, the button to create a sesion is grayed out and its just constantly looking for multi user servers. Any way to fix tihs?

quaint obsidian
wicked fox
#

Hey, on Github when using LFS you have to buy a data pack which gives you 50GB bandwidth a month and 50GB storage, can anyone tell me exactly what that bandwidth is? i only set up the repo today, uploaded my project into it and its used about half of the 50GB Storage but im somehow over the bandwidth allowance, ive made like 8 commits today because ive been testing it with another computer to make sure i can collaborate properly and its only been small changes like creating an empty actor BP then committing, how is that using up all the bandwidth already?

#

I also, so far, can still make changes, commit, push and pull from the master even tho the bandwidth is showing as going over?

vale basin
#

Bandwidth is how much data you can transfer. With 50gb storage and 50gb bandwidth per month you can pull down, or upload that entire repo exactly once. Or a 5gb portion 10 times.

#

Typically after first upload, and first clone of new team members your bandwidth requirements drop from the initial month

maiden smelt
#

My source control seems to be checking out engine files, even though i'm not actually editing them (I did copy some, so maybe it detected a change somehow?). Then it says my changelist is invalidated and won't let me submit my changes. I can check them in through perforce and everything seems to work fine, but it's still saying I can't check-in through unreal. Any idea? Thanks in advance!

#

Ignore the above. Seems i just needed to exit the editor, which seems to have saved some files that don't save during "save all"? Reloading the project allowed for a validated changelist and submit.

wooden orchid
#

anybody know how to deal with perforce blocking compilation if you dont checkout?

vale basin
#

in your typemap change your .dll, .pdb files etc to +W, and do it manually for already existing files. Right click -> Change filetype, check the +w option

#

@wooden orchid

timid surge
#

Hello, I don't know why but I have a lot of issues with git and my unreal project, for example sometimes I have files that disappear, when I check in the file explorer on windows the file is there but not in unreal engine, is there some configuration I need to do ?

frank raft
#

Greetings. Just getting back into UE4 now. Is Git+LFS a viable alternative to Perforce or SVN? Cheers! ❤️

quaint obsidian
frank raft
quick swift
#

hey guys i could need some help with a (as i thought...) simple topic.
u know my contributors can read AND write to my repo so they can do merges by their own ?!
i dont know why this happens and i dont know how to fix that... i was reading the docs and even after 2 hours of going through the github community and alot of google stuff i still dont know how i can change the permissions for the contributors 🤷‍♂️

i thought it would be in the settings tab at Collaborators but well... cant fint anything for that ^^

shadow kernel
#

Hey would anyone know the answer to my issue? In Perforce I grabbed the latest project from the depot. But it did not grab all the folders from the UE content folder, it's still missing a few that are in the depot but for some reason won't download to my local workspace.

I've checked the mappings and sync of the files and I tried ways to bring it over but no luck.

#

I haven't had this issue with any project previously in any of the other depots

cyan jay
shadow kernel
#

I did Get Revision but I don't think I checked Force Operation, i'll give that a go thank you for your help :)

quaint obsidian
quick swift
#

@quaint obsidian thx for ur reply dude. so i will try to fix it thx 🙂

hollow brook
#

Anyone know how to workaround the P4 integration failing to connect due to the client workspace importing a graph repo (leveraging Helix4Git)?

When configuring my stream paths for //UE5/Main with:

    share ...
    import Projects/Game1/Repos/game-1-server/... //repo/game1/game-1-server.git/...@master```

The P4 integration will fail to connect with:
```SourceControl: Error: CommandMessage Command: Connect, Error: Client 'username_desktop' requires an application that can fully support graph clients.```

I feel like the P4 integration shouldn't prevent connecting just because it contains a project from a graph depot...or at the very least, silently ignore files in that path.
carmine delta
#

Hey does anyone know how to change the version control that Rider is using? I accidentally clicked the wrong one from the list and can't seem to find where to change it ...

#

nevermind found where I can disable the one I accidentally selected... not quite what I was trying to do but it works

merry verge
#

It's Settings > Version Control > Directory Mappings

toxic herald
#

trying to set up a git repo in my project but getting an error every time i push that says git lfs failed, push was rejected due to missing or corrupt local objects. It has this error for every single .uasset and .umap in my content folder, but all of those files are there and work fine in editor. any ideas what would cause this?

toxic herald
#

ah, well it appears that i have somehow managed to corrupt every single uasset and umap in my project while trying to figure out how to get git lfs set up

#

cool

storm sleet
#

Doesn't git with lfs store metadata at the original file locations inside the repo that refer to their lfs files? Possible that you have the metadata files instead of the lfs files then? Possible I'm very wrong, I only used lfs once many years ago

buoyant oasis
#

Hi. Im doing a group project with 4 people. What source control would everyone reccomend?

reef oriole
#

Do you want simplicity? Would you be ready to pay for it? It all depends on your criteria
but it's asked a lot on the channel, so you could even have a look

reef oriole
buoyant oasis
#

It's going to be a student project so I don't think we have money to shell out (unless it's a small amount)

vale basin
#

Perforce is free for 5 people

#

But server space is gonna cost pretty much where ever and whatever you choose

#

But I have heard azure does free git lfs hosting. Look into that maybe

storm sleet
#

isn't plastic free for open source projects or something?

#

(not sure, we don't do open source (yet))

worthy junco
#

Hello. I have a small team. Which VCS better git or perforce? Has a perforce features that make him much better than git? And what is the price difference between git and perforce for a team with > 5 people?

vale basin
#

Many people report using git lfs fine, but it's undeniable that perforce is the only one with first class citizen support from epic. One file per actor only supports perforce ATM iirc

#

There are some upgraded plugins on GitHub that improve git lfs support I think

#

It's not that git is bad, it's just p4 is what epic uses internally and gets the most love

reef oriole
#

I am currently working on the Plastic SCM plugin to make it first class 🙂

reef oriole
#

I can already tell you that, even for small size project, just using the Quixel Bridge and Megascans assets in your levels justify to move beyond Git LFS, to Perforce or Plastic SCM
the speed of a 171MB asset is much more enjoyable with the laters 🙂

#

Based on my current testing of UE5.0 with Open World & One File Per Actor

jagged spear
#

Helix P4v question - does P4v store any files inside an Unreal project, similar to how a GitHub project creates a .git directory with files?
I've been advised to never duplicate an Unreal project using P4v (always migrate), but I'm a little unclear why, because I've been unable to find any files that store Perforce data in there, or much documentation on the matter. Or have I missed any documentation regarding this?

reef oriole
#

No P4 won't have a local copy like .git or .svn

jagged spear
#

Asking because I'm now kind of after the fact trying to troubleshoot why someone's project is having issues after they duplicated an existing project on P4V without migrating, and are trying to push it as a new project.

jagged spear
reef oriole
#

Honestly I have never tried exactly that, but it should be a problem since there is no specific files on your disk

jagged spear
#

Okay thanks. For some reason yeah our team's workflow has been to always migrate to a new project, never duplicate, but I've never been quite sure why.

#

But indeed I don't see anything indicating there are any p4v files getting stored that could confuse it.

reef oriole
#

Mm, Migrate, if working as expected and performant enough , could be a good idea to only carry over the asset used/referenced in maps

bitter sun
#
Out of date files must be resolved or reverted.
    Submit failed -- fix problems above then use 'p4 submit -c 112'.

How can I know what files are they? 🤔

pulsar parcel
#

you usually can tell from the submit window because they have a yellow triangle on the icon

mortal mulch
#

ork

timid sage
#

Hi! I've installed self hosted Gitlab and OpenVPN server, i have domen address (lets say blabla.com). How can i make site available only via VPN? My current vpn setup works but cannot access localhost.

hushed egret
#

i dont really understand git lfs

#

do i need to make it track all .uasset files?

#

since there aren't really file types in the content folder other than .uasset

#

will it then only track large uassets or all uassets?

#

also what exactly does lfs do? does it still upload the large files to github?

bitter sun
pulsar parcel
#

In P4V viewing the submit window for the CL?

merry verge
#

Might need to refresh the view, P4V is weird about it sometimes. Press F5.

bitter sun
#

( UE5 migration submit ) + (sending a screenshot now)

merry verge
#

yes, that'd be why

#

p4v stops showing you everything if you have too many files, otherwise it kills performance

#

the easy solution here is to just sync and then resolve.

pulsar parcel
#

Yep, though that could’ve been the path of least resistance to start with

#

Also //depot/ yikes, you can make an actual depot named after your project and get to use streams and such

quaint obsidian
#

LFS makes it so instead of storing the file in git history, it stores a pointer to that file. an object ID hash and size info.

#

so it minimizes space in the git history itself which is entirely linear

#

and instead, it uploads these objects to a separate data store, like a cloud object store (AWS, GCP or some other file server)

#

when git encounters one of these pointer files, it asks LFS to do its thing and download the actual files, which LFS swaps in

hushed egret
#

when i dont want to push lfs stuff, what folders should i backup myself?

#

the .git/lfs folder?

#

actually kinda sucks that basically all files in /content are .uasset

#

so it basically ignores everything

#

even small blueprints

merry verge
#

Frankly, it doesn't matter. All uasset files, regardless of size, are binary files that get basically no benefit from being tracked normally in git. Meanwhile LFS at least has support for locking.

#

Not sure what you mean by "backup" though - why would you not want to push LFS content if you're using LFS?

bitter sun
#

Right?

merry verge
#

get latest revision, yes

bitter sun
#

But depot has UE4 version

#

Wouldnt that override my current files

#

This just came to my mind after pressing get latest revision btw, I hope I didnt lost any data mildpanic

merry verge
#

You won't.

bitter sun
#

I see bazillions of is opened for add and can't be replaced

merry verge
#

Uh, you're adding files that already exist in the depot...?

bitter sun
#

Yes

#

Tell me I didn't lose any data pls because it's not compiling panda_nobully

merry verge
#

honestly, I'd copy your files somewhere else, revert everything, get latest, copy your files back, then reconcile offline work (which will take quite a long time for that many files...)

#

because your workspace is all kinds of screwy if you're adding files that already exist

#

I'm not sure how you even managed to do that

bitter sun
#

I have two workspaces, one of them is UE4 version of the project

#

On another workspace, I upgraded to 5, made some changes, made the project compatible with 5

#

And added some BP files and uassets

#

And when I reconciled my offline work it listed 25k files

#

13 of them was Intermediate and Binaeries, cleared them

#

12k left

#

Since they are saved on 5, they are on the list probably

bitter sun
#

When we cancel operation, do P4V save the thing it does or reverts everything?

    1 error reported
    Operation cancelled by user.
#

Because if it didn't revert that means I lost data

#

Okay that was a quite tense panick period for me. I didn't lose data but it added things I removed from UE4 version workspace back

#

I got away by deleting them again

bitter sun
merry verge
#

you wouldn't have

#

it would have asked you to resolve conflicts which gives you the choice between merging, taking the incoming change, or using your change.

bitter sun
#

I had lose some serious data with Git last year, couldn't resist the PTSD 😄

grim heron
#

I have a source control question. With perforce you have to pay for a server to send your files to?
Or set up a pc as a server?

vale basin
#

You can do either

#

You can even host on the same pc you are developing on

grim heron
#

How would I restore a project from github once its been set up?

#

Like if I lost the project folder all together

tired current
#

how do i set the remote origin for git? when i try to change settings for source control, i don't get the option to

rotund bobcat
tired current
#

ye but where in unreal do i put that in?

#

that's what my question is

rotund bobcat
#

oh idk through unreal

#

but if you just open command line in your project directory you can do it

tired current
#

ok

rotund bobcat
#

never used the git UI inside the editor myself

#

but @ SRombauts might know

#

he wrote some plugin stuff

tired current
#

question about collaboration. if me and my colleague work on the same level but i push first, then they push, will my work be gone

rotund bobcat
#

they won't be able to push

#

they will have conflicts

#

that need to be resolved

grim heron
#

thanks mate its downloading now so I will let you know how it goes. Its 44gb so will be a while before I know if it worked.

rotund bobcat
#

and since levels are a binary file the only way to resolve really is take one or the other

#

but ue5 has some new thing one file per actor which might make editing the maps better in collaboration

#

haven't used it myself though

grim heron
#

@rotund bobcat That was exactly what I needed. Thanks mate

runic hornet
#

I'm trying to use perforce for source control, and it's just, unbelievably slow to upload, like, multiple hours

#

it is a big project dont get me wrong abt 20 gigs, but with 100mb upload I would expect it to be like an hour tops

#

I have compression and only submit changed files enabled

#

so what gives

pale ember
#

Hey so if i want to keep my source control local, but do not want to ppush to my githum (i am solo onmy project)
i just do not publish to github correct?

#

partially asking because the remote disconnects whenever i try to publish

#

i am attmepting this on a test project that is 2gb so i do not break my main project

quaint obsidian
merry verge
#

I actually wasn't aware of that. But I'd still say there's very little benefit to trying to separate out different types of uassets - really just sounds like a waste of time to me.

quaint obsidian
#

Yep yep

woven sluice
grim heron
#

I set up source using github and everything works perfectly. The only issue I am now having is that in my main level (not the menu but the one the game is played in). The persistent main now only saves when I do an exit save (by closing the editor or loading another umap). And for some reason every time I load it, it needs resaving.

sand nymph
#

Hi all, i am really fighting to get Perforce set up, I have it all set up on DigitalOcean but having issues even getting P4Admin (Windows) to connect and hoped someone could help as its driving me crazy

limpid mason
#

Curious what others do, especially if you work at a studio with multiple projects: How do you store raw source assets for your game?

  • Do you have a dedicated depot for the assets or do you store them in the same depot as the project somewhere?
  • If you have a dedicated depot, do you have one per project or a single large depot for all projects?
  • What about streams? Just a single stream?
pulsar parcel
#

whereas the game does use streams

limpid mason
pulsar parcel
#

at my previous company we had multiple projects, and every project had its own dedicated game stream depot and a dedicated source art classic depot

#

since with classic depots, the artist will just make a workspace that just has their area in it and not download gigs and gigs of useless stuff

limpid mason
#

That makes sense!

bitter sun
#

I shouldn't have create a new workspace

#

P4 couldnt track the file history with the new workspace

#

I pasted UE5 files to my first UE4 workspace and it seems to be worked now

ebon hound
#

Hey people. How can I apply the same ignore rules for plugins inside Plugins/Developer and Plugins/GameFeature? This is a quick snapshot of what's going on

#

I tried something like this in gitignore file based on other examples, but it seems like it's not working.

Plugins/Developer/RiderLink/Binaries/*
Plugins/Developer/*/Intermediate/*
ebon hound
woven sluice
ebon hound
#

I realized those files being updated after couple of commits, but what you say makes sense. Will do this next time.

#

Thanks!

woven sluice
#

You can obliterate files using P4A, just be careful, no undo

merry verge
#

If the question was "can I delete P4ROOT" the answer is hell no, that's where the perforce server stores all your files. Deleting that would completely ruin every depot in that root.
If the question was "how can I free up space on the perforce server" then you have HoJo's answer.

woven sluice
#

lmao, I never even thought of doing that youWHAT

merry verge
#

yeah, because generally deleting the entire set of storage and configuration data from a service you're actively using isn't something that would cross your mind

regal grotto
woven sluice
# ebon hound Thanks!

Sorry - I might as well ask - what do you mean by "next time" ? You didn't create a new repo to fix this already did you? thincc

ebon hound
woven sluice
#

Oh haha 👍

pulsar parcel
#

though for saving space on a p4 server, you might want to consider only storing n revisions of say the _BuiltData file for each map

simple lodge
#

but otherwise it takes whatever time it takes

merry goblet
#

Hi, Anybody know how to unlock a umap file? It doesn't show in Content Browser so doesn't have any right-click menu options.

merry goblet
silver token
merry goblet
silver token
#

Uh, whichever one you put it in. I don't think there's any requirement about folder beyond being in /Content, but the editor shouldn't be letting you create content like maps outside that directory anyway.

merry goblet
silver token
#

Do you get source control options for other files in the Content Browser? you might just not have the source control integration turned on in the Editor.
Perforce will lock files when they're checked in regardless of anything the Editor does.

frosty stirrup
#

Can't figure out why with perforce when we update DefaultGame.ini parameters, even when clicking "check out" in project settings, when we go to submit, it shows it is updating "none" and does not update the file to source control. I double checked our .p4ignore but not seeing anything that would conflict this. Any ideas?

manic gazelle
#

In the unreal engine folder I have a Projects/ folder. I would like UnrealEngine's source control to fully ignore it and all it's contents, but I'd rather not modify the .gitignore directly (I don't want to modify the contents of the repository). From what I've read on https://git-scm.com/docs/gitignore the way to do this is using the .git/info/exclude file.
A challenge with this is Unreal whitelists all directories with !*/ and whitelists a bunch of file types. so adding /Projects/ or /Projects/** to the .git/info/exclude file doesn't work.

#

for example I have a directory tree like this

UE5/
├─ Projects/UGCExample/...
├─ Source/...
├─ Binaries/...
├─ .../

and my .git/info/exclude looks like this

# git ls-files --others --exclude-from=.git/info/exclude
# Lines that start with '#' are comments.
# For a project mostly in C, the following would be a good set of
# exclude patterns (uncomment them if you want to use them):
# *.[oa]
# *~
/Projects/**
quaint obsidian
#

@manic gazelle glimmer me and ill tell you :)

#

maybe something that will work is

/Projects/**/*.*
/Projects/*.*
manic gazelle
# quaint obsidian <@971904244259102730> glimmer me and ill tell you :)

Hard support reporting in. 🤸‍♂️

Thanks I gave it a shot. No cigar 🥲

Update: As far as I can tell the only way to "un-whitelist" a file is to ignore it's parent directory. This can't be done in the Unreal Engine's repo (without modifying the .gitignore) because it's git ignore white lists all directories -- and a directory cannot be "un-whitelisted."

Only documentation I could find on "un-whitelisting" files:

It is not possible to re-include a file if a parent directory of that file is excluded.
https://git-scm.com/docs/gitignore#_pattern_format

quaint obsidian
#

oof

#

well, that ignore hasnt updated in like years so should be fairly safe :)

open lynx
#

Hi! I remember I was able to merge blueprints before, but now it seems I'm not able to do so.. When Blueprint is in conflict, Content Browser does not even show it.

Is it something to do with latest UE versions (I use 4.26) or just git/lfs things?

glad stag
pearl relic
#

has anyone seen UnrealGameSync just silently quit every few minutes? I tried attaching a debugger to it and there's nothing in the output log, no exceptions or anything, just
The program '[29880] UnrealGameSync.exe' has exited with code 0 (0x0).

cyan sentinel
#

What should I do about the ExternalActors directory? It keeps trying to add it to my git repo, but when i try to commit it says the files do not exist (for example Content/ExternalActors/ThirdPerson/Maps/ThirdPersonMap/6/CZ/ )

#

Is it safe to just add this to gitignore?

pearl relic
#

so you can't just ignore them, not sure RE: the error about the file not existing tho

limpid obsidian
runic hornet
#

is it "safe" to continue working on a project while perforce uploads your progress?

#

like does perforce cache your changes so that modifying them while it uploads will end up ok?

karmic loom
#

How does one collaborate with someone else on the same project. We've been trying to use github, but are having trouble because of merge conflicts when working at the same time. How do "normal" teams collaborate with eachother? 😅

open lynx
# karmic loom How does one collaborate with someone else on the same project. We've been tryin...

They make branches using Git. When some feature is done, it gets merged into main branch. Project Managers or team leads often manages features, so they do not get many conflicts.

Code conflicts are not an issue, btw. Only assets. Simply do not work on same assets, or be ready to merge them.

For maps, it is generally a good idea to split them into sublevels, so everyone can work on their part of the level.

#

You can merge blueprints, but for some reason they do not get merged lately. But @limpid obsidian gave an advise for it. But have'not tried it yet, and I'm not really sure what he means though. I guess he is talking about locking files for all contributors while someone is using it, but that's not a solution to my question.

#

Couple of versions ago I was able to merge blueprints without any issues

karmic loom
#

Okay thanks, I'll take a look into that. Its been a struggle so far for sure

runic hornet
#

Adding on that about collaborating with maps, ue5 introduces world partitions which are actually separate files that built up the same level, so as long as two people aren't working on the same partitions at the same time multiple people can collaborate on the same level

quaint obsidian
#

Also, seems like GitHub is planning to move to pay for what you use instead of pre-paid for LFS

merry verge
#

Oh good, the data pack stuff never made much sense...

#

I guess downside is it's harder to predict your bill, though if they let you set manual limits that wouldn't be an issue.

limpid obsidian
#

how much is github + lfs monthly? is it cheaper than the $4 dollar droplet posted earlier?

storm sleet
runic hornet
storm sleet
#

Ah, that. Yeah, that's new

#

Iirc it was possible with world composition, but that was hacky

cyan sentinel
#

Why is git in UE5 so slow? git commit on command line is instant, but submit files in the UE5 menu takes like 30 seconds just to bring up the commit dialog?

rotund bobcat
#

are you using the plugin?

cyan sentinel
#

I'm just using it out of the box in UE5

rotund bobcat
#

SRombauts in this chat knows more about it, he created the original thing that this is based on

reef oriole
cyan sentinel
#

Can i just use command line instead (for commits)....?

#

Or will this create problems?

rotund bobcat
#

of course you can

#

the UI is just that, a UI on top of git

remote bobcat
#

Does anyone store their project code on GitHub and and everything else on perforce? Or just put the code on perforce too?

reef oriole
# remote bobcat Does anyone store their project code on GitHub and and everything else on perfor...

I have always put everything on Git/Git LFS, than on Perforce, and now on Plastic SCM
Though with Perforce, I know that quite some people hate it for code because of the lack of cheap branch&merges so some studio use git for the game source code
Same sort of separation sometime with the Engine vs the Game Project, either all in one, or in multiple repository. It's a matter of finding the workflow that suits you best, but keep in mind that added complexity makes it harder for everyone imo

remote bobcat
#

Yeah makes sense

#

Thanks for the info

#

We currently have everything in perforce but working in git is much easier from a code perspective

#

I wonder how good git LFS is

vale basin
#

I like the idea of code on git and assets on p4, but I can't wrap my head around a workflow that isn't problematic considering the interplay of c++ and blueprints

#

As a result I have always work with everything as one repo

reef oriole
# vale basin I like the idea of code on git and assets on p4, but I can't wrap my head around...

I agree with you, but some studio enforce very strict policies like, don't mix code and assets in one review, and each shelved review need to compile & pass some test before integration into the mainline (which is kind of good in big teams I think)
In this case you can develop the code, keeping full backward compatibility (that is not removing deprecated things, just adding more) and only when it is integrated, and built by the build system, launch the resulting editor to make the assets
It's slower and cumbersome perhaps, but it probably help a lot with stability

vale basin
#

Interesting. I get the point, but it'd certainly hamper refactors. You can use core redirects, sure but, some uassets ARE code.

rotund bobcat
#

Isn't plastic more like a combination of git and perforce

reef oriole
# rotund bobcat Isn't plastic more like a combination of git and perforce

I would rather say that it's more like a more modern Perforce, with ideas from other VCS: faster, leaner, cheaper and especially far easier to setup and use (but bear in mind that I work for them, integrating Plastic SCM in Unreal Engine 5 🤩 😉 )
It's a challenger, including the downsides of being less widespread, though it's now really the defacto for Unity development

rotund bobcat
#

yeah cause unity bought them

#

I definitely wanna try it out at some point

#

but I don't really work with other people on projects outside of work, so no great testing setup for vcs 😄

reef oriole
#

Actually, it's the reverse; Unity bought Codice Software because Plastic SCM was getting traction while their internal Collaborate solution was not good enough

reef oriole
rotund bobcat
#

I'm not working in unreal anymore, we just do code, no large assets, so git + lfs

#

for free time stuff also just git cause I'm used to it

#

not that I code that much in my free time anyway

storm sleet
#

As a plastic user (and repo maintainer) I can really say it's a great tool. definitely worth trying out. Before I only worked with git, so no perforce/svn experience

limpid obsidian
regal grotto
half bison
#

Hello everyone! I work in a small team. We are trying to improve our workflow with a revision system. We chose to use svn because it is free. I installed a server in a nas. I use source control and tortoise svn. It works very well when I work alone. But problems occur when trying to use the system with several people. Some files are locked without wanting to. Most commits fail for various reasons (e.g. moving files). Large amounts of unnecessary assets have to be downloaded every time someone wants to try a package. We end up wasting too much time using source control. Does anyone have any advice for me? A procedure to follow for optimal teamwork?

unborn relic
# half bison Hello everyone! I work in a small team. We are trying to improve our workflow wi...

Well, if you don't implement (I'm not aware there exists (free?) solutions for it) a system that downloads your assets on demand, I don't think you come along without syncing properly.

What you could try is a different version control system(VCS). A common one would be P4V (Perforce) that is also somewhat friendly to use for designers. Its free for small teams with IIRC 5 ppl max. It also has an integration into Unreal Engine, never used it but I'd assume it's usable enough.

A more complicated one than svn would be git, good thing on git it wouldn't lock your files locally^^ Downside, way more complicated to use, especially for ppl not exp with VCS and also the support for binary files is, well not that good, even if there exists git lfs (large file system). We use it on our project and it works good for us but we have programmers with exp in git that help the others, so also only a solution for small projects with no time pressure.

storm sleet
#

I can recommend plastic, which is cheaper for few people and free for open source projects, iirc (check their website). P4V should work quite well out of the box since epic uses it. You can also use gamesync and other epic tools with p4v

half bison
#

Ok but why change ? svn works fine. The problems come rather from the side of ue4 with its source control bug

#

Whether it is svn perforce or plastic the principle remains the same, am I wrong?

#

I have already found some techniques to facilitate teamwork, especially the sub-levels for working whitout locks problems

#

I am curious to know how big teams manage to work together in an optimal way

faint cairn
#

We are currently debating what to use with a small team too. We are groing beyond the point that P4 might ask first borns in terms of payment.
Used Plastic in the past, but really not happy (especially that you can't obliberate old files.. wtf).
Not sure about SVN.
Think atm we might go with some Git provider, may it be Gitlab or whatever.

reef oriole
faint cairn
#

Yeah the last time I googled for "How can I get rid of this part of the depot?" was answered with "you gotta trash it completely and reupload it"

#

At which point I lost interest

reef oriole
# faint cairn Yeah the last time I googled for "How can I get rid of this part of the depot?" ...

Well, it might have been the case some time ago, at least on Cloud, see this release;

https://www.plasticscm.com/download/releasenotes/10.0.16.6241 Archiving revisions is now available in Cloud!
You can reduce the size (and the costs :)) of your cloud repositories by archiving revisions to an external storage.
Check the whole archive documentation here: https://www.plasticscm.com/documentation/administration/plastic-scm-version-control-administrator-guide#Chapter10:Archivingrevisions.
also super interesting scripting tips like

  • How can I archive all the revisions bigger than 10 MB?
  • How can I archive all the revisions of the file '/arch.zip' file?
  • How can I archive all the revisions except the last one loaded in br:/main?
faint cairn
#

hm

reef oriole
#

The roadmap for Plastic SCM says: https://unity.com/roadmap/devops

In Progress:

  • We [are] bringing full support for Plastic SCM in Unreal Engine 5 [changelists].
    Planned:
  • We are working on a trimming tool for Plastic SCM Cloud Edition so that you can manage your repository storage. This will allow you to purge old revisions for selected file types and only keep the last N revisions.
Unity

Get insights into our future plans for features and functionality in the Unity platform and let us know what you think.

faint cairn
#

So SCM isn't supported in UE5 yet?

reef oriole
#

It is, only the new Changelists are not implemented on anything other than Perforce

faint cairn
#

Right, okay.

reef oriole
faint cairn
#

Means 5.1., right?

reef oriole
#

Yes! (will double triple check what they said on another PR of mine)
but you can already get the same version of the plugin in UE5.0 since I release binary versions on Github

#

Anyway I would love to get you to try again, would be nice to have you onboard 🙂
Don't hesitate to contact me in PM, we know each others already 😉

rotund bobcat
#

do you get paid to recruit people on this server 😄

faint cairn
#

He literally works for them :D

rotund bobcat
#

I know

faint cairn
#

I can understand that he pushes for it

#

P4 needs to be replaced eventually

#

As much as I like using it

reef oriole
faint cairn
#

That fair, :P just keep your work/life balance in check

unborn relic
#

Does Plastic support self hosting? Are there licence models for small teams (up to lets say 10 ppl) which includes self hosting? What about free models for projects that won't be released commercially but are not opensource?^^
(We currenlty host our own gitlab and thus just need to pay for our server)

faint cairn
#

You could just check the pricing page

#

Up to 3 Users Cloud is free.
Then there is a Cloud Version, and an Enterprise version, which allows self-hosting

#

So you would need Enterprise for self-hosting, but Cloud would work if you don't need that

unborn relic
faint cairn
#

That's totally fair. No income is a tricky situation :P

storm sleet
#

All those germans using spanish products 😂😂😂

#

I really like plastic and can't wait for their improvements they have planned on their roadmap

vestal blade
#

Why is perforce command not working numberical user client ? is there why to change typemap file manualy going to directory something like that need Help.😢

vale basin
#

Set p4user=your user

#

Your windows username does not match your p4 username

#

Running the above command will override it

reef oriole
#

can you have a look at

p4 set

#

or (p4 set P4USER)

vestal blade
reef oriole
#

I'd write the command like that:

p4 set P4USER=sebastien.rombauts

vestal blade
#

just did in image

reef oriole
#

"set" from windows will list, get or set an environment variable

#

"p4 set" does exactly the same, but limited to Perforce
it's more convenient imo

#

yes, same, it's normal
but now your problem is that you don't want to provide your windows user name 99026 but your p4 user

vestal blade
#

same result
set or p4 set

reef oriole
#

someone should have attributed a username & password to the server, with an associated license

vale basin
#

Set is finicky

reef oriole
#

err, sorry, seems wrong

vestal blade
vale basin
#

So it did, I only saw first screenshot

#

Well perforce doesn’t like your username

reef oriole
#

but there is something strange still
the windows users seems to be
99026
the perforce user seems to be
990269

vale basin
#

P4v works I take it?

reef oriole
vestal blade
#

same error

vale basin
#

The last error is about purely numeric usernames

#

It needs a letter it seems. Does p4v work?

vestal blade
#

accidentaly set user name 99026 laptop to while window install

vale basin
#

I think it is spaces in your command as srombats confirmed

#

Looking at your screenshot it’s not using your desired username

#

Type exactly:
set p4user=username

#

No spaces

vestal blade
vale basin
#

Ok, at least now it is reporting the correct username in the error message

#

So now it’s complaining about only numbers in the username

#

Does p4v work?

vestal blade
vale basin
#

Strange

#

Well it doesn’t like number only usernames apparently, that’s what the error is

#

That screenshot shows your username as Amir….

#

You are using the wrong username

#

No, p4v is using the right username

#

Set p4user on command line to amir

#

If you want to change your username you’ll need to do it hrough p4admin

vestal blade
#

Thanks guys finally work

cyan jay
#

Fwiw the easiest way to use p4 CMD for quick jobs is to use p4v.
Right click any folder and choose Command window here.
All the username etc is set for you already.

vale basin
#

TIL

#

Good tip thanks

vestal blade
regal grotto
gray siren
#

Do I need to include binaries in the depot for both the project and the source version of the engine? I keep getting compiling errors and having to checkout the whole binaries folder on my project when working in cpp. Idk how that is going to work with another team mate

rotund bobcat
#

your project binaries don't need to be checked in

#

cause you team mate will get them if they compile the project

#

and you can force compilation on startup

vale basin
#

Or, as dieter said just don't check in binaries, but if you have a non-programmer on the team that is a problem

wide bear
#

Under what conditions does github list author/commit separate if it's the same person?

gray siren
#

@rotund bobcat @vale basin Ty! I'll just keep them ignored for now then, we only have two programmers right now so we're both capable of compiling it easily, if that's what you mean by non-programmers having some issues with it.

vale basin
vale basin
reef oriole
storm sleet
#

btw great work on the latest UE4 plastic plugin version. I can't wait to try out the new features 🙂

reef oriole
storm sleet
#

still, very great results. I really appreciate them, and nice to hear that you're doing well with Epic 🙂

spring grove
#

anyone have experience with perforce? I have setup a workspace as a localhost, i'm wondering how I can get my friend to be able to join the perforce server over the internet

lofty warren
#

hi all, I shelved some files to backup my work, but did not revert them on shelving and continued working on them

#

now I'd like to submit those files but I am asked to unshelve or delete the shelved files first

#

how do I keep whatever is in my workspace now?

#

and submit that

limpid obsidian
#

delete the shelf and submit

mighty light
#

How well does perforce server work in docker?

vale basin
#

I haven't run it at large scale but I've been running it for 2 years in docker

#

Works fine

#

Depends more on the underlying storage, processor and memory I'd say

mighty light
vale basin
#

Made my own

#

There's a few to copy from and a few guides to use as a basis

bitter sun
#

I have multiple workspaces and I want to remove all of them and leave only single one. If I revert the changelists in them, is there any possibility they can override anything that modified after added to those changelists?

bitter sun
#

Revert unchanged files does not revert anything so probably it will override?

bitter sun
#

Also, what happens if I remove the workspace without reverting files?

bitter sun
#

p4 revert -k -c default //... seems to done what I wanted

runic hornet
#

I know in ue4 you could pull from git right in unreal, but the git integration in ue5 seems a little lackluster? it doesn't seem to support pulling, or auto tracking additions, am I doing something wrong here?

indigo relic
#

anyone know why my p4 keeps downlaoding the same files

#

every time I press get latest it downloads these 2000 files

wintry shoal
indigo relic
#

I cant see which files its downloading p4 doesnt do that, so thats all the info available

limpid obsidian
#

for verbose output of downloaded files, use this

#

as for your problem, maybe p4v metadata is out of sync? i would try a p4 flush from the command line

radiant musk
#

how do you remove stuff from depot in perforce ?

limpid obsidian
#

you can mark files for delete

#

it doesn't permanently delete them...you can always go back in time and retrieve them. deleted files are just filtered from view

#

if you want to permanently delete them and the entire history you can use obliterate from p4admin

hybrid dock
#

hi, I'm trying to research how to use Perforce for a small team and want to clarify something

#

the computer on which "helix core server" is installed becomes the central source of truth, meaning that's where the files are hosted, correct?

#

and all other users will use P4V and Unreal source control plugins to pull, lock/unlock, and push their changes

#

but the Helix Core computer itself must be backed up periodically, because if it fails, the whole project goes with it
(as opposed to GitHub, which is cloud hosting so provides a safety net against hardware failure)

#

is that about right?

merry verge
#

Mostly correct. Github is not backup, though.

#

All it takes is someone force-pushing your repository to wipe out any "backup" you had on github.
Anyway, not relevant to backing up a perforce server. Yes, you need to backup the server directory (and potentially need to create a checkpoint first). You may want the occasional backup of the project files themselves as well if you're serious about being safe.

vale basin
#

Github and other cloud providers DO experience occasional data loss and downtime, and also have other potential issues like a project or user getting banned for any number of reasons. Backups are needed whatever you choose

merry verge
#

Source control in general isn't backup in and of itself. Backing up whatever your "source of truth" for the repository is (whether that be whatever is pushed to github or a perforce server directory or whatever).

hybrid dock
#

appreciate your reply, thank you

reef oriole
radiant musk
#

Any idea why a file appears in the workspace, but not in the content browser ?

rotund bobcat
#

what kind of file

vale basin
#

Run fixup redirectors and see if it goes

#

Also I think in content browser you can get it to show redirectors, but I forget how

radiant musk
#

also how can 2 people work on the same project, because when I try to open the project it wants me to check out the uproject file and then it locks it for the other person?

vale basin
#

If your team members have files checked out it shouldn't prevent you opening them, only saving them. So it shouldn't block progress

#

If when you open a project it updates the uproject file, then your uproject file isn't properly up to date. It's either changing engine association or enabling a plugin. You should check that whatever is being changed should be submitted

#

Opening a project with the correct engine version should not attempt to checkout that uproject

radiant musk
#

hmm ill see

cosmic knot
#

Has anyone setup plastic SCM for unreal engine 5 that could direct me to some documentation or vids that would help?

rotund bobcat
#

@reef oriole probably

#

mr plastic himself

cosmic knot
#

haha thank you, hopefully hes around 🙂

cosmic knot
#

Righty i have managed to get it connected and a friend on, once they attempt to boot the file they get the error of "could not be complied try rebuilding from source manually" ive had this before on perforce but unsure of what i did to fix it. (also does anyone have a UE5 .ignore file they use, i guess maybe @reef oriole if you're around 🙂

woven sluice
#

that error has nothing to do with source control (unless it's been caused because you didn't commit enough project source files to source control and the other teammate is missing stuff), that error means exactly what it says, compiling DLLs failed... is your friend an artist, do they have visual studio installed?

cosmic knot
#

Yeah my project works fine, and i have got them to join the source control and download the project, once they attempt to start it throws the above error. they're not an artist and yes they have VS 🙂

woven sluice
#

you'll probably want get them to open the .sln file up in VS, hit build, and give you their build output log so you can figure out what went wrong

cosmic knot
#

gotcha

astral skiff
#

Hello all. I have a question. I've downloaded the Unreal Engine source and Pushed it in Perforce with it built. I'm Trying to get another programmer to use it as well be he is have Issues with building a project with it. Does anyone have a solution for it?

cosmic knot
#

would i need anything adding or removing from my ignore file @woven sluice

storm sleet
#

I personally also ignore all DebugGame binaries and *.pdb instead of binaries directory, but we distribute our binaries to designers that way

#

Also hello fellow plastic user 😉

cosmic knot
#

@storm sleet trying to get the ropes of it now but not have loads of luck, not sure of the normal work flow for pushing and pulling changes and we seem to be running into issues

teal bone
#

So you automatically ignore plugin ones too

#

Same goes for Saved, etc.

storm sleet
#

Same with binaries

#

Yeah

teal bone
#

Basically every directory you listed.

cosmic knot
#

Would anyone be able to drop there ignore file so i can see how they;re normally written, additionally, when i check something out shouldn't the team member be able to see a live view that i have checked out an asset as i cannot get it to work. unsure if we're correctly pulling/pushing ect. @teal bone @storm sleet

storm sleet
#

Live view as in symbols on assets? That's what the plastic plugin and the workspace view does. You need to properly configure file locking for this to work