#source-control

1 messages · Page 10 of 1

woven sluice
#

no. there is a tool to visually diff them. but one of them must go in the garbage

vague whale
#

hello, has anyone got experience moving a p4 server from one machine to another? I was hoping i could simply install p4 an rsync over the the /opt and /etc dirs

#

probably need to have everyone (err both of us) submit work as i don't suppose p4 likes to be moved

cyan jay
mighty light
vague whale
mighty light
topaz ember
#

Hi, I have a problem in P4V, I can't send my project to my server. I create a new workspace, after i choose my project files to add in workspace. All files are correctly duplicated in the workspace but when P4V try to push files to the server it dosent work and i have a warning for each file: d:\UnrealProject\W_Isometric\Isometric\Content\ExampleContent\ParagonGreystone\Characters\Heroes\Greystone\Animations\AimOffsets\Idle_AO_CC.uasset - file(s) not in client view.
If someone have an idea plz

urban crystal
#

If you were following Mathieu's Perforce tutorial on youtube (I assume you did) this is a known issue from his series

topaz ember
#

Lol i absolutly followes his tutorial

#

Do you know a good tutorial to configure my workspace?

topaz ember
#

Hi, finally i added a stream depot

#

And it works fine

topaz ember
mental wind
#

I have a 5.0 UE project that I have opened in 5.2 (as a copy), and it made a new project directory, etc.. Is there a standard way of handling this with my code repository so it keeps the history of the old 5.0 project? Should I just point the repository at the new project directory and go from there? Or go back and open the 5.0 project in 5.2 "in place" (which strongly warns me against, but the whole point of using version control is I can go back if I break anything)? Or something else?

Is it as easy as just pointing the repository at the 5.2 project dir and commiting everything and done?

I'm using git and sourcetree.

reef solar
#

@frail condor check the pins here, but imo github is the easiest to setup and work with a small team

frail condor
reef solar
#

and your 50gb project you're just counting the files you need right?

dire moat
#

you don't want to check intermediate files into source control, or compiled binaries (usually), or most of what's in the Saved directory, or ... Just your source code and assets.

reef oriole
#

Hey there, I have released a new version of the Unity Version Control (formerly Plastic SCM) plugin for Unreal Engine 🎉 https://github.com/PlasticSCM/UEPlasticPlugin/releases/tag/1.8.1
It comes with robust support of the recent UE5.2, major performance improvements, QoL improvements, and rebranding to Unity Version Control. 🥳

GitHub

1.8.1 release for UE 4.27, UE 5.0, UE 5.1, UE5.2 and with support for upcoming UE 5.3
Robust support of UE5.2, major performance improvements, QoL improvements, and rebrand to Unity Version Control...

dawn sphinx
#

I'm working with my dev on unreal with perforce , and he's using add-ons that are now not free anymore !
I precise that the plug in is to be installed in the engine , and right now i have compile errors on important composent of my characters , can he share the late free plug-in with me or do i have to buy it now even if it is source controled ?
thanks guys ! 🙂

teal bone
#

Depends what the licence he agreed to says.

#

If it says he's free to distribute it, sure, why not?

dawn sphinx
#

so when i'm opeing the project with source , it says to me that i miss add ons but it redirects me on the market page to dl it , is theres a way for me to work with this add-on that he got for free at the time or do i got to pay for it ??

teal bone
hexed hatch
#

Sorry for the ping by im having the exact same issue right now with buildgraph on a compile job, what did you do to fix it?

long mural
#

yeah

#

i named my editor AresEditor not AresGameEditor lol

#

it was my mess up

hexed hatch
#

ahh ok seems like mine is unrelated then, sorry to bother

long mural
#

post the error

#

maybe i have seen it or can help

hexed hatch
#

sure one sec, I need to run the job again

#

Currently doing sanity check with lyra because I got sick of triggering ci runs manually but this is what I get

****** [3/3] Compile LyraEditor Win64

Reading local file list from T:\UnrealEngine\Engine\Saved\BuildGraph\Compile Tools Win64\Tag-Compile Tools Win64.xml
Reading local file list from T:\UnrealEngine\Engine\Saved\BuildGraph\Compile Tools Win64\Tag-ToolBinaries.xml
Reading local file list from T:\UnrealEngine\Engine\Saved\BuildGraph\Update Version Files\Tag-Update Version Files.xml
Reading shared manifest from T:\UnrealEngine\Engine\Saved\BuildGraph\Compile Tools Win64\Manifest-ToolBinaries.xml
Running: T:\UnrealEngine\Engine\Binaries\ThirdParty\DotNet\6.0.302\windows\dotnet.exe "T:\UnrealEngine\Engine\Binaries\DotNET\UnrealBuildTool\UnrealBuildTool.dll" LyraEditor Win64 Development -Manifest=T:\UnrealEngine\Engine\Intermediate\Build\Manifest.xml -NoHotReload -xgeexport -NoUBTMakefiles -log="T:\UnrealEngine\Engine\Programs\AutomationTool\Saved\Logs\UBT-LyraEditor-Win64-Development.txt"
Log file: T:\UnrealEngine\Engine\Programs\AutomationTool\Saved\Logs\UBT-LyraEditor-Win64-Development.txt
Using 'git status' to determine working set for adaptive non-unity build (T:\UnrealEngine).
Couldn't find target rules file for target 'LyraEditor' in rules assembly 'UE5Rules, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null'.
Location: T:\UnrealEngine\Engine\Intermediate\Build\BuildRules\UE5Rules.dll
Target rules found:

Took 1.3105514s to run dotnet.exe, ExitCode=6
UnrealBuildTool failed. See log for more details. (T:\UnrealEngine\Engine\Programs\AutomationTool\Saved\Logs\UBT-LyraEditor-Win64-Development.txt)
AutomationTool executed for 0h 0m 9s
AutomationTool exiting with ExitCode=6 (6)
BUILD FAILED

#

Im used to BuildCookRun where you just pass the uproject dir and the target as params. Am i missing something for the compile task?

hexed hatch
#

It works just fine when I pass in the Project={path to uproj} param but from what I seen that isnt needed which just leads to more questions

long mural
#

hmm

#

is LyraEditor the proper name?

hexed hatch
#

yeah, and it works when I give it the project path

#

how does UE get the target files in the first place if you dont specify a path?

#

i tried executing it in the projects base dir thinking that was how but it didnt work

long mural
#

i can't remember

#

let me take a look at my stuff, might be a while though cause i need to boot up work pc

hexed hatch
#

take your time, thank you

surreal steeple
#

What do people use for hosting their projects, if anything?

outer kiln
#

ue 5.1.1, I'm telling subersion what the repo is, yet on accept settings, it thinkts itis somewshere else , how do I update this ??"

#

with warning,this is not a workingdirector,which it is NOT ;0-0

lofty lark
#

I think I've identified an issue with the Unreal Engine source repository's .gitignore file. Specifically, the Engine/Binaries/ folder has way, way more stuff in it than the .gitignore folder would lead one to expect. I suspect that there are conflicting rules at play and no one has bothered to check. I'm also not entirely certain that I understand what is supposed to be in there by default, so I'm a little hesitant to attempt a fix and issue a PR myself. Is there some way to file a bug for something like this with Epic?

pulsar crater
#

Is there a way to make internal assets available in users' vaults so you can push updates without making them available on the marketplace? Not sure the best way to deploy tools to 100+ people while allowing them to import to their projects easily and update

teal bone
#

Is th at really what the marketplace is for?

#

You could use UGS for something like that

pulsar crater
# teal bone Is th at really what the marketplace is for?

Well, we're introducing Unreal to an architecture firm for archviz, they'd all be using these tools across different projects, similar to how you can import marketplace assets on the fly, and clicking update would propagate the updates to all projects using that asset. Would UGS work for that? I had never heard of it

teal bone
#

UGS is sort of like an "easy to use" frontend for perforce for unreal.

#

You would add your tools onto a p4 repo and use UGS to update it.

#

You could even put them in the same repo if you dislike organisation! 😄

pulsar crater
#

Ah, I had tried setting up Perforce but put it on pause when it wasn't working, it may make more sense now

#

Is Perforce generally used for code and blueprints like Git, or is it also used for assets like meshes and textures that can be huge?

teal bone
#

Perforce is a catchall for everything. It seems.

#

However setting up p4 and ugs is not in my wheelhouse. Just don't ask chatgpt. It gets it wrong.

pulsar crater
#

Lol noted

vague whale
#

hello p4 just ignored my ignores and added .vs files and some from Saved, how can ignored directories get added?

teal bone
#

Are you sure it didn't ignore your ignore file?

vague whale
#

i hope not

teal bone
#

IIRC there is a tiny bit of setup to get the ignore file to work.

vague whale
#

it didn't add everything

teal bone
#

SET P4IGNORE=.p4ignore or something. I'm sure someone knows...

vague whale
#

yeah did that

teal bone
#

Ah

vague whale
#

its been working

teal bone
#

Ah.

#

Is the ignore file correct?

vague whale
#

just oh some random files

#

when i add it ignores files and i get a list of files it ignored when i try and add from the base

#

but just now its complaining about missing .vs files

#

and p4v is grinding to a hault

outer kiln
#

any error messages

vague whale
#

no error messages, just complains about .vs files and Saved/Log files that are now missing

#

no idea how thy sneaked past me

#

i was crazy careful

#

ok command line time, p4 submit -c 123 🙂

#

p4v is hanging

#

i see a lot of #1 files

#

is that normal

#

uasset#1

#

oh revision #1

hard bane
#

Sorry, this must be asked really often, but I'm still a bit lost. Is there a source control solution that:

  1. is free or extremely cheap
  2. doesn't require self-hosting
  3. for solo development, so disregard collision and team size concerns
  4. works well with the engine built from source
    ?

Every option seems to have a huge con that sort of ruins my plans, haha. Thanks!

OBS: worth mentioning this isn't your 500gb nanite project, I don't expect file sizes to grow that large

teal bone
#

You can "self host" a p4 server on a free azure server or whatever.

#

However, git is free, but they make you pay for LFS (large file storage).

hard bane
# teal bone You can "self host" a p4 server on a free azure server or whatever.

Ohhhhh, so I can use Perforce with stuff like Azure DevOps? That seems perfect
I'd love to use GitHub as that's what I'm mostly used to, but I'm not really sure if I could get away from LFS. It seems like anything below 2gb is fine... but why would I have an asset above 2gb? Do unreal maps end up that large?
Thanks a lot!

teal bone
#

It's not just the asset, it's the asset history.

#

And I'm not sure, but maybe there's some sort of data transfer cap too?

#

If you wanted to stick with git, you could use azure devops to run a git lfs server.

#

At least I think it's azure. There's one service that does a free tier.

#

(well, probably more than one)

hard bane
#

I'll definitely look into it, thanks a lot for the help! Do you personally prefer p4 or git lfs, btw?

teal bone
#

I much prefer teh simplicity of git. But LFS has its issues.

#

I'd love to be able to use p4 with branching, but it's not allowed 😦

#

(by the company I work for)

vague whale
#

i broke git and gitlfs before, p4 even thought i don't really know it works better with unreal

#

i would love to get the time to understand streams, but perforce is a bit twitchy compared to git

vague whale
#

any suggestions how to remove add //WildHuntTrailer/Saved/webcache_4430/Cache/f_0000fe#1 (thousands of them)

teal bone
#

Delete key?

vague whale
#

just learned the ... syntax

woven sluice
#

P4v should work just fine and easy to erase the saved folder

hard bane
#

Sorry if it's a dumb question, but how would you guys go about "cloning 5.2 source code, making engine modifications and starting a native project there, while being able to pull 5.3 later when that releases"? With git, as I decided to go with git LFS in azure thanks to you guys ❤️

outer kiln
#

just remember,git is experimental

#

beta

vague whale
#

hello again, p4 is confusing the stuffins out of me again, i see a message D:\src\PHANTEKS_WILDHUNT\WildHuntPCGDev\Plugins\WildHuntEnv\Binaries\Win64\UnrealEditor-WildHuntEnv.dll i've put the Bins it the ignore list, why is it even looking at them?

teal bone
#

It's pretending to be a raccoon?

vague whale
#

this is probably the most likely reason

#

i googled and all i found was people cussing p4's ignore system

outer kiln
#

ya well p4 bites yes, doesn't work reliably in win11

#

so Iused pasted into notepad,done.

#

with luck , the other command line arguements work better ;0-0

#

anyone here getting folder level errors getting perf. working in sc in ue5 ?

#

I chose wk in place other than where project is

#

worfking dir

#

perf howto said nothing aboutnot being able to so...

woven sluice
#

the ignore system is quite simple in practice.

  • perforce looks at environment variables to discover various file names to look for
  • perforce looks for those files in the workspace as it traverses it during add operations, and uses them
#

you either added the DLL file already to source control, or something above isn't set up correctly

#

or you've found some other way to forcefully override default behaviour

outer kiln
#

ya its straigtht fwd

#

perf.has a nice well done howto that covers must all this, fyi\

outer kiln
#

why am I getting, does not map into directory with perforce,everything looks fine

#

CommandMessage Command: Connect, Error: Workspace 'neighborlee_Essence_Main_7073' does not map into this project's directory.

zealous remnant
#

Hi guys, my plastic SCM keep showing this message " The remote host closed the socket " I try everything in internet but I can't fix it

#

is there way to find fix it

zealous remnant
#

oh I fixed it. just sign out from plastic and sign in again fix it

outer kiln
#

sc in ue is so buggy

#

I can get errors, press exist, and it works ;0-0

#

with errors, but works, OK ;0-

#

do you like plastic scm ?

#

Ive no luck with any of them, getting scd working iin ue 5.1.1

#

perforce CLOSE, but it doesn't like where workspace is

pulsar parcel
#

What are you talking about

#

Also PlasticSCM is the worst source control I've ever used, and from what I heard still has the same issues from when our studio trialed it over 8 years ago

analog shore
#

Hey, I heard that in UE5 with perforce there is a feature where multiple people can work on a level at the same time and am wondering how to set that up. Any ideas?

outer kiln
#

so far, ive got no sc working and ive tried them all but plastic, I dont call that very good sc

#

perforce is almost there, but nadda

pulsar parcel
#

Not being able to understand errors is not the same as it being buggy

outer kiln
#

and nobody knows whyk no responses on forum

#

I understaned the errors, but there is no remedy given, anywhere

#

iod c]

#

I'dcallthat ineffective

#

and on and on

pulsar parcel
#

Like what. The last one you posted is because you created a workspace but the project doesn't exist in a directory relative to the workspace root

outer kiln
#

yes and nobody has offered any help, the error is vaaaaaaaaaaaague

pulsar parcel
#

And no source control working sounds more like a you problem than any fundamental problems with the source control itself

#

That error isn't vague

outer kiln
#

still, no fix for the error 😉

#

ive googled, no fixes noted

#

ive tried moving wkspace close to project dir, still nada

#

as I said, the error is vague

pulsar parcel
#

It really isn't

outer kiln
#

proveit

#

give me a fix, ill be apprecative

#

appreciative

pulsar parcel
#

"does not map into this project's directory" is telling you exactly what the issue is

outer kiln
#

odd tho,no hit comes back on google,for a fix

pulsar parcel
#

The workspace root must be a directory above the project

outer kiln
#

no, it is not

#

meaning ?

pulsar parcel
#

You should add the project to P4 in P4V before using the editor

outer kiln
#

done

pulsar parcel
#

Since the project already exidts

#

Show the workspace tab in P4V

outer kiln
#

np

pulsar parcel
#

With the workspace open

outer kiln
#

so if project is in /user/proj, then wksp should be in /user ?

#

one sec

pulsar parcel
#

Did you make your content directory the workspace root? No wonder

outer kiln
#

where do you see that

#

you still haven't answered my question

pulsar parcel
#

The fact there's a directory called Blueprints in the root of the workspace

#

Also I don't know why you asked what I said back as a question. The workspace root should be the directory above the project

outer kiln
#

the tut i was looking at said to do that

pulsar parcel
#

I somehow doubt it

outer kiln
#

above, meaning what

#

before, or after

#

< or>

pulsar parcel
#

Before, it wouldn't mean anything else in this context. There's more to versioning an Unreal project than the content directory

outer kiln
#

the wkspace is in G:\Documents\EssenceSVNwc , one below xxxx where all of project is in

#

Im awareof that

#

i had to fix that,to get anywhere 😉

pulsar parcel
#

The uproject needs to be in the workspace, and all the other directories (Config, Source if you have code) need to be too

outer kiln
#

it is

#

yes,,I think they are letme see

pulsar parcel
#

That's not the path in the screenshot

outer kiln
#

i know

#

so how does one GET a given dir, into wkspo

#

I was trying to get one thing done at atime

#

im been jumping between all sc options to find one that works,its been a bit uncomfortable

#

git is prob. the easiest, but it too isn't particularl well done with docs/tuts

#

none ofthem really are

#

there test.uproject is in wksp

#

just need toget config and content, yup

#

not sure how to do that

#

do I just copy them in directory of with a perf. tool ?

#

of/or

#

ok got it

#

so yes as i noted

#

Now that you have set up your server to properly recognize file types and ignore files, you can add project files to the workspace.

Copy your game engine project files into your workspace root folder.

#

ill do that momentarily

#

ty for your input any is appreciated

orchid plover
#

So perforce is free for 5 people it seems. Do repos have a size limit? Are they hosted in their servers? Do I need to use another service for hosting?

merry verge
#

perforce does not provide hosting

#

there is no size limit, only a user/workspace limit

outer kiln
#

yes im doing it locally

#

and yes againm

#

5 users ...

#

no size limit as per file you mean ?

#

sorry didn't see daahrien speaking to you;0-0- wsas away for a moment

orchid plover
#

Oh perfect. What is the estimate costs of using a cloud service like AWS? My projects is like 70 gbs at the moment. Also if I go local, I should have a pc on 24/7? Can I use my own PC? What are some tips or anything you think is relevant I should know.

wild rock
#

you can use your own pc if you have a dedicated ip ( if you want to access it remotely)

#

if you're solo your pc is more than fine

outer kiln
wild rock
#

as for aws , if you're just begining i'd personnaly recommend against it , you mess 1 thign up and you end up selling da house to pay them

#

Get yourself a cheap vps / dedicated server if you dont wnat to host it locally

orchid plover
#

Ok. Thank you both.

outer kiln
#

ya can get costly fast if you go over allotments

#

\ ;0-0

wild rock
#

You can go for something like this , its cheap af , has a lot of storage and good enough to handle it

orchid plover
#

Oh yeah. that's perfect for a small team.

outer kiln
#

do you really need a dedicated server, can't one just use a DIR setup with permissions,guess it depends on security needs?

#

but ya if that cost is fine, then awesome ;)))

wild rock
#

also if you decide to go for remote , make sure you follow p4 guidelines on setting it up

#

so you dont end up allowing any1 to connect , register an account and just clone the repo

outer kiln
#

yes, in perf. you issue passwords to anyone that wsants access, as I recall , or amI confusing svn ;0-0

#

I suspects its simlar with all sc's

orchid plover
#

Yeah. My team is remote.

wild rock
#

if you;re fine with some fees

#

give plastic a try 😛

#

its a LOT easier than p4

#

any1 with basic english can use it , doesnt require setup , and is very stupid to use

outer kiln
#

I thought about plastic, but how does it compare in space to perforce or is it just remote

#

perforce has not been the easiest ore quickest, but its not hard either ;0

pulsar parcel
#

The WOAT of source control

orchid plover
#

git is perfect but files have to be binary on Unreal. :/

outer kiln
#

@orchid plover even over svn

#

@orchid plover HM cant find out how to change, what git thinks is workspace root, any idea how ? On choosing git in ue5,thereis no edit , for such git items

#

only thing is, git is in beta, svn is not

orchid plover
#

I use control system detached from the editor. As long as git knows it's folders and files it has to track.

outer kiln
#

ok

outer kiln
#

dev asure did the trick, copied to clip the repo into github in ue5 and bam

#

we'll see if its as slow as mentioned,if so ill use something else

#

weird tho, when I brought up github as choice in sc, the dir showing was actual project dir, but I accepted, and when lookingh in sc lower right on hover, it showed correct dir NOT project, so is that a bug who knows, if somebody else is seeing this, it works

outer kiln
#

what feature

merry verge
#

if you're thinking about multi-user editing, it has nothing to do with perforce or source control. If you're thinking about one-file-per-actor, simply make a new level with world partition.

analog shore
#

idk, I just saw it in perforces video when they were using it

#

now we had a problem where a team member had a map checked out and another needed to edit it, so been thinking about that

merry verge
#

OFPA does help, as does splitting levels into sublevels. Depends on workflow.

analog shore
#

For us it's fine, they create assets and toss them in basically

#

aka replace placeholders

outer kiln
#

perf., ue5.1.1. all current, perf.working great, enabled, but then I get these CommandMessage Command: UpdateStatus, Info: Path 'G:/Documents/Essence/Test2/Config/DefaultEngine.ini' is not under client's root 'G:\Documents\Essence\neighborlee_Essence_Main_7073'.

CommandMessage Command: UpdateStatus, Info: Path 'G:/Documents/Essence/Test2/Content/Map/Esse_tall/_GENERATED/thehe/Sphere2_CE91EFC3.uasset' is not under client's root 'G:\Documents\Essence\neighborlee_Essence_Main_7073'.
,anyone know what might cause this ?

#

before turning on perf. sc,I added entire config and contents dir from repo so...

merry verge
#

your workspace directory is not the same directory as your project

outer kiln
#

I know that

#

copied over from proj into wksp ,no more error

#

no idea why it was missed in the first place, odd.

merry perch
#

I aborted a merge improperly and now git is is seeing a merge where there isn't one, preventing me from preforming the new merge that I need to.

I'm relatively new to git and realize that these mistakes are probably pretty embarrassing to have made. I'm using Sourcetree and was attempting to merge branch A into branch B. Partway through this merge I realized I wanted to make one last change to a file on the checked out branch B, and tried to abort. Instead of resetting the changes in what I now know is the proper way ("git reset --hard"), I selected the files in sourcetree and undid the changes manually (selecting 'discard changes' for edited files, and 'remove' for new files). I then edited the file and created a new commit, but because I didn't properly abort, Sourcetree/git thought this commit was still a merge. Now, since I've supposedly already merged the branches together, any attempts to merge ignore all branch history prior to this "fake Merge".

The main two fixes I've attempted were to make a new branch off of B from a commit prior to the fake merge, B/1, and merged A into that new branch. This succeeded, and I could theoretically just continue working off of this new branch, but that feels sloppy and unprofessional. Given that this is a public repository and for the sake of learning proper git practices I want to hopefully work off of my original branch B (and ideally even delete the B/1 branch). Attempting to merge B/1 into B results in the same issue as before, Since each branch has a merge to the other branch previously in it's history, it doesn't recognize any changes made to files prior to the fake merge.

The other fix I've attempted was to revert the commit containing the fake merge. I called revert -m x <commit>, with both 1 and 2 as the parent. 1 (parent B) resulted in the same issue, where git doesn't recognize any difference between the branches, and thus refuses to merge them. 2 (parent A) resulted in deleting the changes made to B.

#

I do fully recognize that I made a huge mistake by aborting the merge improperly, which is the source of all my issues. But I'm hoping I might still be able to resolve it

red sluice
outer kiln
#

perf enabled working mostly fine BUT as I save it seems sometimes I get a section of world part , that causes an error saying, X is not under clients root, fix??

#

hey joel, my egrep is weak but , are you trying to maintain a history of who made which changes

red sluice
#
p4 changes

Seem to be the equivalent to ```
git log


Edit: Maybe not quite 🤔
fathom barn
#

Hi, does anyone know if you can run UnrealGameSync with flags to set the workspace?

teal bone
#

You mean you have multiple workspaces set up within UGS and you want to start it with a specific one activated?

teal bone
#

Or you want to specify potentially completely new workspaceS?

merry perch
# merry perch I aborted a merge improperly and now git is is seeing a merge where there isn't ...

bumping this. the tl;dr of the issue is a "fake merge" in which I improperly aborted a merge, resulting in git merging two branches but discarding all the file changes in doing so (and now refuses to recognize any difference between the branches). Unless anyone has any fixes I'm probably going to take what I'm worried is the sloppy solution and work with a new branch entirely (maybe I'll rename the old on?)

pulsar parcel
#

not source control related and cross-posting of issues is not allowed

merry perch
#

sorry for not updating until now but this was basically how I managed to fix it. I reset to the commit from before the merge, made a new branch B-merge, successfully integrated A into B-merge, then just renamed B to B-pin and B-merge to B. As far as I can tell git treats the original B and the "new" B (renamed from B-Merge) as a single branch as if I'd just done everything properly the first time around

hollow sleet
#

is the pinned tutorial for using perforce with UE4 still up to date with UE5?

hollow sleet
#

alright, thanks

sour osprey
#

Hey folks, I'm very comfortable with Git, and I've never used Perforce. Is there a specific technical reason Perforce might be better than Git for Unreal projects (ex: better handling of large files)? Or is it about the same at this point? I'm working solo indefinitely, so I think a local git repo to back things up to a local backup server is all i need, it would be great to know if there's a major benefit to Perforce though

merry verge
#

It's not about the handling of large files so much as it is locking support for binary files (git lfs locks aren't great) and epic themselves using perforce (so any improvements to the editor's source control integrations tend to happen to perforce first).
Working solo it doesn't really matter though - locking isn't a concern, git will work perfectly fine though you may still need lfs for large file handling.

static ore
#

any norwegians here?

frozen kite
#

I'm struggling with resolving merge conflicts with ue5 using Github

#

Is this something i should do on the command line or am i better off just avoiding them all together?

outer kiln
#

there is github for desktop

jaunty hornet
#

Is it ok to ask about Perforce licensing costs here? Because of course you have to contact sales to get pricing

dire moat
#

I think we pay $33 per year and seat. (Update: no, we don't)

jaunty hornet
#

Ok that's actually pretty reasonable

#

For self hosted?

dire moat
#

Yes. Compared to the monthly cost of the cloud server it's on, it's peanuts.

pulsar parcel
#

P4 is only self-hosted. they don't have any sort of managed hosting

jaunty hornet
#

Ahh indeed, they offer hosting for everything except P4

#

Even Perforce doesn't want to have the hassle of managing a P4 server

pulsar parcel
#

they did try their hand at managed hosting at one point but discontinued it

#

I don't think it ever left an alpha/beta preview stage

dire moat
#

But if I were to start over with what I know now, I would spend more time trying to make Git LFS work. Not a huge fan of P4's model.

jaunty hornet
#

Same

#

A friend also pointed out Anchorpoint to me, which is a sort of Git desktop front-end designed to be more accessible to artists and non-devs

#

But at EUR20/user/month, it's rather steep

woven sluice
#

if it's per year then shit i gotta contact them finally JoyStroke

jaunty hornet
#

lol if Perforce would charge 33 per month, that's way too much

woven sluice
#

the historical "word on the street" for budgeting has always floated a bit over $1/day/person

#

i've never contacted them though

dire moat
#

so, not quite so cheap.

woven sluice
#

That's ok. Thanks for clarifying!

frozen kite
#

I'm struggling with resolving merge conflicts with ue5 using Github
Is this something i should do on the command line or am i better off just avoiding them all together?

dire moat
#

Where do you have merge conflicts? in source code, or in assets?

frozen kite
#

uassets

#

its a blueprint conflict

dire moat
#

I don't think you can resolve those. you can choose to keep one file and throw away the changes in the other. best not to let that happen.

frozen kite
#

I see ok thank you

stone fox
#

Hey guys, got a question regarding baked data and source control- Building a scene with baked gpu lightmass lighting and a reflection capture, but sometimes it just doesn't carry over to someone else's machine when they pull latest on perforce. I understand that builddata for each level is a separate file, but does the connection with it and its corresponding level mean that if someone else has JUST the level checked out, new builddata wont work properly?

#

Someone has our level checked out but not our builddata. I get this is an easy thing to test but we're waiting on him for something else so I don't want to kick him off early if we dont have to

bitter forge
#

Hey everyone I really need your help! My lead UE engineer is alseep on the other side of the world and I am tasked with taking our project (that was made on his Windows pc) and cook/package a Mac-friendly version of our demo. After syncing repon and pulling the latest update of our game demo, UE 5.2.1 is crashing before opening the project on my M1 mac. Any advice?

outer kiln
#

error suggests ISR whatever that is is crashing , can't see all ofit at end

#
#

dunno ,foundthis binging,maybe related

#

dep onyour system, a crash could occur from resource depletion

bitter forge
#

Ahh thanks will review!

outer kiln
#

🙂

outer kiln
#

on accepting subversion as sc method in ue5 project, error says g:/blah/blah is not a working copy,yet indeed what its pointing to is the project dir itself, where is it getting this, that I wantg that dir to be the working dir ??

dire basalt
#

I was playing around with some UE Source control integration and now everything is asking me to make 'writeable' despite having fully removed the plugin. Is there any way to make 'everything wirteable' again? I just want to go back to how I was manually managing things externally

woven sluice
#

just go to windows and change it? (but also why are you going backwards with technology sadcat )

tight tundra
#

It frankly sucks because Git/Github isn't great with working with artists (the UE plugin isn't very nice and LFS locks don't work well with who we would need them to work with). So we've been using Plastic (Unity VCS) for our stuff.

dire moat
#
#

LFS locks seem to be the important thing to get working.

pulsar parcel
#

Perforce pricing is opaque because they charge studios different amounts based on their size and budget

tight tundra
stable tendon
stable tendon
pulsar parcel
#

Assembla is the biggest waste of money on the planet for P4 servers

#

but at least there's a first party SaaS solution coming

red sluice
red sluice
#

@stable tendon I translated your file into a batch script 😄 You know, because of reasons 😓 I took some shortcuts with the date and I'm no batch expert

Edit: it definitely needs some optimisation 😅

lavish fulcrum
#

I'm using the Git LFS 2 plugin and it's configured correctly and connecting to GitHub. Somehow I got my editor into a state where it does not show the right-click options for Source Control on assets. See:

lavish fulcrum
quaint obsidian
#

what are your git attributes

#

Also what plugin is this from

analog lodge
#

heya, I need help urgently.
I already tried to get this fixed with ChatGPT, but I´m worried I´m just making it worse.
On top of that I can´t reach the official forums anymore, where I was just gonna post.

So, a while back I managed to install perforce on a VPS with linux.
I know nothing about linux, but I got it done just following the step by step tutorial.
Either the tutorial was missing that info or I just didn´t register it at the time, but apparently when connecting to it using ssl, there is a certificate created, that expires after two years.
And what do you know, that seems to have happend just now:
Certificate date range expired.

#

I tried a few things from here:

#

and here

#

I also was adviced by chatgPt to mess with the environment variables in this file:

#

sudo nano /etc/perforce/p4dctl.conf

#

And I simply typed in "p4d" in the linux terminal, which apparently created a whole bunch of files and folders.

#

I realized way too late, that I was probably messing around in the wrong root directory (also thanks to chatGpt):

#

Like, I tried to set the new ssl directory in this folder
P4SSLDIR=/opt/perforce/ssl/

#

instead of the correct root folder of:

#

P4SSLDIR=/opt/perforce/servers/master/root/ssl

#

As you can see, I´m quite lost.

#

Any help would be appreciated, wish my company would just hire someone to deal with this stuff, we only recently moved to Unreal and since i did this before, I get to deal with it all...

#

We were planning on moving to windows, but for the time being we need to stick to the existing linux installation on our VPS, because we don´t have time to move.

analog lodge
#

Ok, looks like I massively fucked things up here...
Upon further investigation, I found SEVERAL other folders that contained db.xyz files.
The one with the largest files in them most likely should be the correct root folder.
But when I connect to it, I still have no users and when i created a new user I couldn´t see any of the depots...

#

Any help would be appreciated.

#

We don´t really need revision history for old projects, but I´m not sure I have a backup for old projects.
Of course we´d have to set it all up again and this time I´ll insist on a new windows server for that, but I´d still like to know how to recover the old depots.

I have several large files in the root of the perforce server, like db.rev, but the db.depot is only 16384 bytes, which means its pretty damn fresh...

lavish fulcrum
analog lodge
# analog lodge Ok, looks like I massively fucked things up here... Upon further investigation, ...

Well. As much as this sucks...
I think we´re just gonna start fresh. I just checked and we have recent syncs for all out older projects, most of them in dropbox, so they are also cloud backed up.
Its all for offline content, so apart from the master materials/library stuff, we really don´t depend on it that much.
But next time I wanna do this on windows, its stupidly annoying having to do it in linux, when you don´t know how to linux...

dire basalt
#

I accidentally enabled revision control in editor and I don't want to keep it, but now its always asking me about 'make writeable' is there a way I can globally shut that off? It's done something to majority of my life I want undone?

woven sluice
#

just go to windows and change it? (but also why are you going backwards with technology sadcat ) (again)
are the files in windows actually readonly or is it doing something else to you?

dire basalt
#

I went and disabled all the readonly, and it seems to work okay for a bit, but then unreal re-applies it for some reason
I'm not using perforce, so I still version control, but don't need the file locking mechanism

woven sluice
#

i'm not sure if this will be a good suggestion or not, but you could first manually remove file readonly, and then delete project's Saved folder... it contains all of your editor user configs, so everything you've ever configured like version control settings should reset

dire basalt
#

ill make a backup of everything, and give that a shot

karmic citrus
#

Anyone know if it's possible to have two separate billable PlasticSCM servers on the same organization/account?

hexed lava
#

I am getting this message in perforce- CommandMessage Command: GetWorkspaces, Error: The filesystem 'P4LOG' has only 222.5M free, but the server configuration requires at least 250M available. --- I have plenty of free storage so I dont understand what this is trying to say, does anyone know?

#

Ok now I am getting a no files to submit error on perforce

#

even though we have files checked out

#

Here are the errors
CommandMessage Command: CheckIn, Error: No files to submit.
Submit failed -- fix problems above then use 'p4 submit -c 46'.

woven sluice
lethal sluice
#

Hey gang. Getting a hard cap of 2mbps from Perfece. Anybody got any suggestions?

#

I can't work it out at all.

#

Server is in Aus and I'm in the UK.

#

1666 is forwarded. No trouble pinging the server.

#

No network errors or anything, just crazy slow.

woven sluice
#

did you turn on parallel sync? if you are unsure: do you have a progress bar with % displayed during transfers or does it just give you an animated thing saying it's in progress? @lethal sluice

cyan jay
lethal sluice
#

It seems to be using quite a lot of system resources too.

lethal sluice
#

Ah sorry autotuninglevel got it

#

Yeah that's disabled

lethal sluice
cyan jay
lethal sluice
#

Ok I'll give them a buzz, thank you

woven sluice
#

Hmm, I mean can't get a 60MB file overnight is super bizarre, parallel sync won't fix that

#

But I don't know where to look

#

Server is running on any decent cloud vps?

lethal sluice
#

Couldn't tell you I'm afraid. i'm an artist on the client side

#

Unfortuantely the article that noggs linked seems like its mostly targetted at serverside operations

#

Interestingly I've taken my desktop home over the weekend and am getting better rates 15-20mbps, however my laptop is experiencing the 2mbps cap still while on the exact same network

#

Foolishly I tried a load of things on the desktop not particularly scientifically though so I don't know if I've changed a TCP setting somewhere

#

I'm definitely not getting a progress bar. It just animates and says 1 of 1.

woven sluice
#

Yeah that's parallel sync and yeah it's server side to turn it on, so your team has. I thought you might be the only user or everyone might be affected

hexed lava
merry verge
#

You will have to look at DO's docs on it, and once setup it'll likely appear as a separate volume. At which point you'll have to move your p4d's storage over to it - p4d can't inherently use any available volumes, you have to choose a specific directory.
Moving to the volume should be as simple as moving the p4d server directory and setting up a symlink though (or changing the server config to point to the new location).

hexed lava
#

Ok thanks thats actually very helpful. One more question do you know a way to delete files in old revisions? My project is only 10GB but it is taking up 20GB do you know how to do this or what would be taking up the extra storage?

merry verge
#

You can manually delete old revisions via "obliterate" which deletes revisions permanently. You can do so from p4admin in the depot tab.
If you want to set a general policy for specific file types, you can use the perforce typemap to set specific filetypes that will only store the last x number of revisions (you can also do this for specific files)

#

Note that files that already exist in the depot do not get new changes to the typemap applied automatically, you need to either set their type manually or use p4 edit -t auto ... to modify every file to match the new typemap.

#

Also, I don't think the option applies retroactively so you'd need to obliterate old revisions manually after setting that flag (but new revisions shouldn't require any manual work)

hexed lava
#

Ok thanks. I am in the admin depot but when I click on the depot nothing pops up and the revisions aren't showing. Sorry for the basic questions this is my first time doing this type of stuff

merry verge
#

run p4admin, go to the depots tab, expand whatever depot you want. There's a bug where sometimes there's nothing inside a depot, just press f5 to refresh.

compact swift
#

Hi, does anyone here have experience with github self-hosted runners? When my workflow runs on a pull-request the actions fails in the actions/checkout@v3 with Error: fatal: --local can only be used inside a git repository and later Error: fatal: unsafe repository ('C:/Github/Runners/actions-runner/_work/MyProject/MyProject' is owned by someone else).
I googled a lot and could not find a solution on why the checkout actions fails... Sorry if this is not the right place to ask.

#

I run my runner as a service on windows

#

When I start my runner manually with run.cmd it works just fine.

red sluice
cyan jay
red sluice
#

I see. Maybe I should look into that at my company.
From what I can see there were some issues when it was introduced in 2017, but Perforce made it default enabled in 2019.

#

@cyan jay and for windows clients it seems that you might wanna look into "Receive Windows Auto-Tuning Level"-setting in windows

Always nice to find potential performance boost 😎

small adder
#

Using sourcetree and azure for my project. But everytime I open sourcetree it seems to pull a load of files i have removed...
Anyone have any clue whats going on?

#

Its like it overwrites all my changes before allowing me to push my updates!

#

Any renamed or moved assets reappear

cyan jay
red sluice
cyan jay
#

Yeah definitely!

quaint obsidian
quaint obsidian
#

and make sure you run that manually on the box

compact swift
quaint obsidian
dire basalt
stable tendon
lethal sluice
#

I've been too buried in work to try again recently as it's a bit of a rabbit hole tinkering.

stable tendon
eternal mountain
stable tendon
lethal sluice
#

Ah looks like this will need a be a server admin thing.

#

I have less issues with my submits and they're basically just sequences so files are absolutely tiny

#

It's the pulling of new levels and assets when they're updated that can be five or six gigabytes where the 2mbps cap really becomes an issue

#

I left it updating overnight and it's only gotten to 20%

#

Just for the record I'm getting the same limitation with the standard p4 sync commandline operation

#

By comparison Lucid which we use for non UE file transfers gets 100Mbps up and down

iron cave
#

Why are Perforce Task Streams supposed to be only short term? Is it because they do not offer advantages if half full so it would be the same as using Dev anyways? I was gonna do all the coding in a Task Stream child of the Dev Stream but unsure now.

stable tendon
stable tendon
lethal sluice
#

It's getting up to 0.7Mbps.

#

But that will still take an age

iron cave
devout summit
#

Hey everyone😁
Noob question here - I'm trying to upload my first UE project to GitHub using LFS (Its the Lyra sample project).
I set up the ignore + attributes file, but for some reason, the push to GitHub always fails with the same file that's larger the normal 100MB limit for none-LFS uploads:
"he push operation includes a file which exceeds GitHub's file size restriction of 100MB. Please remove the file from history and try again.

File causing error:

Content/Effects/Textures/Flipbooks/SmokeSwirl_3_Flipbook_CHANNELPACK.uasset (142.57 MB)"

I'm guessing that it has something to do with the attributes file, but I added "*.uasset" to the file for tracking...
So, what am I missing? I'm attaching the attributes file if that can help.
Thanks!!🙏🙏

quaint obsidian
devout summit
woven sluice
#

also can take aaaaaaaaaaaaaages to create

iron cave
#

I thought only the virtual streams didn't duplicate the files and all the rest do. I'm not sure if task streams only duplicate the revised files.

woven sluice
#

making me second guess myself, maybe it does

iron cave
#

I thought it did when testing it out.. i'll double check now.

woven sluice
#

lol yep guess it does. my bad. love perforce, but this aspect of it is absolutely trash

iron cave
#

I can see them in the depot but I'm not sure if they're just mirrors of the dev stream

#

what else could make them lightweight other than not storing the files.. i do not understand this

woven sluice
#

just end up doing trunk dev all the time. iirc epic does something like keep two other streams active, one being "2 weeks out" and the next one "4 weeks out" or something like that. like they don't take off streams just for features, the streams just always exist as moving development targets

#

can't remember where i saw that though, a presentation years ago

iron cave
#

Do the release streams take a lot of space? I have many release streams.

#

I have to package the same project in several ways.

woven sluice
#

i would swear task streams ARE supposed to work as deltas though, like i'm super confused, maybe it's a setting i did wrong...

iron cave
#

I reckon it's deltas, they just show up as regular files in the depot

merry verge
#

Task streams don't duplicate the whole branch

iron cave
#

The depot size doesn't seem to have increased after adding and populating the Task stream.. so I think they're just deltas

merry verge
#

They only contain the files that were modified in the task stream.

woven sluice
#

my new task stream is duplicating the full mainline right now as i speak, and there's no cancel so i have to wait while it copies 40 GB 🙃 but i think there's a "branch files" option when you create it that maybe i had on and need to have off

merry verge
#

Yeah that's likely why

#

dev/mainline/release streams are heavy (full copies), task are light (only modified files), virtual aren't real anyway so they don't count.

iron cave
#

This makes even less sense because how do you even work in task stream without branching files.

woven sluice
#

not entirely useless, as it lets you play this menacing accidental unexpected game of chicken as you stare at your little VPS's disk space

#

well you can branch individual files, the option probably brute branches all files

#

i am unsure what practical use turning this option on would have lol... "i would like a lightweight stream in which i intend to modify every file in my project" lol

merry verge
#

I have no clue why that populate option exists for task streams or at least why it isn't hidden away.

iron cave
#

The branch option is awesome for creating streams they just get autopopulated.

#

I suppose task streams would need this off and individual files branched.. that's very awkward to do.

merry verge
#

I have no clue how safe that'd be lol

merry verge
#

Or maybe that's too sane of a workflow for perforce.

iron cave
#

To do it automatically you'd have to branch all the files first to work on them.. or branch single files to work on them which is really awkward and probably incorrect.

woven sluice
#

damn, this falls so perfectly right on the line between "i want to try this and our team is running slow right now so let's see what happens" and "am i really going to be this stupid?"

iron cave
#

I thought they were more like Virtual streams but with the ability to keep copies of edited files.

merry verge
#

Oh, no, I might be wrong. They might expect you to populate a subset of the parent branch. Ugh.

iron cave
#

Yeah that's awkward to do. How do you import the rest of it or do they expect us to do all the work on 2 blueprints without a project file.

merry verge
#

Hmm...

Branches and integrated files are stored in shadow tables that are removed when the task stream is deleted or unloaded.

#

So I guess you're expected to populate but then unload it later to clean up space

iron cave
#

Oh so it's a regular dev stream taking up sweet space and then you unload it okay this makes more sense.

merry verge
#

Yeah but it's still basically unusable for any large project lol

#

At best I guess it'd be good for a feature branch that you only need for a few months across the team or something

#

Not a replacement for branching for individual tasks

iron cave
#

Yeah can't just spin these for random experiments if they'll do a whole copy of the project.

#

is it possible to archive streams?

merry verge
#

That's what unloading is

iron cave
#

like previous releases?

merry verge
#

Unloading isn't the same as deleting/obliterating and is probably what you're thinking of

iron cave
#

I'm thinking of how you can archive files for older files. can we do this for older streams.. then I can put all the release streams in archives to save space.. I have too many release streams is the issue as my project has several build configurations

#

This unload seems to be for clients.

merry verge
#

It's for multiple things

#

I think you could in theory unload a stream and then backup the file storage to wherever you want

iron cave
#

This seems to be for the client workspaces not the streams. I do not know if that hack would work. Kind of a hassle to recreate

merry verge
#

It's for streams

iron cave
#

There must be some backup for the streams otherwise all the previous releases will be taking up too much space.

merry verge
#

Or well, it's for task streams. Not sure about other types.

iron cave
#

I think the regular archive option might work for this.

woven sluice
#

alright 40 minutes in and it's like 1/4 done, CHICKEN TIME

merry verge
#

Ah yeah. You could archive all revisions from a specific stream I guess

iron cave
#

well archive is a depot too so that's kind of useless for saving space lol

merry verge
#

Depots are easier to backup and move individually iirc

#

So you could archive and then move the depot into long term storage somewhere else

merry verge
#

So probably just zip your branch and then delete it

#

And later you can unzip to restore it to a "new" branch I guess

iron cave
#

This zip seems to be hte best way if it can zip streams.

merry verge
#

Yeah idk, would need testing.

iron cave
#

My new depot is really small but I've made many branches of all types and used the autobranch checkbox. Depot only has the main folder. Adding and populating branches doesn't change depot size. Confused!

merry verge
#

Now that I think about it... I feel like I tested branch operations (as in p4 branch, not creating a stream) and they didn't take up space until the file was modified.

#

Which makes sense, a branch should be an entry in the perforce database with a pointer to the original revision

#

Not a whole new file. So idk

#

Perforce is weird

#

I think my conclusion is that hojo's server is haunted.

iron cave
#

I'm looking at this unchanged depot size after making 10 streams and then at Homer in the flood.. contradiction. How did he manage to edit 40GB of files.

merry verge
#

Somehow one of the options is causing real copies rather than branches I guess

iron cave
#

I think the haunted theory seems correct.. Maybe i'ts in how it's setup.. before i was creating the streams and then uploading to each from the workspace which probably does create copies.

merry verge
#

Yeah adding files yourself makes new files. Branching just makes a pointer back to the original so it doesn't take up space.

iron cave
#

I think this is the correct way to do it.

merry verge
#

In most cases, p4 integrate performs a lazy copy. The contents of the file are not duplicated on the server because the integration record contains sufficient information to reproduce the file.
So yeah, no clue what's going on with hojo

iron cave
#

I think if we start with an empty project Main and branch to Dev.. then Dev doesn't take any space. As we develop we add assets which all get copied up / duplicated so all streams grow huge.

#

Then the way to do it would be to do a temporary Dev stream for the dev until most assets are added.. then recreate the entire repository from scratch using the main to branch without duplication.

#

A seperate Perforce to get to alpha and then switching at the beta stage when most assets and files are already there. Probably easiest to dump the history and start from scratch.

woven sluice
#

i mean, why though

iron cave
#

Then theoretically the streams do not take any extra space.

woven sluice
#

if you're going to do that, just merge into mainline and delete the dev stream when you don't want it anymore

iron cave
#

Yeah you can do that too ofcourse.. i just do not see a point to keeping all that history

woven sluice
#

(also, the fact that we're even talking about doing something that is practically impossible, merging major development streams, is funny)

iron cave
#

assuming the game is fairly stable by that stage then you can start fresh to do releases and final build

#

nah just start from scratch using the main stream to upload a new main

#

it's awkward but the only way to get the benefits of the stream pointers

woven sluice
#

but then if you're not going to dev on both mainline and dev, why would you use a separate dev stream lol

iron cave
#

mainline isn't for dev it's just to join the sources / have a stable copy for releases

#

i was even gonna do a "stable" dev stream so taht i can mess around in dev

#

infact I will do this because space is not an issue

#

You had me worried because this duplication changes everything. You can't really get the full benefit of Streams without making streams.

#

Destroying the old dev streams is the only way to achieve this optimisation it seems.

woven sluice
#

if you're not going to work at all in mainline and just merge into it, and run some automated CI processes when you do so, yeah that sort of thing can be a valid setup

iron cave
#

I think you've had to adjust your workflow due to this duplication thing but You can totally just start with new streams to avoid this once you have most your assets and files.

#

Then you can make as many streams as you like without any repercussions and reap the real benefits of having multiple versions to play around with.. this is the whole point of it

woven sluice
#

you talk as if it's possible and practical to make substantial branches of UE projects... it's not

iron cave
#

Try this locally with your project

#

create a new depot and add your current main workspace to new main and make many streams and see the size of the depot.. then you'll see what i'm saying

#

You won't have to do this 40GB copy ever again.

woven sluice
#

what

#

if you make a dev stream, it copies the stream... that's all there is to it. there's no getting away from that

iron cave
#

it doesn't.

#

tick the branch checkbox.

#

This is my entire depot folder and I have branched to 20 Streams in this depot. They do not even have any folders so zero files duplicated.

woven sluice
#

yeah, i guess you & siliex are just saying that the way i'm/my server is creating streams is abnormal, i'll play with it more next week when this copy finishes, thanks edboy

iron cave
#

Do it locally to try it out if you're doing this on an online server. Make streams and observe depot size. I haven't seen any increase in depot from stream creation.

#

It's just an empty third person template c++ project and project size is around 3.5 GB and DEPOT size is only 335MB and it contains 20 STREAMS and the depot shows files are in each stream but they do not even have folders in the depot.. Zero Duplication.

#

Okay so there isn't any need to destroy streams if it's setup properly but any assets added through Dev are still Duplicated so destroying the Dev streams before beta is still a risky but good idea.

woven sluice
#

Ok, Turning off the "branch files" option results in an instant stream creation as would be desired for transient streams. Don't have time to play with it more though

iron cave
#

I think the new workspace only creates a duplicate on the client for that workspace so ticking this shouldn't do duplicates either. It should work as long as the branch tickbox is checked. The best way seems to be to just create a main to upload the project to first and then do branches from this while having the branch checkbox ticked. Populating the files from dev to main does duplicate them which many people do, and we all have to do during development but this defeats the purpose, which is why I'm considering destroying dev streams or the depot before alpha. The only issue is that's probably the worst time to obliterate dev streams.

woven sluice
#

I wonder if my server is just so old that the ability for branching to work without full copies is just futuristic to it lol

iron cave
#

I think you just started by populating the dev stream and are in this mess because of this but then it doesn't make sense that new branches always duplicate, so your server maybe haunted afterall.

#

I just did it with the new workspace option ticked and it only creates a local workspace copy but doesn't do duplicates on the depot either. It's pretty hard to mess this up. Just tick branch files.

#

Well if you started with an empty project the main and dev will be mostly duplicated anyways but I'm uploading a bigger project so I will do it from the main.

iron cave
#

Oh I just thought of another workflow to achieve Zero Duplication.. the initial project in just main and task streams without any dev streams.. then at a semi complete stage just delete task streams and branch the main to a dev stream and use normally. This doesn't require removing any dev streams to get rid of duplicates.

#

The size is mainly an issue for assets so the proper way is to probably import assets from another stream to avoid having to worry about stream sizes but the above ways should also work.

iron cave
#

Perforce compresses depots. I just added a 19.5 GB project and Depot size is only 3.5 GB. I think these stream optimizations are overkill for smaller projects but I'll do it anyways now that I got this far.

woven sluice
#

Compression is a server side setting and can slow down the server noticeably if it doesn't have a good CPU

stable tendon
stable tendon
#

As for the server disk size, yeah, it'll grow. My usual suggestion is to have 2.5x the hard disk space available. So if you're project is 100gb, go to 250gb. Storage is "cheap" in comparison to other costs.

iron cave
#

I'm checking out stream components but I'm putting my base code in a component but it only seems to map the multiple folders component contents to a single folder. I might have to do this the other way around.

woven sluice
#

The big ??? there last night was that my server (which is probably at least a few years old) seems to always duplicate files upon creation of any streams if I enable the "branch files upon stream creation" (not exact name) option whereas the others are saying that branched files do not/should not cause any noticeable depot size growth/do not actually duplicate any data on the server until you actually modify the file locally. I'll update our server one of these days.

stable tendon
#

I'll try to reproduce later @woven sluice . What version are you on?

woven sluice
#

Not sure (don't have access atm) but wouldn't be surprised if it's 2019 or older. Not really worth asking you to repro, though I might be curious to just hear a "yeah that changed" or "that's not how it's supposed to work" so I know whether to expect it or not with a newer server and whether or not to go on a witch hunt for it 😄

stable tendon
#

Haha, gotta do a diff check! 2018-2023 has changed quite a bit 😆

iron cave
#

@woven sluice honestly you maybe better off starting from scratch. Why do you need years old code anyways lol.

#

Unless you made some mistake in 2019 that you have to rollback your whole project to.

woven sluice
#

Doing any major upgrade/change is just "work" which is a hurdle for a tiny indy team HaroldHaha

stable tendon
#

If it's 2019.2 or later, it's just a stop, switch binaries and start 😉

woven sluice
#

oh wow, 2016, man i hate being a somewhat-new dad

#

"pretty sure i installed that yesterday"

merry verge
#

i didn't expect my joke about your server being haunted to mean so-old-it's-undead

woven sluice
#

my server's got that old man strength keeping it going, not sure if i want to risk giving that up now

lofty lark
#

Anyone have any experience with repository setup for projects that include Plugins? I'm working on a new Plugin and am trying to figure out how to handle the repository configuration. I'm currently thinking that using Git Submodules would be a very nice approach as it would allow me to tie various pieces together with specific commits. Here is what I'm currently thinking:

  • Main Project Repository - This is a "super"-repository that consists of a README and submodules (listed below).
    • UnrealEngine - A submodule. This is a fork of the EpicGames/UnrealEngine GitHub repository.
    • Development Project - A submodule. This is an Unreal "game" project that is used to test Plugin features.
      • Plugin Project - A submodule. This is a submodule of the development project so that the Plugin source code can have its own history stream that is separate from anything related to test maps/assets.

There are several different possible variations of this hierarchy, of course. I'd be grateful if anyone here has any specific thoughts about this...

runic summit
#

I have a large change list, and I only want to revert a couple of those files - what is the best practice for doing so? Should I just force pull some previous revisions and save the older (but corrected) files as a new change list?

runic summit
#

I'm assuming this warning will go away - they are just trying to check that I know I am doing - (basically changing it out of order)

teal bone
#

Do you want to revert them to a specific CL from the past?

runic summit
teal bone
#

Hmm. You can probably revert back to that file. Just check the file history?

runic summit
#

crap, now it won't even let me force "get revision" and specify the number. I've checked them all out and then I try to get the specified revision and it tells me this -

#

So what should I do?

teal bone
#

Erm.

#

I think it's because you haven't updated your local repo. I'm not sure with binaries tbh. I only do code. 😦

#

I would just merge with the latest and make any changes I want.

#

Have you tried grabbing latest and resolving it?

runic summit
#

If I grab the latest, I don't see a way to resolve it

#

see, it won't let me resolve them, they are the newest one and I have checked them out

runic summit
teal bone
#

As I say, this works for me in code, I don't know abotu binary assets. I'd right click on the folder in my workspace and do 'get latest'. Then I would right click on the file in the CL and do 'Resolve'. It should go from a yellow triangle to a red question mark once you have the latest.

runic summit
teal bone
#

Yes?

#

But you still need to get the latest version to say "yes, I've seen the latest and I'm sure this is what I want"

runic summit
#

Very obtuse, I'm getting there though

teal bone
#

You can't overwrite something when you don't know what the latest version is

runic summit
#

I want the #1 revision but it doesn't list it here

teal bone
#

Then version 1 is gone

#

Maybe it only keeps a limited history with binary files.

runic summit
#

no it's still there, I never submitted anything

teal bone
#

Do it 1 file at a time and you might get a different, more clear window.

runic summit
#

so it's still there

teal bone
#

That doesn't mean it's still there. That just means it know it existed at some point.

#

Like I say, try 1 file at a time. You get a different window.

#

I'm not saying you hvae to do that for every file, but it will make the options clearer the first time.

runic summit
#

I'll try 1, but I know they are still in the depot because look - if I get that revision, it changes their number appropriately

#

Okay I'll try that

teal bone
#

It's not changing to the red ? though. Shrug

runic summit
#

so the process is ?
1 - Get older revision.
2. Check out
3. Get newest revision
4. attempt resolve?

#

wtf

teal bone
#

Erm, no?

runic summit
#

One at a time -

#

It won't let me hit resolve

#

This process is so unclear JFC perforce

teal bone
#

I'm pretty sure it would be a different process to replace the latest file with an older one.

#

Like looking at the file history and rolling back or something.

runic summit
#

I'm going to basically need to copy them all out, revert them, then check them out, and copy the correct ones back then and submit it as a new changelist

teal bone
#

That would be the "I don't know how to do it" workaround, yeah.

runic summit
#

I know they are good, when I use "get revision #1" then open the editor, it is fine

#

hm, I wonder if I can take care of this from in the editor

teal bone
#

"To rollback a file or folder to a previous revision using P4V, context click on the file or folder and select the Rollback menu option. From the rollback dialog, configure the rollback options and identify the changelist where you want the rollback saved."

runic summit
#

Why wouldn't I do this - does this do the ENTIRE revision, or just the one for that selected file?

teal bone
#

Good question.

#

Why not do what it actually says you're meant to, though?

runic summit
#

No Idea, I appreciate the help though

woven sluice
#

undo changes being the menu entry you get when you right click on a file in the workspace view on the left

#

and the option to undo changes probably won't even be there if the file is in a historic state

#

i don't know if you're going back e.g. 8 revisions, if you need to undo changes each revision or if you can undo changes back that many in one act. i would presume the dialog will give you options

merry verge
#

Sync back to revision N/checkout/sync latest/resolve should work and I've used it in the past. Can't speak for what's going wrong there.

woven sluice
#

ah yeah, i guess you just have to brute force it past a couple warnings

#

also it is possible that the "undo changes" i mentioned is a prehistoric term and rollback changes is current lol

runic summit
#

I basically had to get the revision I wanted, copy the files from windows explorer then, check out, get the latest revision (so perforce was happy) then copy back over the files. Worked but I'm not sure why the resolve didn't work /shrug

stable tendon
#

Blake, could this have worked? Checked out that file, clicked file history, right clicked on the version you want and say "Get revision", and then submit like normal?

iron cave
#

I have a bug/setting? I excluded a folder from a stream view which excludes it entirely from the depot but the workspace still shows an empty folder for some reason?

silver token
iron cave
#

It's annoying having all those empty folders in the workspace. I think it maybe due to Windows 11 permissions. If I create a virtual Stream and "exclude ..." I still see all the empty folders for my project. 🤦

pastel shuttle
#

hey i just setup my project with perforce recently and added the whole project to my perforce server.
I know have the problem that i get an error when packaging and I think its due to some files beeing read only bc of perforce, how would i best go about fixing this? should i just try to mark the specific folders as read & write ?

#

okay fixed it by marking config, content, intermeditate and saved folders & subfolders/files as not read only in windows explorer options. If anyone needs it in the future

silver token
pastel shuttle
#

you're 100% right i saw the unreal docs relating perforce after setting it up xD

dense ginkgo
#

hi, git lfs made me lose a day's worth of work so im going to switch to perforce

#

idk where to start

#

there's so many things like helixcore, hansoft

#

im a bit lost

#

anyone can give me a quick pointer on what i should be looking at coming from git?

#

looks like helix core is like the...basic version control?

dense ginkgo
#

is perforce for 1 person with AWS not free? it's going to be just me and 2 workspaces using it (i go to a different workspace during the day)
why does this Enhanced Studio Pack thing tell me the estimated cost is 400+ USD when i go to create the stack?

iron cave
quaint obsidian
dense ginkgo
#

i already deleted all of it and re-did it at my home workstation but thanks

#

LFS was throwing Client Error messages when I tried to push, and missing LFS files

#

i even stashed my changes, then tried to apply them later but certain LFS files were missing so I couldn't even restore my stashed changes (which was the reason for fully destroying my work for that day)

#

i read if i basically had gone home and done git lfs push --all then went back to my work station and pulled the lfs files, it could maaaybe work

#

but it was a weekend so i wouldnt be back until monday and the prospect of conflicts and not having that work over the weekend was too strong that i rather have gone home and re-did the work which is what i did.

#

but yeah basically i couldnt push my changes due to missing LFS files

#

even setting the lfsconfig setting to allow incomplete push didnt work =/

#

i think it occured because i enabled source control in-editor and it froze/crashed while trying to apply source control edits

#

i only enabled that because when i deleted actors, then pulled on another work station and loaded up, those deleted actors were back again. (world partition bug?)

#

with it enabled, that bug didn't occur

pine sierra
#

I think this is probably a good place to ask.
And please forgive me if questions sounds silly, just need to confirm a few things before I go experimenting.

Do yo use github or gitlab for unreal project source control?
If so do you also commit assets, such as meshes, animation and sounds to the repository?
Do you make use of IFPs for cold storage (or possibly in conjunction with gitlab to save on repos size)?

quaint obsidian
stable tendon
#

Hey @dense ginkgo and @iron cave ! I helped build out the Enhanced Studio Pack (ESP) at Perforce. It's a collection of best practices to deploy a ready to go Perforce Helix Core onto AWS! You can lower the instance type and disk size down so it's a smaller cost. I think out of the box it's about $350 USD, but those are the defaults.

#

I can help you on Monday (I'm EST) if you drop me a DM. I can help explain everything :).

eternal mountain
# stable tendon Hey <@350186292631437322> and <@469382266137739273> ! I helped build out the Enh...

good day Ryan, today I do come to you with a question / request:

is there a way to get special characters to show in p4 changelist descriptions? " ° " is not showing up and neither (and less importantly so...) are emojis. me and my team do love our emojis though, it would be awesome if there was a way to have them show in p4.
as you might be able to tell from the pressing nature of this request, apart from this very little (non)issue we are still very happy with the product 😁

vague whale
#

i keep forgetting that perforce doesn't like you deleting files unless you do it via its tools

woven sluice
vague whale
woven sluice
#

it will "work" fine, it just won't capture those untracked changes...

vague whale
#

it was just throwing errors

woven sluice
#

then you didn't describe everything that you did

kind nacelle
#

Hey. Working on a game (who woulda thought in an Unreal Discord lol), my friend's pulled a level which looks one way on mine but not that way on his when he's pulled it

remote bobcat
#

For UGS, is the recommend approach to store project code and files within the engine as a subdirectory? Or can they be two completely unrelated directories?

fair patio
#

Hi guys, in theory : is it possible with perforce to proceed to a diff before merge a Blueprint ( changed by 2 users )
Or is it impossible ? ( because checkout is needed )

cyan jay
cyan jay
#

you can always diff between previous versions without checkout

remote bobcat
pulsar parcel
#

yes, which is what UGS expects

#

/<root> should contain the batch files like GenerateProjectFiles.bat

remote bobcat
pulsar parcel
#

It expects what Epic refers to either as a native project or a non-foreign project. Nothing else is supported

kind nacelle
#

Not sure what I've gotten myself into but I'm trying to push some changes and Github desktop doesn't like it. It compresses, and starts writing but never finishes and returns with this when it's like 90% finished

remote bobcat
pulsar parcel
#

yes

remote bobcat
#

Good to know. Thank you

pulsar parcel
#

the same way it was done in the Unreal Tournament repo back in the day

remote bobcat
#

Just seems odd to have the engine and project files in the same stream

#

Maybe I can just use stream imports

pulsar parcel
#

it's odder to me to have it any other way after using native builds for so longer

remote bobcat
#

Fair enough

#

Nice to have engine changlists seperate from project ones

#

But makes sense in terms of having all the code in one spot

pulsar parcel
#

I'm not sure how you even did that?#

pulsar parcel
#

also are you using classic depots for some reason? seeing as the dir is "depot"?

#

a stream is effectively a branch, yeah

#

I think they just avoided the term to avoid a conflict with existing p4 terminology

pulsar parcel
#

What?

#

If you see a main directory and then the name of your new stream then your workspace setup is not correct

pulsar parcel
#

And the problem is? Also it didn't "insist", you can switch your existing workspace to it or create a new workspace at a later time

rare notch
# stable tendon Here's a blog to help explain a few ESP options https://www.perforce.com/blog/vc...

Hi Ryan! I have a question for you. I used the basic DigitalOcean set up with ESP. The admin guide I followed from Perforce (here: https://help.perforce.com/helix-core/cloud-deployment/images/Content/Cloud-Deployment/digitalocean-deployment.html) says: " Select a plan. The storage amount is only for metadata and logs. You will add a separate drive for your depot. You can change the plan to scale up or down anytime."

But then it doesn't go into any detail about how to set up this separate drive.

Is this DigitalOcean's block storage? Do I need to set that up before setting up the stream depot?

pulsar parcel
#

Riderlink

pulsar parcel
#

you should not version the riderlink plugin

runic summit
#

I'm confused - I need to delete a folder and ensure the source control registers that - I thought if I checked out the folder, then deleted it in explorer, then refreshed in perforce, it would see they they are deleted and flag them as a "push deletion" to the depot - am I missing something?

pulsar parcel
#

I'm not sure why you didn't delete from p4v or the Unreal editor. a checkout isn't a delete

runic summit
pulsar parcel
#

???

#

delete from p4v runs the p4 delete command which marks them as deleted which you then submit

#

in addition, it actually removes the files within the directory rather than the directory itself. you'll want the rmdir flag on all your workspaces if you want it to cleanup empty directories as you update

runic summit
teal bone
#

A reconcile would register them as deleted, but, yeah, just delete from inside p4v.

runic summit
runic summit
#

Ugh, I had to format my computer - I'm not sure how this asset was checked out by that machine but I need to tell Perforce that that user/machine doesn't exist anymore

#

How do I see when the file was checked out by what user - I can see the checkout name (I recognize the desktop name is changed because I got a new motherboard)

#

Like I'm logged in as the same user - but it's technically a different workspace - I have no idea how it didn't get pushed to the server before that but it's in limbo now

#

so how do I "uncheck it out " via p4 admin?

merry verge
runic summit
#

basically I'm looking for a ```"uncheck out file and revert to depot's more recent revision"

runic summit
#

gah, where is the damn terminal in p4v

merry verge
#

p4v doesn't have a terminal

runic summit
#

ugh

#

there's no way to do this in the GUI?

#

I can't delete the workspace because i don't believe it exists anymore

merry verge
runic summit
#

that computer machine there doesn't exist anymore

merry verge
#

read

#

the

#

article

runic summit
#

How am I supposed to switch to a workspace that doesn't exist - it always says it doesn't exist when I try to switch to it

merry verge
#

you skipped step 1

#

read the article

#

the first step is not switching to the workspace

runic summit
merry verge
#

the first step is not switching to the workspace

runic summit
merry verge
#

edit != switch

runic summit
#

I don't know how to do that without switching it

merry verge
#

right click the workspace > view > edit

runic summit
#

comes up when i try to edit it

#

Hey, why can't I just be a firefighter or a paramedic, who is a designer...why do I have to learn ALL of this stuff when I'm not qualified for it

teal bone
#

Btw, if you have a file checked out, do you even need to edit the workspace? Can't you just get the cl and remove the file?

runic summit
#

it remains checked out still

merry verge
#

you can forcefully revert other workspace's CLs from command line, yes. Though if the workspace is gone it's better to just delete the workspace anyway.

teal bone
#

This may be me thinking too simplistically, but have you tried changing your computer name to what it's saying should be the host and rebooting?

merry verge
#

it would be simpler to just use the command line...

teal bone
#

It would

runic summit
#

do I need to do that from p4a right?

merry verge
#

p4a doesn't do anything around workspaces

runic summit
#

I see that now

merry verge
#

you can also try just deleting the workspace from p4v

#

but I don't remember if it'll let you with existing CLs

runic summit
merry verge
#

and if I remember correctly there's no force option in p4v

#

open cmd

set P4PORT=your.server.here:1666
p4 login
p4 client -d -f YOUR-WORKSPACE-HERE
#

and make sure YOUR-WORKSPACE-HERE is actually the one you want to delete, not the one you're currently using

runic summit
teal bone
#

Lol

runic summit
#

let's see what happens in p4v now

#

ugh, THANK YOU

#

I could have done a workaround and just made a new file but I wanted to learn how to manage this in case I need to in the future

#

now, uh, do you want to help me with packaging errors because they, uh, are hurting my source control...somehow

pulsar parcel
#

I'm not sure of the correlation but post the errors

runic summit
#

about 10-15 errors that are like this

#

I got to the asset in question and it compiles - when I validate the asset and its dependencies, it succeeds - and the widget that it is reference also passes these validation checks

pulsar parcel
#

Did you resave it?

runic summit
#

yep, i save all of them and it does that

#

probably have saved it a bunch of times

#

i've tried fixing up redirectors too

pulsar parcel
#

What does it say when you cook via UFE or the BuildCookRun command

#

Because I'm not sure that is packaging related

runic summit
#

I basically made a copy of the problametic structure then with through the asset and deleted all references too it

#

but it's like they are baked into the blueprint

pulsar parcel
#

As if we needed more reasons to not use Blueprint structs

runic summit
#

it's not just that

#

and this was fine for YEARS

#

Why doesn't it SAVE???? it compiles fine - do I need to deliete intermediate maybe?

rare notch
#

I have a volume mounted to my droplet but I don't see the updated storage space in P4Admin. Do I have to somehow tell Perforce to use my volume as p4root? I think I read that somewhere

runic summit
#

What do you do with "can't find the specified file" error when submitting but you can clearly see the file both in windows explorer and in the content browser ???

stable tendon
prisma kindle
#

hello, is anyone's plastic scm workspace just randomly removing files locally lately?

#

specifically after a commit?

#

everything's been kinda f***** since the file locks update 😮‍💨

undone jolt
#

Hey, I have a problem where Unreal doesn't mark files for delete in Perforce :/ Adding and modifying is added to checkout properly, but deletion is not. I am doing Force Delete on Unreal 5.2.1. Did anyone encounter similar problem, or know how to fix this?

wheat mica
#

Hi, I wonder if with perforce we could, like with github, switch branch to work on another feature. I know perforce streams don't really work the same way. But I would like to know if I'm forced to create another workspace with the new stream to work on a new feature

cyan jay
wheat mica
cyan jay
#

Trunk based is common even in AAA

wheat mica
#

Ok but it breaks my heart

cyan jay
#

Why?

woven sluice
#

Some ideals just... aren't all that important in real life

cyan jay
#

I don't think it's really a case of being "behind the rest of the industry" (what industry?) just that gamedev has unique challenges that are better addressed with different solutions. Anyway, this is going off topic 🙂

stable tendon
fast wave
#

I need some help regarding github

#

My programmer has this issue regarding our project in unreal

#

@trail cedar

quaint obsidian
#

if it's LFS it shouldn't ever have that error

#

it seems like those were not in LFS

trail cedar
#

So, I thought LFS was only required if you have files larger than 100mb?

#

(Like, individual files >100mb each)

fast wave
#

So LFS works with folders too?

fast wave
#

Because if so, then woah

teal bone
#

I'd use LFS on any asset over a mb

#

Or just on all assets

limpid turtle
#

I couldn't even commit at all until I installed LFS, I got an error on my initial commit, and I'm doing a low poly game so nothing is even large

fast wave
#

that makes sense

#

so basically just use LFS no matter what

neon nova
#

Having a similar issue with Github and Azure dev ops (using Git-LFS) for a custom engine build, trying to push the UE source into a private repo is proving to be super difficult!

vague whale
#

I need to move my p4v server to a different service, does anyone know of any guides to do this?

mighty light
#

or if you use p4s in a docker container you can literally just move the config directory to a new device and it wont even knew

outer kiln
#

ugh, I just did svn checkout from repo, it worked, but trying to start SC from ue5.1.1, and it says , its not a working directory,and indeed, its the project directory, how do tell UE via subv, that that is NOT the working directory :+_lol

#

gez

fast wave
#

So me and my team decided to start with perforce instead

outer kiln
#

why curious

#

svn here

fast wave
#

svn?

neon nova
# fast wave svn?

Subversion, its another type of source control (SVN, Git, Perforce etc)

fast wave
#

ahhh

#

i mostly use whatever the team used which was often github

outer kiln
#

cool

undone jolt
#

I have a problem with Perforce in Unreal. If file isn't added to changelist, but is on the repository and I remove it in workspace through Unreal Editor, it does Delete asset, does p4fstat, but doesn't even try to p4 delete.
If file is already added to changelist, it works as intended.

#

Here's what happens when I delete changed, checked out file

undone jolt
#

I fixed it by making a new stream, workspace and project

wheat mica
crisp gate
#

Should I ignore the Content\Developers folder?

delicate field
#

I want to start using perofrce but my team has more than 5 users. I know the free version is only up to 5 users, but theres 20 workspaces. is there a way for people to share user account but have their own workspaces?

frigid ginkgo
pulsar parcel
frigid ginkgo
pulsar parcel
#

depending on your jurisdiction, you can be audited for software piracy, and that is a EULA violation

vale basin
#

I'd dare say that advice isn't allowed in this server. Piracy, along with asset ripping etc isn't allowed. Circumventing user limits definitely falls in that category

cunning mantle
#

Honestly, if a big team using source control, you'd better pay for P4 or Plastic. If going for free, you may pick SVN or GitLFS2. The free tools are not that bad if not going to pay any for source control though.

pulsar parcel
#

ADO is probably the best free Git offering I've seen. 5 users free and no storage or bandwidth bills for LFS

#

Unlike Microsoft's other company GitHub

#

You pay per user after the 5, the first 5 remain free

teal wave
#

Hi! Do you guys use Level Streaming with Perforce? We've found that many actions in the editor result in checkout, locking out others. For example, sometimes people want to hide/show sub-levels (mostly for performance reasons), but this action triggers a checkout on the level asset since levels visibility stored in the map itself. Another problem is "global actors", for example navmesh. Whenever somebody opens sublevel Unreal recreates a new navmesh recast agent, this is in turn may modify navmesh actor stored on persistent level...
For now, we decided to use world partitionig and stream our "levels" via data-layers, while it works it feels a bit hacky.
Feels like both approaches have lots of downside, is that your experience aswell?

dire basalt
#

Does anyone know why this kind of stuff happens? Link Moved from 'self' -> 'self'
Unreal seems to make a 'change' to the blueprint, even if I took 0 action on it. Which causes source control/diff issues that I want to avoid.

I never touched it, and these kinds of 'changes' seem to happen a lot whenever I open a blueprint. Its inconsistent so I can't definitely repro it.

long hull
wide raven
mighty light
#

is there a way to force p4v to remove folders from my workspace that were removed in changelists? my local copy is full of empty folders because p4v dumb

#

ah i think i found it

stable tendon
# wheat mica Hello, multiple stream could work. Currently our code is on git and assets on pe...

Well, we have Helix4Git, which you could have your git repo mirrored into a p4 depot. There's always scripting available. Lastly, maybe you could use a virtual stream?

https://www.perforce.com/products/helix4git
https://www.perforce.com/manuals/p4v/Content/P4V/streams.virtual.html

wheat mica
primal lichen
#

Hello I have been using perforce completely fine hosting on AWS and randomly in the middle of working got the following error: trying to connect to my p4 server: SSL connect to ssl:xx.xxx.xxx.xxx:1666 failed . Remove SSL protocol prefix from P4PORT or fix the TLS settings. (x's used to hide) my address

pulsar parcel
primal lichen
#

yup, everything was working for the past 2 months, i'm looking at AWS and it says its running totally fine

#

like literally I made a push, and then 5 minutes later it disconnected for no reason and everything seems fine on AWS side

#

and I made a security group and correctly configured it like 2 months ago

pulsar parcel
#

Well what is your security group configuration? If you only allow port 1666 to a specific IP address then your IP address could've changed

primal lichen
pulsar parcel
#

Does it affect everyone or just you?

primal lichen
#

@pulsar parcel complete insanity, after not working for 20+ minutes, and having internet working and AWS saying everything was working, I randomly am now able to connect without issues

gloomy vigil
#

Hi. Is there a way to make unreal show a popup window or warning, whenever it loses connection to source control?

primal lichen
#

indeed I appreciate your responses

pulsar parcel
#

That would be hard to explain because the failure could've been anywhere

lyric obsidian
#

how to correctly make a repo of the project about 15gb on github?
I used these limits but it still timeout on writing object step
I am using github desktop and lfs

also used this to increase the limits
git config lfs.activitytimeout 256
git config --global http.lowSpeedLimit 10000
git config --global http.lowSpeedTime 60
#

it fails on 85% , having error the connection disconnected

lyric obsidian
#

solved

#

creating a new repo without selecting unreal engine as a git ignore template solved this issue

lyric obsidian
#

now they don't have a reason to cmplain about my internet speed 😄

hushed granite
#

Anyone has issues with his p4ignore file recently ? I don't know why, on my main computer, I keep setting p4ignore with p4set and it just doesn't work even after restart, it's still looking to push what's in Intermediates, Saved, etc... I'm thinking about just redoing a new workspace that's weird. It worked flawlessly and this issue appeared out of nowhere

stable tendon
hushed granite
# stable tendon What are the main (UE) parts of your p4ignore?

Hello Ryan, looks like you are a Perforce pro 😄
Here is a sample of what's inside :

Saved/
LocalBuilds/
*.csproj.*
.vs/*
*.pdb

# Engine intermediates
Engine/Intermediate/*
Intermediate/

# Intermediate folders for programs should not be checked in
Engine\Programs\*\Intermediate\*

# Intermediate folders created for various C# programs
Engine\Source\Programs\*\obj\*

# Ignore project-specific files
GAMEPROJECT/Build/Receipts/*
GAMEPROJECT/DerivedDataCache/*
GAMEPROJECT/Binaries/*-Shipping.*
GAMEPROJECT/Intermediate/*```
hushed granite
#

btw I updated P4V because of that issue : Rev. P4V/NTX64/2023.2/2467475

#

and I followed instruction here :

#

thanks for your help @stable tendon

stable tendon
#

NP, taking a look, I'm usually on a Mac

#

Do you have any errors? If the "Saved" folder is already checked in, it'll stay there. Any new content being submitted will get that error in the bottom of that screenshot.

lyric obsidian
#

can anyone assist me with this error?

Enumerating objects: 1357, done.
Counting objects: 100% (1357/1357), done.
Delta compression using up to 4 threads
Compressing objects: 100% (1218/1218), done.
remote: fatal: pack exceeds maximum allowed size (2.00 GiB)
fatal: sha1 file '<stdout>' write error: Broken pipe
error: remote unpack failed: index-pack failed
#

github only allow 2gb data for free users?

lyric obsidian
#

my project should not exceed 2gb?

pulsar parcel
#

Just use ADO for private repos

#

It doesn't have any weird LFS pricing

stable tendon
lyric obsidian
#

?

stable tendon
#

Class mates? Helix Core is free for educational institutions ;).

lyric obsidian
#

new to it, I thought github is a good choice and started with it

#
this solved the issue

#Custom Directories
!Content/
Content/Animations*
Content/Audio*
Content/Developers*
Content/LandscapeMountains*
Content/Marketplace*
Content/Meshes*
Content/Particles*
Content/StarterContent*
Content/VehicleVarietyPack*

so Only source related things is upoaded

pulsar parcel
lyric obsidian
visual tide
#

Every UE/github tutorial really glosses over the step connecting github desktop to UE besides "don't use the built in github option", I'm not sure what to do here. I think I have everything ready in github but I don't know if it's seeing my UE files. I just want to get source control swept under the rug so it's there when I need it lol. Git really annoys me.

rustic dagger
#

it might interest you

lyric obsidian
#

if add this to my gitignore, why it doesn't ignore this file

SurvivalGame.uproject
merry verge
#

because you've already staged or committed it - you must first remove it from the repo.
But why would you ever want to ignore the uproject file...?

lyric obsidian
merry verge
#

that's a horrible reason

#

the uproject is required for the project to build, don't ignore it.

lyric obsidian
#

contributors has different .uproject files

merry verge
#

that's not at all how you're meant to work with unreal

lyric obsidian
#

everytime they push, it changes and if I fetched it mine on local also changed

merry verge
#

why are you using different uproject files in the first place

lyric obsidian
#

and then

merry verge
#

...tell them to stop committing changes to the uproject that don't apply to everyone

#

or properly setup installed builds

lyric obsidian
merry verge
#

then tell them to stop committing the uproject file

#

or use the proper engine version...

#

people working on the same project should not be using different engine versions

lyric obsidian
merry verge
#

yes, that's asking for someone to be unable to work in the project

lyric obsidian
#

all right

merry verge
lyric obsidian
#

I will not disable it from my end right?

merry verge
#

you don't disable it on anyone's end

merry verge
#

you get everyone using the same engine version because mixing engine versions is outright not supported. You're going to end up with people who can't open some assets or crash at random or simply corrupt other assets.

lyric obsidian
#

gotcha, will request them to stop committing this file 🫠

woven sluice
fickle canopy
#

I am running perforce on a linux server hosted on digital ocean and need to increase the size of it beyond 300 gigs.

I added an additional block storage volume to my droplet but I wanted to see if there are perforce commands to either specify a new depot that should point to that new storage or specify that storage volume as another perforce file storage location?

#

looks like @rare notch had the same issue. @stable tendon do you have any documentation you can share on how to specify which filepath on linux is being used by perforce? Can it be more than one so I can use the digital ocean droplet SSD + block storage?

stable tendon
#

Absolutely can! I believe you can change the drive in P4Admin, let me grab a link...

fickle canopy
#

looks like it gives a path that can either be relative to the server root or a custom path which is not, so maybe I could create a new depot with the path that is the block mounted storage?

#

I'm not too big of a linux expert so I'm not sure what the default would be for where digital ocean puts their block storage

stable tendon
#

You can check out the drives when you connect to the DO droplet. Try df -h.

fickle canopy
#

@stable tendon Thank you for your help. I tried modifying by editing the storage location on the gui on P4A, not sure if that's the same result as the command line reference you gave. I have to take a break but I will try the command line way next time I am working.

It seems I am getting a permission error when it tries to upload files to the path I specified on the DO droplet (the new mounted block storage)

stable tendon
#

GL! Also, make sure the "perforce" user has access to that new mount.

rustic dagger
#

can someone tell me what this means?

pulsar parcel
rustic dagger
#

does that mean files can be pushed once an hour? does that mean that the time it takes to upload files shouldn't be over 1 hour? does it mean a single file cannot be uploaded once an hour?

#

so many possibilities

vale basin
vapid hatch
#

Anyone have any experience with using Unity Version Control (Plastic SCM) with unreal 5.2? We were using Perforce, but it would often not push work like expected, or just wipe changes altogether. I used git for years with Unity, absolutely no trouble, but not robust enough for Unreal. Information seems to be sparse and vague.

vale basin
pulsar parcel
#

especially "wipe changes altogether" wtf

vale basin
#

Yeah, that definitely sounds like a workflow or training issue

vapid hatch
#

Thanks BorisTSR and sswires. We’re definitely actively against perforce, even the level designers were having issues with it.

As far as proper usage, I’m usually the go to source control person and typically have very little trouble understanding the flow, I followed the directions and watched how tos and p4 simply has a mind of its own.

woven sluice
#

yep... that's PEBKAC alright... but what the hey, a person might as well try UVC, it'll always be hard to defend perforce amongst indies without any indie license options anyway

silent minnow
#

Hello, is anyone familiar with moving Perforce server from a machine to machine? I have moved one successfully, however for some reason the change lists for users are gray, i.e. they can't act upon them, even though the accounts are the same. Does anyone know what may causing this?

Answer: #source-control message

pulsar parcel