#source-control

1 messages Β· Page 6 of 1

teal bone
#

I had far too much fun making them lol.

fair monolith
#

I may have figured it out. Seems like if I map //UE5/Release-5.2/... I cannot then go back and blacklist all the folders I don't want.

#

However listing all the files in that directory individually, and then including only the subdirectories I want, seems to work.

#

That's annoying. Yay P4 I guess.

teal bone
#

If you do * instead of ... it only refers to the files in the directory

fair monolith
teal bone
#

Ya

fair monolith
#

Thanks. That's way better than listing out all the files. 🀣

teal bone
#

πŸ˜›

#

Np

#

I had this same issue so scoured the docs.

#

(for ghetto script!)

cyan jay
#

Depends on your team size, more than 5 members and perforce licensing will cost you.

There's not much in the way of cloud hosting for perforce, get your own VM with a 4tb ssd and you'll be fine.

Single, large, depot is the way to go. One per project.

tacit maple
merry isle
#

Has anyone had some experience with perforce's Helix DAM?
I see theres a 15 day free trial but I cant find anything about the pricing for the life of me.
Id rather know if its way outta the price range before even bothering but they dont seem to list anything at all about the pricing

cyan jay
cunning mantle
#

Plastic SCM has better branching feature than P4V stream (stream is just usable but not great).

#

You may imagine branching in Plastic SCM is just like git.

#

But I've only setup Plastic SCM for a team size like 10. No idea if it is going to hundreds.

pearl egret
#

Hi guys,
Have any of you setup P4 to only let someone commit changes if the swarm review got accepted?
I'm currently researching it and cannot find any info about that.
@edit
I've found that you can do it inside triggerss, but is there any built in way? πŸ€”

pearl egret
limpid obsidian
timid trellis
#

So I have had to use "Undo Changes" within Perforce for the first time, and have got a problem as it would appear that Perforce has not been adding all files to the Depot, causing me lots of issues when trying to revert.

I'm mainly now wondering why Perforce hasn't added all Content folder files into the Depot and if there is a way to actually do this as its rapidly looking like I need to start from scratch and don't want to be in the same scenario in future

fair monolith
#

Warning: This operation can take a very long time on large repos with slow Internet connections.

#

Once you see the list of changes, you can decide what to revert or what to submit to the server, etc.

swift lagoon
#

Has anyone tried building UnrealGameSync with 5.1? It doesn't build out of the box with VS2022 (Implicit conversion errors) and when we fix those we have unhandled exceptions parsing dates

tender haven
#

If I add someone to our Perforce and I want them to be able to get latest and edit some Blueprints but not have those changes updated in the depot, just saved on their local drive, what is the process? Instead of checking out files, do they just make them writeable?

fair monolith
tender haven
fair monolith
#

Then you'd want to DISCONNECT the Editor from Source Control, so it just lets the person edit anything/everything without prompting them about checking stuff out.

#

(They won't be able to diff stuff if you do that).

#

Then yes at the end, you can reconcile.

#

Note that binary assets CANNOT BE MERGED, so if someone else changed one of the binaries this person changed... You cannot merge.

tender haven
fair monolith
#

We all start out noob. I got lots of help from others here, I'm happy to pay it forward. πŸ‘

tender haven
swift lagoon
#

@fair monolith are you using UGS?

fair monolith
# swift lagoon <@147417058475245568> are you using UGS?

I haven't yet learned UGS.

I spent 2 weeks learning how to set up reusable, shareable dev depots in P4 so I'm enjoying being back in game coding and not thinking about infrastructure for a while. 🀣

I do plan to learn it soonish. It seems to be required to distribute binaries to artists on the team.

For now my team can all compile the binaries themselves.

swift lagoon
#

Yeah that's why we are trying to set it up, but we are running into issues

jolly fog
#

This is an extremely dumb question but how do I do a pull from my perforce depot to my workspace folder?

#

I deleted everything in my local folder and I want to download EVERYTHING from my depot, basically get a fresh copy from the server

#

If I do "refresh" or "get latest" it does nothing

jolly fog
#

anyone good with perforce here?

fair monolith
#

If that doesn't work, do p4 sync -k and when it completes then p4 sync

jolly fog
#

If I manually remove some files from the p4root folder how do I tell the server to sync to it?

#

If I do refresh on a client p4v it still shows the deleted files in the depot

jolly fog
#

is there a command for it from the server?

fair monolith
#

Google p4 reconcile

woven sluice
jolly fog
#

yeah I did that in the end

#

I still need to learn perforce

woven sluice
# jolly fog is there a command for it from the server?

and this one, reconcile offline work is also just a command you can use by right clicking on folder. it will compare your local workspace to the server and you can then add the changes to a change list. you can then either submit the changes (in case you were "working offline" and were actually doing permanent work) or you can revert the changes (if you want to make your workspace match the server again)

#

(the command will only compare stuff in that folder and subfolders - so you can reconcile smaller trees of your workspace only, if you think the rest is all clean)

fair monolith
#

I have issues. βœ…

dense ginkgo
#

heyyo. quick question. if someone on my repo (me on another computer) makes changes to a c++ class of a project, builds, tests, etc. then pushes to the repo, if i pull it should i have to build the project too to reflect the code changes?

#

my gut says yes but would just like confirmation lol

mighty light
dense ginkgo
#

okay, i don't.

mighty light
#

then you will have to build after pulling

dense ginkgo
#

thanks πŸ™‚

red geyser
#

Is there anyway that I can help you with?

swift lagoon
red geyser
#

2022 and not sure about .NET version

stiff tangle
#

Anyone know why switching branches in UE source results in a full 90min rebuild of the engine? Changes between the branches are minimal. Building the same changes without switching branches takes a minute max.

#

Using git with UE5.1 source

mighty light
#

Because switching branches changes the "last modified" time on your files which is what vs or UHT tracks. It thinks those files have changed so it recompiles everything

stiff tangle
#

Thanks @mighty light. Know any workarounds to avoid this? By the way, isn't the timestamp the same for the unchanged files between branches?

odd phoenix
#

Hello, I am implementing perforce in my project to work with a friend, how can I make him connect to my perforce and start using my version of the project? You already created the account and connected to Perforce

bright quarry
#

@fair monolith do you have a good tutorial on P4 you could recommend to a newbie girl just coming from Git? I'm so puzzled on streams, branches and relations to CLs and how they affect my file system and code. Git is easy to me: I have branches and can branch around making changes and cherry-pick by file from other branches. But P4 is so confusing for me.

fair monolith
# bright quarry <@147417058475245568> do you have a good tutorial on P4 you could recommend to a...

I feel your pain! 🀣

Try this: https://x157.github.io/Perforce/

IMO stay away from Engine depots, they're so incredibly large it's a pain all in itself. Practice with some relatively small new projects IMO.

#

Streams work very similarly to branches.

#

A very important key to using P4 is you must have good tools.

#

The default P4 tools are garbage, especially if you're used to Git for text SCM.

#

But if you have a nice IDE, this can be mitigated.

#

I use Rider for example. When I turn on Perforce mode in Rider, it's relatively similar to a Git dev experience.

#

Tools are ~ 80% as effective as Git tools, but at least in the ballpark.

#

Native P4 tools are really frustrating for source diff/merge/etc when coming from a Git background.

#

Read thru the procedures of doing the merging from Epic into my custom branch and then into a game branch.

#

It's all PowerShell, should be very easy to interpret even if you don't write PowerShell.

bright quarry
#

I use Rider too.

fair monolith
#

Good IDE helps with responsiveness too.

#

You configure it to never ask you about checking out, and just auto-checkout anything you modify.

#

Then you can look at your changelist, and it's always staying updated, similar to git status

#

Without this automation, p4 is soul crushing.

#

p4 reconcile is worth knowing well.

bright quarry
#

What is the basic unit of work for P4? Git commit matches a P4 CL, right?

fair monolith
#

Well not every CL gets committed, some get deleted, but otherwise yes.

#

Some CL are just temporary values. (Maybe because I'm a P4 noob 🀣)

bright quarry
#

So CL is a layer above commits, a non-permanent modification?

fair monolith
#

It's just like a commit. But you have to reserve a # for yourself to work in.

#

Sometimes you decide you don't actually need that #.

bright quarry
#

Oh Jesus...

fair monolith
#

But when you do, you submit it (same as commit)

bright quarry
#

So, it is in a sense a non-commitment commit? πŸ˜„

fair monolith
#

Sometimes it gets committed, sometimes no.

#

You choose.

bright quarry
#

I hate choices, frankly.

merry verge
#

pending CLs are just like staging stuff in git, except that you can have multiple places to stage things.
A submitted CL == git commit

bright quarry
#

The less choice I have, the less cognitive load I have to endure besides my actual work.

merry verge
#

and shelves are like git stashes

bright quarry
#

Nice remark, thank you.

#

That's a nice tutorial checklist there on the link. Will have to go and try using it. But these answers were immensely helpful about CLs, shelves and submits.

#

Is there a way to remember a comment in Discord, a library of sort like in Slack?

merry verge
#

I don't think discord has saved messages

#

you could just copy the link and save that somewhere

#

but at that point just write down the info lol

bright quarry
#

Will do. Does it happen by any chance some of you build engine from source?

merry verge
#

yes

odd phoenix
#

Why can't I connect to Perforce?}

mighty light
dense ginkgo
#

Hi, I'm trying to figure out how to merge a branch that's made changes to a blueprint (only minor changes like a static mesh component's mesh, and transform) into a branch which has also made changes (blueprint script). it will be a merge conflict

#

I'm understanding that you cannot diff blueprints?

fair monolith
dense ginkgo
#

ohh right. i think i meant diff->merge.
so, is it just easier to redo what i've done (or duplicate the file and merge that, then open both on the same branch and copy-paste changes etc)?

quaint galleon
#

Anyone got the newest gitignore I can have?

odd phoenix
#

Hello everyone, I recently hired DigitalOcean and I did the basic configurations, I was able to make the connections of the project to perforce and I was able to do some push

My question is, if my friend joins the project and I create a user in Perforce for him, how does he download the files to be able to work in real time with me? Thank you

lucid laurel
#

How can I setup something like this for Perforce?
I thought each folder would be a depot so I can restrict access to the UE4 depot for non programmers for example.
I always read "use streams" but with streams a Workspace can only be tied to one stream and not show multiple ones.

mighty light
teal bone
#

Is there a way to set up a worksspace stream view to exclude /Blah/X/ but include /Blah/X/Y/ ?

#

None of the documentation seems to give an example of it.

fair monolith
#

I show examples of streams for both project depots and engine depots.

fair monolith
teal bone
#

Nice!

fair monolith
#

In the client view, you can - the dir you don't want, then include the subdir you do want

teal bone
#

I wanna exclude restricted, but include virtualproduction inside it 😦

#

Ah ha!

teal bone
#

do I need the /... bit?

fair monolith
#

You may need to use the * instead of ...

teal bone
#

Null directory (//) not allowed in '-//UE5/Release-5.2/Engine/Restricted/*'.

fair monolith
#

Hmm... Null directory? Haven't seen that before.

teal bone
#

I'm assuming it's complaining about the // at the start.

fair monolith
#

Oh, maybe this is client view?

teal bone
#

Oh yes it is!

fair monolith
#

Try without the leading //UE5/Release-5.2/

teal bone
#

That worked, but I don't know what it's done!

#

Meh. It deleted everything in the change view box

#

I'll stick to my batch file system.

fair monolith
#

The documentation and examples for how to do advanced view things is definitely scarce.

teal bone
#

They are non existent.

fair monolith
#

Maybe it's the other field where you have to say exclude Dir/... ?

#

Or maybe that's just for streams

#

It's so amazing that they have like 4 different syntaxes for very similar things. πŸ‘πŸ˜‚

teal bone
#

It specifically says to use the //depot/folder syntax

fair monolith
#

When I get to the computer I'll look what I did and copy it

teal bone
#

Thanks!

#

Null directory (//) not allowed in '//UE5/Release-5.2/* //workspace/*'. this should work at least. 😦

fair monolith
#

The key was the *

teal bone
#

That isn't the box I can work with, though.

fair monolith
#

😦

teal bone
#

Where is that option?

#

I'm using this one.

fair monolith
#

This is in the "edit workspace" view

teal bone
#

Yeah, same. I don't have that box :/

mighty light
#

FWIW i also do not have such a text box

#

maybe xist using and old ass version of p4v

teal bone
#

I'm using the old ass version

mighty light
#

seems legit

teal bone
#

2021 dec 22

fair monolith
#

When I go to "Edit Workspace" it looks like this (the Basic tab):

#

And I can edit the Workspace Mappings

teal bone
#

I'm unable to change the workspace mappings.

#

It's read only

mighty light
teal bone
#

CLick the button on the far right.

#

Just above the workspace mappings.

fair monolith
#

You are looking at the folder UI. Click the white box next to the 3 blue boxes on the right.

mighty light
#

text view one?

teal bone
#

Yeah.

mighty light
#

read only

teal bone
#

You may have elevated permissions compared to me, Xist.

fair monolith
#

If so then someone made a mistake! 🀣

#

(It was probably me 🀣)

#

I didn't do anything special.

#

I did create my workspaces using command-line

teal bone
#

I'm not even using the same perforce server as you. 😦

#

Perforce hostname, at least.

teal bone
# mighty light

@fair monolith so do you have this same edit page, but "View" instead of "Change View" ?

fair monolith
#

I'm not using any special hostname, just the default UDN p4 for my region

teal bone
#

You know

#

It might be that the stream is called "Release-5.2 (Release-5.2)" and not just "Release-5.2"

#

I doubt it, though. That's surely just a label, rather than part of the path.

fair monolith
#

I literally have nothing at all special going on that I'm aware of

#

Maybe you can only set it up when you first create the workspace?

teal bone
#

Hmm maybe.

#

I will try!

fair monolith
#

Try to create a new workspace (command-line!) and set the View: in the text editor when it appears

teal bone
#

I'm not even really using the 5.2 one yet, so I'll just delete it and remake it.

#

The workspace mappigns fields is writeable when I make a new WS...

#

Oh

#

That worked without complaint.

#

The change view field is still blank after creating though.

fair monolith
#

Yeah I'm not sure what "Change View" does or is for...

#

I definitely configured my "View" when I created the WS.

#

In my case it was the difference between downloading 200 GB or 450 GB.

#

So I took a few extra minutes to figure it out before any download. 🀣

teal bone
#

How do you determine the size before updating?

#

Ah.

#

Actually Workspace Mappings is set to read only when I pick a stream.

#

Did you select a stream or do it manually?

fair monolith
#

It took 24+ hrs (I'm throttled to 50 Mbps from P4)

#

Also I got hate mail from my home ISP that month.

#

So I was determined not to download that much again. 🀣

teal bone
#

Not using a stream and setting the workspace mapping manually didn't help.

#

It's still downloading restrict stuff :/

fair monolith
#

What does your View: look like?

teal bone
#

(those last 2 lines are 1 line)

#

Oh fffs

#

Typod the restricted folder.

#

No Engine/

#

Omg it worked!

#

The key was not selecting a predefined stream.

#

That locks you into to a specific workspace mapping

#

You have to create your own mappings from scratch.

amber wing
#

hi, i have set a new client up on perforce and when they have got latest and built, they are getting a lot of blueprint errors.

does anyone know why? source control is connected, same ue4 version, project built and got latest.

odd phoenix
#

Hello everyone, I recently hired DigitalOcean and I did the basic configurations, I was able to make the connections of the project to perforce and I was able to do some push

My question is, if my friend joins the project and I create a user in Perforce for him, how does he download the files to be able to work in real time with me? Thank you

teal bone
#

What do you mean "in real time" ?

odd phoenix
teal bone
#

He'll need to download your project files, yes.

odd phoenix
#

I created a test user, but it doesn't give me the option to download

teal bone
#

I don't know anything about perforce admin, I'm afraid.

odd phoenix
#

Okay, no problem, thanks

fair monolith
cosmic knot
#

Setup a perforce server, with the p4ignore do i just drop into my local directory and then upload to the server for it to take effect? or is there any Command line or admin work that needs doing to tell it to use it?
FYI using digitalocean

fair monolith
cosmic knot
#

yeah just done! thank you

#

trying to sort out the p4 typemap

fair monolith
gleaming hill
# odd phoenix Hello everyone, I recently hired DigitalOcean and I did the basic configurations...

You typically create a workspace per PC and user from a development stream, then you get latest on that workspace ( this pulls changes into the workspace from the stream ), resolve any merge issues then submit your changes through changelists from the workspace, to the development stream ( similar to push )

You then synchronize development and feature streams with mainline, and vice verse, if changes wen into mainline, features streams need to merge them down, you can then get latest on each workspace, resolve merge issues etc.

These are pretty basic perforce functions, maybe you need to do a few tutorials I think. that would help.

teal bone
# fair monolith

FWIW this is what you get when viewing a workspace, not editing it.

odd phoenix
gleaming hill
# odd phoenix I think I understand where you're going, but I don't know how I can download the...

The user who created the workspace is not the only one that can pull/push, you can change the workspace , and you should def not share workspaces, 1 workspace per stream per user per PC, you should have 1 and your team members should each have 1 ( 1 user can have multiple workspaces if you have multiple PC's for example ), all pointing to the same stream, the workspace is not important, the stream is, that is where the files are on the server, the workspace is where your files are on your local PC

gleaming hill
# odd phoenix I think I understand where you're going, but I don't know how I can download the...

Right click on the stream, choose new workspace, fill in the details you want, like name, location, then select the root and choose 'Get Latest'. That will pull the latest changes from the stream into the workspace on the current device, do not share this workspace with someone else, that will break your workspace, and you will have to resync, workspaces are not meant to be shared.

Do not check the workspace out onto another device either, that will also break the workspace on the other place, when you issue a get latest on one, then on the other ( and using the same workspace )
the behavior becomes very undefined, because perforce thinks you already have latest, it does not check file MD5/timestamp etc.

#

You friend needs to do exactly the same, install perforce client, point to your server with their credentials, right click on the development stream ( dont work directly on mainline ) create a new workspace and 'Get Latest', then you both are poitning to the same stream, and working with the same code/project, there is no "download/zip" using perforce

lucid laurel
lucid laurel
lucid laurel
#

Can a p4ignore be set for all users at once? So not everybody needs to set their p4ignore themselves?

cyan jay
lucid laurel
#

well, I prepare a .bat file then that will do that for other users.

lucid laurel
#

Are .p4ignore used per workspace? or per "PC"

teal bone
#

@fair monolith so after all that, UGS doesn't work with Epic's p4 without using a specific stream and you can't submit CLs or do preflights either. Yay...

fair monolith
fair monolith
#

It's a future-me problem.

teal bone
#

Future you might need to setup a second workspace, point it at the same folder and subscribe to tbr stream to get ugs to work πŸ˜›

#

That would be very bad though.

fair monolith
teal bone
#

Exactly!

lucid laurel
fair monolith
lucid laurel
fair monolith
fair monolith
#

Like make a .p4ignore file in your home dir, then see if p4 ignores -v output changes.

#

I think if you do have a $HOME/.p4ignore it might set essentially global defaults for your user account.

lucid laurel
#

okay, I'm trying..

lucid laurel
# fair monolith Like make a `.p4ignore` file in your home dir, then see if `p4 ignores -v` outpu...

I'm playing around with my local p4 server. I think $home is not setuped.
When I set the p4ignore with the $home variable it doesn't work.

g:\Projects\PerforceTest>p4 set p4ignore=.p4ignore

g:\Projects\PerforceTest>p4 ignores -v
#FILE - defaults
#LINE 2:**/.p4root
.../.p4root/...
.../.p4root
#LINE 1:**/p4settings.txt
.../p4settings.txt
#FILE g:\Projects\PerforceTest\.p4ignore
#LINE 1:.test
g:/Projects/PerforceTest/.../.test/...
g:/Projects/PerforceTest/.test/...
g:/Projects/PerforceTest/.../.test
g:/Projects/PerforceTest/.test

g:\Projects\PerforceTest>p4 set p4ignore=$home/.p4ignore

g:\Projects\PerforceTest>p4 ignores -v
#FILE - defaults
#LINE 2:**/.p4root
.../.p4root/...
.../.p4root
#LINE 1:**/p4settings.txt
.../p4settings.txt

g:\Projects\PerforceTest>
fair monolith
# lucid laurel I'm playing around with my local p4 server. I think $home is not setuped. When I...

Interesting.

Looking at the docs it seems you may have to explicitly enable this via something like: ```powershell
$env:P4IGNORE = "`$home/.p4ignore;.p4ignore"

⭐⭐⭐  **Note the escaped ``$`**  ⭐⭐⭐

So it's an optional feature you can enable - whether or not to apply `$HOME/.p4ignore` (or some other file you choose) as a global default for your OS user.

https://www.perforce.com/manuals/cmdref/Content/CmdRef/P4IGNORE.html
lucid laurel
#

okay gtk. Thanks a lot for the help @fair monolith πŸ™ I'm going through your Perforce guide, love it πŸ‘

drifting sand
#

How come I don't see all the available branches on my Github Fork? 5.1 and 5.2 exist on the Epic Games Github but not on my synced fork

fair monolith
balmy topaz
#

Does anyone know a good free online hosting service where I can host perforce on for a week?

cyan jay
balmy topaz
cyan jay
#

Even if you have to pay a small instance won't cost much for a couple of weeks.

balmy topaz
balmy topaz
outer spade
#

How can you effectively use branches in Unreal? As far as I know, Blueprints can't be merged. How then do you fix a bug in Blueprint in a branch and then bring that fix into another branch, where that Blueprint might have undergone changes since then?

#

For example, I would like to do this:
-Create a branch for update 1.1 to my game.
-Keep working on future content in the main branch including edits to the logic in the Blueprint file Banana.uasset.
-Update 1.1 releases and there's a bug in the Banana Blueprint. So we fix that bug in the 1.1 branch and release update 1.1.1.
-Now I want to bring this bugfix into the main branch, but the Banana Blueprint there has local changes. How do I merge those without just making the change again by hand?

#

I come from an in-house engine that was all C++ and mergeable text files, so this workflow worked excellently there. I'm trying to wrap my head around how to do this in Unreal.

fair monolith
#

You merge C++ code and INIs.

#

You copy BPs, they cannot be merged.

#

TLDR don't try to build reusable systems in BPs, that is a non-starter idea.

#

This is why you probably want to use Perforce as well, if you have a large team. Perforce handles locking binary assets so only 1 person changes them at a time.

#

Because they can't be merged.

#

For small teams, just coordinate who edits which binary when.

outer spade
#

We use SVN for exactly that reason. Works well with the locking.

#

But ugh, that sucks. We have a lot of logic in Blueprint, especially things around UI and tutorials. That works great and really enables technical designers to shine. But it combines really poorly with games-as-a-service where there are always new features on the horizon and things that need final polish for a release soon.

#

Especially since the bits that are in Blueprint are also the most error-prone bits (UI and tutorials, in other words: user interactions)

#

Are there a lot of studios that use Blueprint less for this reason, or do people work around this in some other way?

fair monolith
#

BP is great for some things. Extensibility and Reusability are not some of them.

teal bone
#

I dunno. They're pretty reusable!

fair monolith
#

In a single project sure, but trying to copy changes across projects is really hard, lots of manual work.

#

C++ is so much easier for reusable cross-project systems.

outer spade
#

ah in that sense. Yeah, I imagine you're right about that

#

Blueprint is also pretty terrible for refactoring. So far that seems sooooo much easier in C++.

fair monolith
#

If you find that you're needing to merge BPs @outer spade maybe that indicates it's time to refactor those BPs as C++. It gets enough use that multiple people are changing it in multiple ways.

#

Then they keep their BP functionality but it makes it a lot easier on you in the long run.

outer spade
#

Yeah I'm thinking my biggest lessons on our first bigger production in Unreal so far are:
-Split Blueprints up much further into very small units so that you get less cases of wanting to lock a file that someone else locked
-Move more stuff from Blueprint to C++
-Think better about design of Blueprint classes beforehand because refactoring later is such a pain

#

I've basically brought a C++ mindset into Blueprint and that turns out to not work as well as hoped.

fair monolith
# outer spade Yeah I'm thinking my biggest lessons on our first bigger production in Unreal so...

This is an interesting video, about Perforce, but with general SCM concepts applicable to SVN too. In particular, this section:

Q: How do we version control binary BPs?
https://youtu.be/JxXydvG4mlI?t=3264

Full annotation:
https://x157.github.io/UE5/Annotations/Inside-Unreal/EpicGames-Version-Control-Fundamentals
.

At the core of any successful project lies planning, tools, and execution. To reduce risk and improve collaboration between developers, agile teams often implement Version Control systems to record changes to files over time, allowing them to easily recall specific versions at a later point. On this week's livestream, Arran Langmead will walk us...

β–Ά Play video
outer spade
#

And thanks for the insights into how to Unreal! πŸ™‚

tall owl
#

Hello all,

I am currently running a perforce server on AWS. I was watching a tutorial on how to setup my workspace and such for UE5 and after looking through it, I realized that I made a few mistakes. Now, I want to go back and redo what I did.

Now, I already pushed files up to the perforce server. Is there a way for me to delete my workspaces and the files that I pushed up?

I ma open to deleting my AWS instance and starting fresh but I would like to use that as a last resort.

merry verge
#

if you want to just nuke it all, delete your workspace in p4v (view > workspaces, right click the workspace) and then delete the depot from p4admin.

tall owl
#

Basically, I want to start fresh but retain the settings of the server

merry verge
#

so do what I just said...

tall owl
#

Alright, will do, thank you

fair monolith
#

If you obliterate everything, then it will allow you to make a new depot with the same name.

#

If you don't obliterate the files then the depot name may be "reserved"ish.

#

In that case just obliterate the files explicitly and you should then be able to make a new depot with the same name.

#

@tall owl ^

#

(Sorry I replied to you @merry verge, accidental πŸ˜„)

tall owl
#

No problem, thank you for the tips. I havent done anything with it yet. Making a backup of my project first just incase

tall owl
tall owl
#

Thanks, I think that I was able to do it!

stone patrol
#

Hey All, New to this discord server! My first time posting a question, so kindly forgive any mistakes made.

I am thinking of using perforce as source control for my project. Would my friend be able to connect to my project and download the files if he is on a different internet connection? I would be hosting all files on my own system (not a separate server).

Would portfowarding be required? or some kind of VPN like Radmin/Hamachi?(I do not have a static IP)

Kindly suggest links to a tutorial if possible, that would be of great help! I searched for it a lot myself, but never found a proper guide to the above scenario.

reef oriole
stone patrol
reef oriole
glacial violet
#

So, Git Add in cli is taking hours to run. 80 gig proj file.

#

Like, I'm familiar with p4 and the cli for git taking hours to do an add is interesting.

I just added a new gitignore to the directory root to see if that helps.

I just don't think it should take hours to do an add even for a 80 gig file

glacial violet
#

So, I started fresh and now after doing the git p4 clone command: my Importing Revision is hung at 50%, is that normal?

#

andre@L MINGW64 /d/BridgeWVS
$ git p4 clone //Worlds_FPS/WVSBridge@all /d/BridgeWVS
Initialized empty Git repository in D:/BridgeWVS/.git/
Importing from //Worlds_FPS/WVSBridge@all into D:/BridgeWVS
Import destination: refs/remotes/p4/master
Importing revision 2520 (50%)

pearl egret
#

Guys, I'm trying to import project from SVN to P4 and for now everything went well, but...
The p4convert.jar is not able to connect to my ssl server.
the error looks like this:
com.perforce.p4java.exception.ConnectionException: Error occurred during the SSL handshake: invalid SSL session
from what I've read on the perforce site the issue can be with ssl.tls.version.min which i just set via p4 set on client and via p4d -c "set ssl.tls.version.min=10" on server.
But the issue persist.
The weirdest thing is that I can normally connect to the server via p4 command or P4V client on the same machine...
Do you have any idea what I'm doing wrong?
Maybe I'm setting the variables in a wrong way?

tall owl
#

Hello all,

I am having an issue with the UE5 editor. I recently put my project under the perforce source control. In doing so, I deleted the binaries folder, the dervidedDataCahe, and intermediate folders per hte instructions of a tutorial. (I made backups of these folders just in case). Now when I launch the UE project, I am getting a message saying

The following modules are missing or built with a different engine version:

SWGUE5

Would you like to rebuild them now?

I click yes and then:

SWGUE5 could not be compiled. Try rebuilding from source manually

So then, I open my VS project and build the solution. However, I also get these errors:

Severity Code Description Project File Line Suppression State
Error Could not find definition for module 'SWGUE5', (referenced via SWGUE5Editor.Target.cs) SWGUE5 C:\Users\user\Perforce\WorkspaceLaptop\Intermediate\ProjectFiles\UnrealBuildTool 1

Severity Code Description Project File Line Suppression State
Error MSB3073 The command ""C:\Program Files\Epic Games\UE_5.0\Engine\Build\BatchFiles\Build.bat" SWGUE5Editor Win64 Development -Project="C:\Users\user\Perforce\WorkspaceLaptop\SWGUE5.uproject" -WaitMutex -FromMsBuild" exited with code 6. SWGUE5 C:\Program Files\Microsoft Visual Studio\2022\Community\MSBuild\Microsoft\VC\v170\Microsoft.MakeFile.Targets 44

Is there anyone out there that can help me with this error?

pulsar parcel
#

Show Target.cs that it's complaining about

#

Also this is not really related to source control

tulip bison
#

Every time I try to build and run my project, I see this log Attempting 'p4 fstat.... and it takes forever to load up the editor. Is there a way prevent this?

late oriole
#

I keep getting this error when inputting my perforce server info. Shouldn't it be asking for my password after this step?

thorny wolf
#

hello guys, why is the engine recompiling shaders everytime one is launched? I launched an existing project, it compiled shaders, then I launched the engine exe to create a new project, it compiled shaders. I created a new project, it's compiling shaders. Is this normal? Engine is 5.1.1

stone patrol
# reef oriole Yes it will, I do use a local P4 server on Windows: you perhaps have to accept t...

Hey, Thanks a lot for the help! The perforce connection worked really well with a tool called 'Radmin'. Tunneling ports to my friends pc gave him access to my local workspace. I did try using Hamachi, but it seems to keep getting blocked out by my firewall (Even after allowing the app through firewall and creating Inbound TCP rules). But thankfully it works now. All that's left is to connect ue5 in-editor to source control. Cheers!

woven sluice
#

what are you doing here

#

what is radmin

stone patrol
# woven sluice wait why did you say "access to my local workspace" ?

Hey, I was trying to enable source control on my project. But the person trying to connect to my project is in a different state (totally different internet connection). My first tries were unsuccessful, learnt the hard way. Perforce has its initial basic setup to work only on local networks. Hence Radmin (a neat little VPN tunneling software) gave my friend a way to connect to my computer network and act as a locally connected user. This way he was able to successfully connect to my perforce server, which is on my system. Hope I explained that correct.

woven sluice
#

alright, so they're actually connecting to your perforce server as their own user and making their own perforce workspace right? they're not remote accessing your (perforce) workspace?

#

(also: perforce definitely does not "only" work on a local network but that's a topic all on its own to figure out, and if you're happy with what you've got, maybe not worth going into today)

stone patrol
#

Yep, exactly! They make their own workspace

stone patrol
woven sluice
#

typically you would just pick your own port for it... default is 1666 but leaving anything at defaults just increases hacker pinging... and then forward the port for the machine running perforce on your router (and modem too, if it's an annoying modem that needs it). people seem to be losing the old age wisdom of how to forward ports easily though πŸ˜„

stone patrol
#

Oh boy! Port forwarding indeed was a pain initially for me (setting up game servers). Lucky for me I do not use a modem. I only need to worry about the router, but then the ISP has blocked all outgoing ports and deny me access to a static IP due to my internet package being a 'user' based one.

About the 1666 port - is it possible to change a port that I am using for a project that has already been set up?or would I need to? Kinda worried now if people can actually hack in to my network just cause I was lazy to change something πŸ₯² . Thanks for the help though!

woven sluice
#

i'm not a networking expert but basically forwarding a port just lets outsiders get access to send packets to that port... if there isn't anything running on that port on the local machine, you've just given them an open door with a brick wall behind it typically. where the most obvious risks come in are if the open port permits them to attempt SSH logins or stuff like that (big nuisance with linux VPS, china bots will try to brute force connect to servers using default SSH ports, I deleted like 10 GB of logs of failed password attempts before i changed my linux VPS's port, lol)

stone patrol
#

Well I hope that wouldn't be the case for me. Have not forwarded any ports, just using Radmin to VPN into my network. They did mention that it was all SSH connections for security purposes.

vague whale
#

hello, i was wondering if it was possible to share a workspace between computer that would sync the code between them, even if it was just one being being a read-only copy

cyan jay
vague whale
cyan jay
vague whale
#

i wanted to debug the server and client

cyan jay
#

If you're smart you can even setup visual studio so it will launch the server on the remote client allowing you to debug on one machine

vague whale
#

oh you can do that

cyan jay
#

I have done it in the past

#

it was quite straightforward from what I remember

vague whale
#

remote debugging?

cyan jay
#

You need to copy the server package to the remote machine first of course, to ensure the data is matching between server/client, but if you are iterating on code only then it's quite speedy

pearl egret
#

Guys, do you know how to install Helix Core Server Extensions?
I'm trying to find a way to do it but there's no info on where to find it

odd phoenix
#

Hello guys, Does anyone know why perforce takes away so much performance? Everything is much worse since I use perforce, blueprints take time to open, when I save something it takes time to save, the world takes time to compile, how can I improve this?

fair monolith
#

So your entire workflow is slowed down based on your network speed.

#

You can either put a Perforce server on your local PC (which is still relatively garbage), or you can use Git (which doesn't work for teams with non-technical people on it, or for large teams in general if you have binary assets in your project).

#

TLDR welcome to Perforce. πŸ‘

#

Also note that I moved my P4 server from a 16-core server to a 2-core NAS, and I noticed a massive slowdown.

#

So make sure your P4 server has plenty of cores. It needs them.

odd phoenix
#

I have the perforcfe server contracted at DigitalOcean, I did not pay attention to the benefits

#

1 vCPU
2GB / 50GB Disk

#

Its very simple server

fair monolith
#

You will notice better performance with more than 2 cores. I don't know how many exactly, but 2 is not enough.

woven sluice
#

tbh, that depends largely on your team and project size... i moved my perforce from a 1 core VPS to 2 cores and noticed absolutely zero change. it went from "100 ms of lag because my server is in europe and i'm not" to "100 ms of lag because my server is in europe and i'm not"

fair monolith
#

I'm on a 10 Gbps LAN with my P4 server. 2 cores is not enough in such an environment.

#

It's functional, just noticeably slower than it was on the 16-core server.

#

Clearly now I need to add another server to the LAN. 🀣

woven sluice
#

i would say you're completely missing something

#

unless you're running it at a company the same size as epic

fair monolith
#

I have 2 depots. 1 with 5.2 engine, 1 with a Lyra project.

woven sluice
#

but 16 cores is not needed for bob & jay's 2 man team

fair monolith
#

I'm not saying 16 cores is needed. I'm saying more than 2 makes a noticeable difference.

#

Maybe 4 is the magic number. Maybe it's 8. I haven't tested it.

woven sluice
#

NAS uses SSD or HDD? NAS CPU speed vs the previous machine?

fair monolith
#

Also note that I am compressing the file contents, which I imagine is what is eating up the CPU.

woven sluice
#

i think my local dual core NAS was slower than my 1 core VPS in europe

#

ah, yes that would be a huge factor

#

i've never even tried using compression

fair monolith
#

Perhaps it's not the right way to go. 🀣

#

It was working great on the 16-core machine.

#

But on the 2-core, even things as simple as switching workspaces is slow.

#

Make and submit a CL with a single CPP file = 10 seconds delay. It used to be instant.

woven sluice
#

none of that with a single core machine here

#

just the expected lag from travelling around earth and back

gray zephyr
#

Anybody know why my project wont load up, instead crash every time I run it?

urban crystal
timid trellis
#

This "Default Uncontrolled Changelist" used to contain 4 items that were related to a plugin. After a Undo Operation in Perforce it now contains thousands of things, they appear to be all Engine content. Should I be concerned?

pulsar parcel
pulsar parcel
vast palm
#

Hey, can someone help me with my perforce server? Today randomly my client(me) won't connect to my server. When I run p4 info on the server it works, when I run p4 changes -t -m 10
p4 changes -t -m 2000 it works fast and doen't hung, the port is set correctly, and for some reason, when on my client I click on "users" i see all the users of my server

#

but when I try to connect it goes

#

"Connect to server failed; check $P4PORT.
TCP connect to game.rout0r.org:1666 failed.
connect: 116.202.122.172:1666: WSAETIMEDOUT, A connection attempt failed because the connected party did not properly respond after a period of time, or established connection failed because connected host has failed to respond. "

#

if I stop the server, then when I click on users, it doen't find any, so it seems like it almost connects and then doen;t? The "Fixing a hung helix core server" guide doen't tell me what to do in this situation πŸ˜„ *Also when my friend tried to connect, I got this in the p4d server log "'user-login -a'
--- failed authentication check" so we can reach the server but suddently it won't authenticate us?

timid trellis
odd phoenix
fair monolith
#

Objectively speaking, Epic uses Perforce.

vast palm
#

So after spending more time on this, I haven't fixed but I have a more precise question now

#

"Why would a perforce server that worked perfectly for 2 weeks, randomly stop authenticating users all of a sudden"

#

Worked yesterday, today, it doesn't want us anymore

odd phoenix
gray zephyr
gray zephyr
timid trellis
gray zephyr
dense crescent
#

I know BFG can delete files in commit history and will preserve latest commit on main branch. Is there any way to preserve latest commit on ALL branches instead of just main?

gray zephyr
covert glade
#

hey devs , i switched from git to Perforce and can someone explain what is the differnce btw "Add"(Mark for Add) and Checkout ? is "Add" == "Indexing" in git and "Checkout"== "Commit" in git ?

merry verge
#

no

#

add is for files that haven't been tracked and submitted to the server. Checkout is for files that have been submitted and you want to modify.

timid trellis
# gray zephyr I tried out the verify and it didn’t work unfortunately. This is the error I kee...
Epic Developer Community Forums

UPDATE! Thanks to the previous comments I was able to overcome this new issue by installing the β€œEpic Games Launcher” as suggested then copy the files found in: \Program Files (x86)\Epic Games\Launcher\Engine\Binaries\ThirdParty\Windows\DirectX\x64 into my build location (replacing dxil and several other dlls): \Epic\Engine\Binaries\ThirdPart...

#

seems to be a couple potentially fixes from other users in there, but make sure you are sure of what you are doing. I haven't attempted any of this nor have I looked into each advised step. Just posting as a starting point that might help you

gray zephyr
#

appreciate the help ill try it out

opal maple
#

How do i download from perforce ?

#

i am new to this entire concept of source control

late oriole
#

(Git) Is there a protocol for storing a source compiled engine version with a game's project files? I assumed it'd be like UT where you essentially put the project root folder next to the /Engine/ folder but
a) how does that work with a .gitignore?
b) would that cause problems for either compiling?

pulsar parcel
#

UT was actually using Perforce, not Git. With Perforce you'll typically deploy UGS

jolly fog
#

so uh I have a massive problem
I did some weird things with the assets and now they don't appear anymore in the unreal content browser (although the folders and files do exist)
how do I re-import them without breaking them? If I drag and drop the files in the right folders it says something about references being broken
Failed to reimport (object redirector)
if I do "fix up redirectors" it just deletes the files off of my hard drive which isn't ideal

#

'I'm using perforce and I thought I fixed the problem in another workspace

thick knot
#

HI, sorry for necro-reposting, but I just had the exact same problem and I can't find a solution. Did you figure out how to solve it?

pulsar parcel
thick knot
#

oh that's cool. We would like to use the official one to avoid problems when asking for support to epic (UDN), but we could try yours. It's weird because we had it working in a previous project using ue4, but no luck with ue5

pulsar parcel
#

The old one is barely supported and the API is stable. A UGS metadata server is in Horde and that appears to be what Epic uses internally

tribal lynx
#

i want to get into source control for versioning and project sharing. i got some smol experience with stuff like github but i am unsure how to do anything with large size sources

#

whats the UE community goto repo service for this?

tribal lynx
#

after looking around i cant really find any good options but selfhosting repo and just use svn/perforce/git for version control

fair monolith
tribal lynx
#

ive worked a bit with git and svn

#

its only me on the project but i have some reasons to share the source with atleast one other person

fair monolith
#

For a small team, Git should work just fine.

#

Maybe SVN too, but honestly I haven't used SVN since Git was invented.

tribal lynx
#

its a flavour, mostly used SVN in corporate contexts

#

eiter way i think just sharing the whole project outside a source control and then set up a folder for source control

#

seems smoothest

fair monolith
#

Use whatever you are most comfortable with IMO

#

Your team is small

tribal lynx
#

yeah

fair monolith
#

You can change SCM whenever you want

tribal lynx
#

this was mostly an exploration if there was project share + version control as a service

#

for free

#

ie server + space + client

fair monolith
#

With a large team, not so easy. But small team, go with what you know.

#

I think someone said Azure has done free VMs on a trial maybe

#

That's limited time tho surely

tribal lynx
#

yeah after my quick rundown of options i just figure a self hosted solution is best either way

silk ridge
#

Hey alll - we have our project on a repo. We are using svn. We have recently added c++ code to the project. This has updated the uproject file and added a module. Once this was commited. No one else could open the engine so we have since revert the change. However the c++ components are no longer appearing. They only appear once the module has been added to the uproject. But again this stop everyone else opening the build. I feel we are missing something simple. Any help is much appreciated

white trellis
#

Hey, I'm trying to get a git repository going for my project. I have a visual studio solution with both the UE5 built from source and my Project in it.
But all the built in git related functionality seem to be tied to the engine only, how do I change it to make and manage a repo for the game project instead?

fading peak
#

hi i was wondering if there were any more steps i needed to do when updating my unreal engine 4 project and committing the unreal engine 5 version to github

#

just seems like there should be a lot more file changes unless i am over thinking things

white trellis
fading peak
#

right i will do a test build to see if i got any issues like that thanks for letting me know

#

just with GitHub have always had problems in the past with not setting it up probably.

woeful lance
#

Project Tracked using Git SCM, Reinstalled windows 10 and now project is not recognizing it's source control link how do I reconnect it to Git without losing git history?

fair monolith
woeful lance
fair monolith
teal bone
#

In the shed.

nova glen
#

i accidently deleted my Source folder before comitting.. anyone know if theres a way to restore this through the editor?

jolly fog
#

there's a weird issue with unreal and perforce

#

perforce makes the project folder read only and now unreal takes forever to hit play/stop on the viewport editor

#

if I check the log it tries to access/delete the .ini files and isn't able to, that's why it hangs

#

and if I check the project folder it is trying to write tmp files constantly lol wth

woven sluice
#

pretty sure someone else in here complained about that 6-18 months ago but i'll never remember what they did wrong

jolly fog
#

can I just say f*** perforce

#

literally dumping the project files on a private github worked flawlessly for us (except for the parallel working part)

woven sluice
#

parallel working? if you were happy with git dunno why you'd switch (i switched because i wasn't happy with git but i switched a loooong time ago)

#

oh, private?

jolly fog
#

the exclusive checkout stuff is nice (when it works)

woven sluice
#

you weren't using LFS??

jolly fog
#

what does LFS have to do with it?

woven sluice
#

well... because vanilla git is generally horrid with binaries, and because vanilla git has no way to implement locking

jolly fog
#

yeah we just literally pushed and pulled the project whenever one of us was working on it

#

which meant no "parallel" working (as in checking out different actors/etc.) - with perforce we can now

woven sluice
#

well, anyway. your perforce is set up wrong but i don't know how... if you actually want help you should share some info and maybe someone will remember. otherwise, maybe consider going back to git with LFS if you liked it

jolly fog
#

also there seems to be some wrong perforce config in unreal cached somewhere

#

maybe in appdata? could it be?

#

I mean issue is that perforce puts the folder in read only and unreal cannot delete stuff in it

#

Even though the source control is set up

woven sluice
#

share some info

jolly fog
#

what infoi

woven sluice
#

what you're seeing, you keep talking about files and this and that, none of it is going to be in front of anyone else

#

screenshots, logs, info

jolly fog
#

I solved it

#

just obliterate the saved folder from the perforce depot and recompile

woven sluice
#

oh. did you skip setting up an ignore file maybe?

jolly fog
#

no it was there

#

this was from an older issue where perforce spazzed out about having multiple depots and I have to brute force in files manually

woven sluice
#

i don't want to know awkward πŸ˜„

jolly fog
#

Is there any way to automatically "mark for add" newly imported assets in my project?

#

Source control is enabled obviously

lucid laurel
#

About the new Source Control Changelist view in 5.1.
There is the option to Reconcile Assets, but it also adds Engine content to the Uncontrolled Changelist. Is it possible to only reconcile Assets in the Content folder? So I only reconcile Assets specific to my Project?

runic summit
#

I'm trying to get "Shared Collections" working across multiple machines - is there some file I need to mark for add in the config? I thought creating the shared collection might be enough but I wasn't sure how UE handled the collections (and no one could tell me what local config file handles it)

obsidian sandal
#

I'm using Perforce for source control and for some reason it's been acting off. Things were being pushed but not syncing right with the cloud as though I never pushed stuff....when I would go to do a clean it was showing folders under my Content Folder that were local and not on the server, so I had to mark them for add and manually force them onto the Repo

#

It's not doing it anymore but he still seems to be having trouble staying in sync with me

#

Anyway if anyone has seen this before and might know the cause let me know

obsidian sandal
#

Somewhere under there you will find a Collections folder

#

I don't know if that's just local or not though

runic summit
runic summit
#

I'm getting these error messages despite being connected to source control

obsidian sandal
#

That's correct, the saved folder is normally ignored. I'm not honestly sure if that collection folder is it. More then likely that's for local collections only

obsidian sandal
#

Like to the workspace and all of that?

#

Nm, yeah idk

#

that's odd

runic summit
#

I restarted the editor but it still says that

broken loom
#

Something happened to my perforce, it knows there are changes but wont display them, and only does it if the change was made in unreal. It was working fine just yesterday. It shows an empty file list and wont submit anything.

#

I can submit from in unreal. When I submit changes made outside unreal, it doesn't submit those ones. After submitting the 'default' changelist goes back to blue but if I hit refresh it turns back to red, again empty

obsidian sandal
#

Things tend to get lost sometimes when that happens

runic summit
#

Nope, they are still there in the engine

broken loom
#

Wish I could stop running into random uninstigated issues that completely prevent me working

#

As far as google knows, this issue doesn't exist

runic summit
broken loom
runic summit
runic summit
#

so what's up with this?

obsidian sandal
runic summit
#

the errors went away, but where is this located?

obsidian sandal
runic summit
#

So I got it working for a NEW shared collection but I can't do it with an old collection

delicate field
#

how much is perforce?
i know for 5 seats its free but like between 5 - 10 people?

delicate field
mighty light
#

if you have more than 5 people then everyone is on a full licence

#

so your original free 5 people are now costing you $2250USD/year

#

double that for 10 people

#

averages about $45USD/week for 5 people

delicate field
#

damn thats a lot.
using github and sourcetree at the moment by myself, just wanted to think about the future.
but its getting annoying just seeing binaries in the change list so might swap for my next project.

mighty light
#

what does binaries in your depot/repo have to do with extra people though?

delicate field
#

i wanted to know about how much it costs but i was just saying i might swap to it now instead of waiting until i have a team because i would like to diff and see changes.

mighty light
#

you can diff changes in github and sourcetree already though?

delicate field
#

this the only thing i know about that shows changes

mighty light
#

you cannot diff binaries

#

you can set up your mergediff tool to diff a text version of the binary but that might only work for p4v

delicate field
#

when u connect unreal to perforce u can diff blueprints?

mighty light
#

oh you mean in editor, then ye. that shouldnt be dependent on your source control though since the editor supports git?

delicate field
#

o can u?

#

ill look into it. haven't done too much research into cos i was trying to learn about git and perforce last year and jsut using source control in general

#

cheers for hte help

bitter sun
#

I'm getting an error while trying to submit files to depot on P4:
d:\Project\SomeFile.uasset - file(s) not in client view.
I checked stackoverflow but I didnt understand anything as I'm not experienced with P4 much

#

Can anyone explain what could be the issue?

#

There are also multiple different answers for same question on the web which isn't helping much to me to understand what's going on

#

This is happening on a fresh depot, and fresh workspace

mighty light
bitter sun
#

Hmm, no I put everything inside of the workspace root

#

Is there any chance this is a depot/server related issue?

mighty light
#

ah alright. im not competent enough with p4v to try to remotely diagnose stuff sorry 😒

bitter sun
#

No worries, thanks sadcatup

mighty light
#

i thought i would try to help though and hope that was it

woven sluice
bitter sun
#

How can I check workspace properties?

haughty wedge
#

I'm pretty proud of this

tender haven
#

What would be causing this warning/error on start up?

"LogFileManager: Warning: DeleteFile was unable to delete 'C:/Perforce/Circadian House VR Experience UE5/depot/CH_VR_Experience_UE5.1/Config/DefaultEngine.ini', retrying in .5s..."

Is it related to Perforce? Should I make that file writeable?

hardy merlin
#

Question.
I am trying to set up AWS with Perforce now.
What should I pick for P4D instance? Will have at most 3-4 users

fair monolith
#

IMO don't skimp on drive speed.

#

It will have a real impact on the amount of time you spend waiting.

#

I'm not sure tons of RAM is needed. 8 GB maybe, give or take?

#

Unknown how much of a difference CPU count makes. It's going to be mostly idle, but when you want it to do stuff, it's nice if it has some cores.

#

Again, how much do you want to spend to reduce time you spend waiting.

#

@hardy merlin ^

hardy merlin
#

Depends, tbh I rather spend as little as possible at the start, then scale up, as so far there are 2 people on the project, so updates wouldn't be very frequent, so waiting isn't a problem

fair monolith
#

It's not just a matter of how many users.

#

If cost is your main consideration, then you can do 1 CPU and slow hard drives.

#

Just know that the price you'll pay will be in extra waiting.

hardy merlin
#

Yeah, I know, I will likely do the submits in the night, before taking a shower and let it run LUL

regal grotto
#

I use Git daily and don't have any issues with it since 2017. What should I do, do you have any advice?

woven sluice
#

general ram requirements supposedly scale with project file count+size

nova pier
#

I dont understand something about source control of github. If my project is 10 gb, how can i save it there if the limit is just 2 gb. Projects in unreal can get big really fast.
Is there a way to not upload things like textures and meshes? Or upload just the code? How does it work?

vale basin
#

You can just upload code, but it is recommended to use version control for assets too.

#

I've heard of some teams using git for code and svn or p4 for data, but that's definitely "you're on your own" kinda situation

uncut flare
#

Submitting a lot of files through p4 (100k+, 200 GB+) resulted in p4 hanging and not continuing with the submit. E.g. it gets to file No. 17k, and it stops there. I spend the day doing the submits in chunks, but preferably I would do this in 1 submit if I need to again in the future.

Any ideas what could cause this something like this?

cyan jay
uncut flare
cyan jay
#

We went down a few dead ends regarding networking setup and some SSL warnings in the logs, suspecting our P4PROXY setup, but tbh we didn't really get any leads. We enabled a whole bunch of additional logging on the server but never found anything that identified what the problem might be.

#

Once I successfully submitted the engine files I didn't have a test case that could reproduce the problem, so the ticket got closed due to inactivity.

#

I was able to submit multiple multi-GB test files with no problem. So possibly something to do with submitting a huge number of files, idk.

uncut flare
#

I also think it's not related to big files, as it also happened after submitting 1000s of very small files. The server doesn't seem to be struggling and then the client just stops submitting out of the blue. Server is fine though, it's the client that becomes completely unusable.

versed sparrow
#

I'm having a crazy time getting perforce working. One step forward two steps back style. At workspace / project setup. Can add the folders to the depot, but perforce doesn't add anything. Says no open files. It sees them, they are in the drop down. Just can't submit them. No files listed.

haughty wedge
#

Did you mark the files/folders for add?

versed sparrow
#

Yessir, and says there was however many thousand. But on submit, no files in the drop down.

haughty wedge
#

Do you already have the files in your depot? You might have the option to revert if unchanged enabled?

#

have you tried reconciling the whole workspace?

#

Are you following a certain guide?

versed sparrow
#

Was following perforce website, then unreal perforce video on YouTube, now I'm grasping at straws. Nothings working out. Is there a good guide out there?

tender haven
#

On one of my computers where I set up a Perforce workspace, it's always creating a "depot" folder where on another computer with a different workspace, it doesn't. Any idea why?

tender haven
haughty wedge
versed sparrow
#

Problem solved, stream was missing.

mighty light
haughty wedge
#

Yeah, seems like maybe a path was set as share //depot/... rather than simply share ...

#

Or perhaps the real intent is something like share //depot/stream/...

#

or I guess the view change in the workspace

tender haven
haughty wedge
#

what are you trying to do exactly?

reef oriole
#

Hey there, I have released a new version 1.8.0 of the Plastic SCM plugin for Unreal Engine 5, with support for Shelves within the new Changelists UX πŸŽ‰
https://github.com/PlasticSCM/UEPlasticPlugin/releases/tag/1.8.0
with some luck, I can get it merged for the upcoming release of UE5.2 πŸ™‚

GitHub

1.8.0 release for UE 4.27, UE 5.0 and UE 5.1 with support for upcoming UE 5.2
Added support for Shelves in the View Changelists window:

What's Changed

Implement "Shelve status": li...

teal bone
#

Though I fear that's playing too fast.

tender haven
tender haven
haughty wedge
#

TBH I don't know why you are messing with anything like that lol

#

perforce is very easy to set up β€” ignore most of the stuff not mentioned in tutorials lol

tender haven
#

I'm learning more about source control, and for the last year my small team has just been using the local "depot" as our repository. However, we have to deliver a version of the project to another developer which is more or less a "first release" but we want to continue working on it ourselves. I have learned this is the point of "streams." My question is, since everything is in "depot," what's the best way to switch over to the "streams" workflow. Should I create a "streams" depot with a mainline, a ew Workspace on my local computer, and then copy the project files from the old Workspace to the new one? Then do I upload those files to the server? What about server space? Should I be deleting/archiving the old depot folders at some point?

haughty wedge
#

Oh yes I see

haughty wedge
#

Definitely start a whole new stream depot

#

u did that right?

tender haven
#

Yeah!

#

I've also created a main stream

#

This is all in a separate Workspace which I learned the hard way

haughty wedge
#

to prevent disk space from being wasted, don't create lots of streams that are populated with files

#

There are different types of streams, some of them do not use any disk space

tender haven
haughty wedge
#

Well the new stream depot you obviously want to keep.

The old depot, that depends on if you care about its contents or history. If you know you don't want anything else from it, and you are 100% positive you've gotten all your files from it into the new stream depot, then yeah you can delete it

tender haven
#

When you say some streams don't take up space, what do you mean by that? Is there documentation where I can read more about this?

haughty wedge
#

absolutely the perforce docs are great

#

I will link you the specific section

tender haven
#

Cheers!

haughty wedge
#

Virtual streams take zero additional disk space for file storage. Task streams are as lightweight as only the files you cange (until you change 50% of the contents of your stream). But also, depending on how you specify paths and propagate files, you can have a normal stream be lightweight too, and contain only the files you want it to. e.g., set the path to share /SpecificFolderOnly/... vs share ...

tender haven
#

Thank you! And then one Workspace for each stream, correct?

haughty wedge
#

Yes one workspace per user. Each user can move their workspace around to different streams

tender haven
haughty wedge
#

no problem. I just went through that process of slowly and surely understanding it. I have a fresh recollection of all this so feel free to ping me to ask questions here

tender haven
#

Or should those get moved to an actual Dropbox/Google Drive? What are your thoughts on that?

haughty wedge
#

Interesting.

#

I have not thought about this give me a second

#

So like, that is your actual art creation source assets that are used to export the assets that you actually keep in your game project, right?

tender haven
#

Yep! Like RAW texture sets, untriangulated models, uncompressed animations etc.

haughty wedge
#

I know some people do store thos in perforce

#

It depends if you want to track every single change, etc.

#

but yeah where it is located doesn't really matter I don't think

#

you can create a whole separate depot if you want

tender haven
#

Makes sense actually

#

I might just move them to Dropbox or Google Drive though

#

Especially if it's not something that's commonly practiced

haughty wedge
#

stream, IMO, makes less sense. A stream seems to indicate that it is a whole thing. If you don't wanna make a depot for the assets, just include them in a folder in whatever stream you want them to be in

#

but only store them once β€” don't branch them

#

yeah Google Drive will store some limited version history for you

#

so it's a nice balance of disk space and safety

tender haven
#

Thank you!

haughty wedge
#

no problem

#

you're welcome

#

The perforce docs are confusing at first. They are broken up into different guides, and sometimes one guide will go into detail in an unexpected area, and some other guide will link you to that other guide. But, once you figure out what guides there actually are, you get more familiar with the tables of contents. Here are the guides you will need, IMO:

#

Welp, apparently markdown links don't work in discord lol whatever

tender haven
#

This is mad help! I started searching them and they're very good as far as documentation goes. Thanks again.

#

Is there anything on my AWS server that's not in my "Depot Tree?"

#

I'm always wondering how stuff gets truly deleted from the AWS server. Does it like empty its own trash for you?

haughty wedge
#

The depot tree is only what is the file contents. There are db.* files in your perforce P4ROOT directory, as well as the journal file, any checkpoints that were created, and a main log file (among other less important log files). Then, obviously, there is the server software installation itself but that has no bearing on your individual project.

The server should keep itself pretty clean, but if you make new versions of files, the space will get consumed more and more. I'm not familiar with any specific tasks that need to be performed to clear out any temp cache or anything.

The section in the Helix Core Server Admin Guide on Backup and Recovery talks a bit about the files that are needed to recover the server, if that is what you're interested in.

Basically, you only need the versioned files which are stored in your depot folders, any checkpoints you created, the newest journal file and that's it. But read the docs.

cerulean tangle
#

hey everyone, I started using github for my unreal engine game, is it okay to do this? Do I need to enable something to allow for 3d assets that are large in size?

tender haven
#

When I log into my AWS server to increase its disk size, I noticed that it says there is upgrades available. Should I be doing these?

tender haven
tough laurel
#

Can someone help me understand the Perforce workflow for branching? I've got some pending changes on a //Project/Dev stream that I would like to branch off and work on separately. Using git I would do git checkout -b "branchname" and my pending changes would follow. is there a p4 equivalent?

tender haven
#

I've got a question regarding the Perforce "streams" workflow. If I have a setup like "mainline" and then "dev1.0" can I just use one Workspace and drag the Workspace icon amongst them? I saw that in the documentation. It would mean that I don't need to create multiple copies on my local hard drive. Is this correct?

haughty wedge
#

Yes this is correct.

woven sluice
regal grotto
woven sluice
#

Good Annoying, Fast Slow, Cheap Expensive - you can pick any two all three!

indigo cloud
#

Additionally, does anyone know how to delete unnecessary files? on GitLab am I doing this using Housekeeping but on azure i have no idea how i can do it

covert glade
#

hey guys , i have manually deleted one file from Workspace (Perforce) but not from Server , only from workspace , and now i want it back . File exists on the server but when i do "GetLatestRevision" this file isn't getting downloaded . All other files are getting updated , but only that deleted file isn't getting downloaded , Why ?

merry verge
#

because it thinks you already have the file. Use "Get Revision...", set it to latest, and enable "force operation" to force it to redownload the file.

vale basin
#

Yep, force get latest is the answer. Reconcile can also help to find any other changes in your local depot that perforce isn't aware of, and then you can revert them.

faint cairn
#

Is it expected that Locks on GIT LFS don't release when Discarding a Change to a file?

#

Cause I can't revert a UMAP in UE (doesn't want to cause the Map is "loaded" (even if I never open the map)) and discarding it in Source Tree isn't releasing the lock

#

I can't expect every person that works on the project to use 3 different things to manage the files (UE, SourceTree and Git Bash to manually unlock files..)

#

Apparently, SourceTree doesn't support Locks. It doesn't display them and has no options to lock/unlock. ..

#

Which explains while discarding ins't unlocking (if it's supposed to)

faint cairn
#

Uff, and the bug that files that are renamed and marked for add aren't being marked as writeable is also annoying :D

indigo cloud
#

How do you merge two branches in Git? I mean, if the difference between one branch and another is 20GB, doing a checkout on the main branch just to update it with the contents of the feature branch is a hopeless idea. Is there a way to merge/rebase without having to switch to the main branch

haughty wedge
#

do git rebase <branch_name> where branch_name is the name of that huge branch u don't wanna checkout.

You can also add -i to make it interactive, so you can squash commits or reword the messages, or drop them, etc.

#

It will probably take just as long as checking out that branch but either way it's a good way to put some new commits ontop of old commits when the old commits had no knowledge of the new commits when they were made (Ie, they do not relate to the new commits)

fair monolith
#

This isn't really an issue if you just don't use the editor SCM tools when connected to Git.

#

Diff, sure.

#

But for commits/resets, use a real Git tool IMO.

#

This is just one of those things that's annoying about Epic having gone all in on Perforce.

faint cairn
#

You'll need the editor to ensure people don't modify binary files twice

#

And GitKraken, based on what I googled, has no proper lock support either

fair monolith
#

Right I haven't attempted locking with Git.

#

Just editing. Locks are on the honor system with Git.

#

That's why I had to move to Perforce. 😭

#

Git is still great for small teams, but there is effectively no file locking.

merry verge
#

lfs locks exist, they just suck

#

as has been noted, half the git GUIs out there don't even support them :/

fair monolith
fluid pond
#

What programs should I use if I'm just starting out and how should I do multi user editing with my friend

mighty light
# fluid pond What programs should I use if I'm just starting out and how should I do multi us...

That's a very broad question but if you are talking specifically about source control there is a few options. Perforce is the industry standard but git and plasticscm are also used as well as svn. You can get free git+lfs (which you will need for unreal) on github, but you are limited in space I believe. Perforce, svn and plastic you will need to pay for hosting, or host your own server. For front end software, perforce has p4v, git has source tree, fork, gitkraken, tortoisehg, github desktop and probably 10k other clients. SVN and plastic I have no idea

fluid pond
#

ok

#

that sounds like a lot of work, right now I'm using git and still have to set up the multi user editing

#

I haven't really done much work like this before, do you have a good tutorial or something?

mighty light
#

Not on hand. Is there a particular reason why you want multi-user editing?

faint cairn
#

@lilac scroll Sorry for pinging you, but based on name and profile picture: Did you release some Git LFS Scripts on GitHub for Un-/Locking?

#

Ah nvm, had a question cause I couldn't get them to work. Seems to have resolved itself with a turn off/on :P

#

It's sad that one even needs those scripts to unlock all locked files when working with Git LFS and UE

#

I had like 30 or so locked files from yesterdays session, which all didn't unlock cause I pushed outside UE (I guess UE would have unlocked them).

#

And Git LFS only offers single file unlock commands (..)

mighty light
faint cairn
#

Afaik there are no git hooks for local discarding for example

faint cairn
#

PlasticSCM being the quality product again

#

But that product will remain uninteresting until they add the ability to obliterate files from the repos.

indigo cloud
tender haven
#

How do I unshelve these files? I keep getting this error too.

faint cairn
faint cairn
lilac scroll
#

Yep, I never unlock individually unless it’s via revert in the UE editor, which does it

faint cairn
#

Yeah it doesn't for me if it's a umap

#

UE just doesn't want to unload the level :D

#

As well as if users don't commit through UE

lilac scroll
#

The editor does tend to shit the bed on revert/reload sometimes esp with maps

faint cairn
#

Yeah currently pushing for the idea to expose an Editor Widget in the Git Plugin that shows all current locks + the ability to unlock them one by one or all selected fwiw

#

pretty sure that's easy enough to add given the Plugin already has GetLocks etc. logic

#

Would help not having to use git bash to resolve locks that are stuck

rich tendon
#

Anyone have experience with perforce and diffing for blueprints?

It works, but if I have the project open and I diff from perforce, it opens it a second time rather than using the one already open. There's gotta be a way to not do that...right? πŸ€”

quaint obsidian
#

@faint cairn sorry for the delay by the way with fixing everything, i am unfortunately dealing with lots of sudden and urgent work elsewhere. very stressful but eventually i will get it done, by March

quaint obsidian
# faint cairn Is it expected that Locks on GIT LFS don't release when Discarding a Change to a...

there's 2 revert modes in the git plugin:

if you have changes, it will only revert the changes and keep the lock. this was to facilitate behavior where multiple iterations of the file would be done after experimentation. the second revert while checked out but not modifications will unlock. however, auto checkout and other features have improved in unreal. so it may be better now to just do both always.

#

also, I'd be interested to know what your use cases are in using something like Sourcetree, I think you said you use this for submitting? Why is that?

faint cairn
# quaint obsidian also, I'd be interested to know what your use cases are in using something like ...

Habit, I never used UE to submit via P4 either. The only reason I have UE with SourcesControl is to actively know when an asset is checked out.

I usually revert/discard outside of it cause UE crashes half the time (or in this case doesn't even revert some files), I organize change lists (commits) outside, I push outside. I do diff Blueprints in the Editor from time to time, but that's about it.

#

No one in my team uses UE for pushing files. Neither with P4 or with git

#

Again probably just Habit

faint cairn
# quaint obsidian <@94211915902889984> sorry for the delay by the way with fixing everything, i am...

No worries. I updated our own repo of the plugin with whatever is latest on GitHub and updated the sub modules on our projects to point to the newest commit. Will see if some stuff maybe already resolved.
The lock stuff is currently my biggest annoyance.

Having that extra window would probably resolve a lot of situations already.

Another bug I still have from time to time is that if I rename files, the newly created file that is marked for add is readonly.
Not sure what else I need to do, but I basically can't rename and then modify the file before manually removing the readonly flag on the file via windows.

#

Marked for add means it's staged iirc, but it's still read only, which seems a bit annoying :P I know perforce didn't have that issue

#

Also, shouldn't it be possible to inject context options into the right click menu of assets? SourceControl itself must be injected. Adding a Lock/Unlock option directly into the asset's right click menu should also be an option, even if the source control Provider stuff doesn't have that by default.

tender haven
#

Hi there, I can't get rid of this shelved files list. I keep getting this error. These files were created when switching streams/workspaces.

tender haven
woeful lance
#

Hi guys I am trying to use TortoiseGit to avoid having to zip up my project for backups, Problems Using TortoiseGit I'm facing:

-How do I change the master branch to development branch
-How do I Ignore Folders
-How do I Ignore certain File Types

median hawk
#

Okay its been a hot minute since I've done anything with Unreal and I'm not confident in the default GitAttribs/Ignores that I can default my repositories with that is meant for Unreal. Anyone got any suggestions for folders that can be ignored? I know intermediate is usually one but that seems to build a lot as soon as I create the project.

woeful lance
median hawk
woeful lance
median hawk
#

Yeah I figured it would vary from repo and interfaces. Might have to give Tortoise a try at some point.

woeful lance
median hawk
#

I'll keep that in mind haha

woeful lance
fair monolith
#

This Git repo includes .gitignore and .gitattributes files that are great for a new UE5 project repo.

clever wasp
#

Hey! Has anyone used Gamelift with Blueprints (AWS) plugin from the marketplace? I'm having an issue with GitHub not tracking all the necessary files. Curious if anyone had a similar problem, and how they updated their gitignore.

pulsar parcel
#

this is typically where the automation project is, and on a lot of platforms, it's where a lot of build configuration files go

#

also that repo is GPL'd L O L

fair monolith
pulsar parcel
#

if I used these files, I would have to license my project under GPL

fair monolith
pulsar parcel
#

Build should not be listed at all

#

builds don't go in build

fair monolith
pulsar parcel
#

it's for build configuration

#

yes

fair monolith
#

The configs are whitelisted.

#

I'll change the license to MIT.

pulsar parcel
#

no there aren't?

#

automation projects go there in bigger projects, platform build configs, and a bunch of other stuff which there aren't exceptions for

fair monolith
#

This works great for indies and small teams starting out.

fair monolith
fluid pond
#

@mighty light I'm making a project with my friend

#

it would be nice if we coul both edit the project at the same time

teal bone
#

Literally edit the same level at the same time in the editor?

#

Or just work on different parts at the same time?

woven sluice
#

Multi user editing is highly overrated for most use cases

sharp vapor
#

I have a commit where I found a file to be over the size limit, i added a the file type to gitattributes but it is after the staged commit. I found this issue out on push so the stagged commit was already in place. Anyway I can force gitattributes to apply ahead of this commit ?

Actually this file is in saved folder is under gitignore but its not ignoring hmm

mighty light
fluid pond
#

idk

#

i didn't anser your qquestion

fluid pond
#

@teal bone its a little late but I would like to be able to work on the same level but diferen't parts are ok too

#

it is just nice to be able to both be editing the same terrain so you can provide feedback and directly make changes

civic sand
#

hey i'm faccing this weired issue every time i pull and merge git is adding these weired stuff in my source file

#

also in my defaultEngine.ini

uncut flare
#

That "weird stuff" you see is 2 revisions of the content you're viewing, it compares HEAD vs another commit.

#

The =====... is the divider, choose the revision you want to keep by removing everything on the other side of the divider up until the <<<<< stuffs.

#

To finalize the merge, you'll have to add the file again in Git to staging. e.g. git add DefaultEngine.ini, and commit these changes.

teal bone
fluid pond
#

@teal bone ok, thanks

quaint obsidian
#

I'd recommend using VS Code to resolve merge conflicts

#

it gives you a GUI for selecting which version to use

teal bone
#

Yeah, I use vs code for a lot of random codey things.

tender haven
#

I've been told by Perforce support that I need to upgrade my Perforce server. Has anyone done this before? Is there anything I should watch out for/be aware of? My Perforce server is installed on an AWS Linux machine.

#

I'm about to upgrade my Perforce server now too. Is there anything I should be aware of?

vague whale
river tinsel
#

sometimes it really get to agressive -;-

restive coyote
#

Can I raise the push limit? At least temporarily?

#

So wait, do I need to divide it into several smaller pushes to make it clear, since the total repo is over 5GB? Is that a problem that I will also have with pulling?

restive coyote
#

Wait. Am I really not supposed to have my art files included in my source control?

#

Binaries and what not?

teal bone
#

Depends on your source control.

woven sluice
late jungle
#

Would you recommend using perforce streams to separate stuff that goes into the live game from stuff that's in development or scheduled for later releases?

analog lodge
#

Quick question: WeΒ΄re planning to completely move to remote office and are currently looking into box.com for unlimited cloud storage to use with our 3D and editing department.
For Unreal Projects we currently have perforce setup on a VPS with attached cloud storage from the same provider.
Now weΒ΄re wondering if we could use the box.com storage for that instead.
Anybody have experience with this?
Or with Dropbox (as that is pretty similar)?

restive coyote
#

Is there a source control that will work with my art assets too? It would be a pain tracking them separately I think. Perforce is free right?

cyan jay
teal bone
#

Wasn't dropbox renamed to box?

#

Or did I misread that somewhere?

analog lodge
teal bone
#

Fair enough!

uncut flare
restive coyote
#

Yeah. Darn. It seems I'm out of luck for a free solution. Oh well!

uncut flare
#

I think Github LFS has 50 GB storage + bandwidth for free. You won't fit the engine source on it though.

restive coyote
#

It doesn't. I tried pushing to a GitHub repo and it complained it was too big after 6GB

uncut flare
#

You'll have to track certain files as LFS, otherwise GitHub will consider it as a normal file IIRC

restive coyote
#

I did. Didn't work.

uncut flare
#

Excuse me. Seems like the free option only gives you 1GB of storage and bandwidth..

#

My bad. Thought it was 50.

restive coyote
#

Yeah. Pity.

#

I will do the crude option and just upload a .zip to Mega once a month or so.

uncut flare
#

Or spend $5 on a cheap server, though I wouldn't know what Perforce is like on something like that.

You can also spend $5 on GitHub a month for the 50GB LFS storage/bandwidth, so you don't have to manage anything yourself.

#

@cyan jay Sorry for the ping but thought it'd be nice to let you know.

P4V doesn't make use of parallel submits by default. I've unchecked that and let p4v do submits using 8 threads. Besides it being faster, it also seems like the problem of the submit getting frozen has gotten resolved.

Downside is that you can't check in on the progress of the submit.

woeful coral
restive coyote
#

I was, before I switched to GitHub. But I can't push more than 5GB at a time, or something.

#

With Azure I mean.

woeful coral
restive coyote
#

that could be. I think I tried it again and it worked?

#

Oh, were you talking about GitHub or Azzure?

haughty wedge
vague whale
#

hello, i need a bit of advice, i am using perforce for my project, but a plugin provider is using git, I was thinking it would be great to be able to use git inside the project, pushing changes on branches to the plugin provider and committing gold code to perforce

#

i am only using the free edition of perforce

hexed hatch
#

Anyone here used Helix4Git to import a git repo and its history into p4? From the limited documentation it seems like that should be possible. Also is there an easy way to install Helix4Git without having to wait to hear back from perforce?

covert glade
#

hi guys i am having a bit issues while trying to clone Unreal Engine repo , any ideas how to fix it ?
error: RPC failed; curl 56 OpenSSL SSL_read: error:1408F119:SSL routines:ssl3_get_record:decryption failed or bad record mac, errno 0 error: 16730 bytes of body are still expected fetch-pack: unexpected disconnect while reading sideband packet fatal: early EOF fatal: fetch-pack: invalid index-pack output Completed with errors, see above.

little pivot
#

Has anyone tried to integrate Sonarqube for static code analysis into Unreal projects?
I have tested multiple integration methods, but I am sure someone has a better approach. Currently, my setup involves using Sonar Community with the 'sonar-cxx' plugin. Below is the contents of my 'sonar-project.properties' file

# must be unique in a given SonarQube instance
sonar.projectKey=PROJECT_KEY

sonar.branch.target=master

# name displayed in the SonarQube UI
sonar.projectName=PROJECT_NAME

# path to the Unreal project root directory
sonar.projectBaseDir=./

# version of the project
sonar.projectVersion=1.0.0

# Comma-separated paths to directories containing Unreal source files
sonar.sources=./Source

# Comma-separated paths to directories containing Unreal header files
sonar.cxx.includeDirectories=Source

# SonarQube server URL
sonar.host.url=https://SONAR_SERVER_URL

# SonarQube authentication token
sonar.login=XXX

# Encoding of the source code
sonar.sourceEncoding=UTF-8

I have also tested SonarScanner.MSBuild based on this documentation https://docs.sonarqube.org/latest/analyzing-source-code/languages/c-family/#solution-with-mix but I did not get it to work properly.

ionic creek
#

Hey guys, first time poster. My buddies and I are making a game in unreal and I was wondering what you guys use to distribute code/source control. Git hub caps at a ridiculously low amount of data.

vale basin
#

Perforce is the "standard". It's what epic uses, and some tools are designed with it in mind. As for gitlfs, it's usually cheaper to host your own with gitlab or something, but that ofcourse has it's own complications. I hear Azure DevOps offers free unlimited LFS storage, but i personally wouldnt bank on that lasting forever

ionic creek
#

Thanks!

dry vapor
#

You could also use an AWS EC2 instance to host your perforce server, it's what I did in college. Epic has a learning video somewhere on it. All though I think the free tier caps out at 50gb

fading coyote
#

Any suggestions?

#

.vsconfig

{
  "version": "1.0",
  "components": [
    "Microsoft.Net.Component.4.6.2.TargetingPack",
    "Microsoft.VisualStudio.Component.VC.14.33.17.3.ARM64",
    "Microsoft.VisualStudio.Component.VC.14.33.17.3.x86.x64",
    "Microsoft.VisualStudio.Component.VC.Tools.ARM64",
    "Microsoft.VisualStudio.Component.VC.Tools.x86.x64",
    "Microsoft.VisualStudio.Component.Windows10SDK",
    "Microsoft.VisualStudio.Workload.CoreEditor",
    "Microsoft.VisualStudio.Workload.ManagedDesktop",
    "Microsoft.VisualStudio.Workload.NativeCrossPlat",
    "Microsoft.VisualStudio.Workload.NativeDesktop",
    "Microsoft.VisualStudio.Workload.NativeGame",
    "Microsoft.VisualStudio.Workload.Universal"
  ]
}
fathom igloo
woven sluice
tiny stirrup
#

xd

fading coyote
woven sluice
#

No, source code is not related to source control

fading coyote
dry vapor
pearl egret
#

Hi guys, is there anyone with tests setup on Helix Swarm?
I have an issue that my testjob failed on Jenkins because I have not setup any parameters in its body, but the test is still ongoing on Swarm side :/

#

And I dont see any way to cancel it.
Even restarting Swarm didnt do anything...

#

Do any of youguys know how to cancel a test currently in progress in swarm?

late jungle
#

Hey I know this has been ages, but did the recommended steps resolve your issue? I have pretty much the same issue atm.

tidal skiff
late jungle
wicked swallow
grave vortex
#

I’m trying to gauge cost expectations running a Perforce server in a cloud backend for a fairly large scale project (approx 20GB + history). Any recommendations for a particular backend?

woven sluice
#

Not more than 5 users? The cost of the server will be insignificant compared to the cost of perforce if you go over 5 users.

I use Gandi.net... Lots of other popular options if you look around... Digital ocean, linode, maybe Amazon

#

I spend around $20-25/mo on a server for 5 guys and 100GB storage, unlimited transfer

teal bone
#

Gandi.net, for when you need peace and REST apis.

cyan jay
worthy junco
#

Hi ! I have a question about general-workflow with outsource developers. Probably I need to setting up sounds for my project so I will hire a developer for this. But I don't want give him full access to the project with full code base. What should I do? In my head I have remote machine with project and files marked "only-for-read" . So developer can read and use it but not send to anyone. Are there any services that provide such capabilities? Or Do I need to use another solution?

late jungle
#

I have a perforce server running on a Digital Ocean droplet and I'd like to move it to the volume I attached to it. I know I need to move the root folder (by changing a config file?). How do I do that? Do I need to shut down the server for instance?

cyan jay
cyan jay
late jungle
cyan jay
#

that should be fine

late jungle
#

Ok thanks a lot πŸ™‚

cyan jay
#

recommend you take a backup first of course πŸ˜‰

late jungle
#

Well we have the project locally and the repo is kind of new so I think that suffices? Or should I backup the server itself as well somehow?

cyan jay
#

It's up to you! Worst case, you accidentally mess it up and have to build perforce server from scratch. You lose all your history to this point but you can restore from local files.
Maybe your VM provider allows you to take a snapshot of the machine you can use as a quick and easy backup?

late jungle
#

Ah that's a good idea

#

I was also thinking I could just copy the files instead of moving them. And if it worked, delete the old ones

#

But I'll do the snapshot, already found the option to do that

cyan jay
#

sure you can do that, as long as you can ensure your new p4d setup is referencing the new root

#

you should stop the p4d service before taking snapshot so it's in a known state

#

just in-case anyone is checking in files half way through

#

also... don't wanna be THAT guy but you might want to think about a proper regular backup system for your server.

late jungle
late jungle
cyan jay
#

snapshot backup is an OK solution but it has some drawbacks such as: how do you backup additional volumes? what if snapshot is taken while someone is submitting files?

Using proper perforce backup addresses these issues but is a lot of work to setup.

late jungle
#

Hmm okay I'll have to check about the volumes

late jungle
cyan jay
#

Depends πŸ™‚
Things you need to do:
Make sure server is regularly generating checkpoints (this might be done already depending how the server was setup).
Setup regular task to copy checkpoint and depot files to an offsite backup (I use wasabi but any files store will do).
Test your restore procedure periodically!

late jungle
#

oh boy this is turning into a much bigger task than I thought haha. But better safe than sorry I guess

#

So you're kind of setting up version control for your version control?

cyan jay
#

Well, you're just grabbing the files and metadata every night, or whatever frequency you decide, and storing them in a different data centre. Then if the datacentre goes down, or your instance gets corrupted etc, you have everything you need to restore the server.

late jungle
#

Yea okay makes sense!

#

@cyan jay so I'm fairly new to linux. I've been able to do everything so far and am getting used to navigating it. I'm trying to do mv perforce_depot -target folder name- and it says mv: cannot stat 'perforce_depot': No such file or directory. But I can just do cd perforce_depot and I'm in it. Also when I do 'ls' or 'tree' I can't see it but I can navigate to it. So i'm a bit confused about folders and file types and visibility here.

cyan jay
#

you gotta make sure the owner and group settings are preserved when you move them

late jungle
#

it shows up in neither

#

Mostly a bunch of db.something

late jungle
cyan jay
#

sudo <cmd> means 'run <cmd> as root user'
so sudo ls -l means ls -l as root user (so nothing should be hidden based on permissions etc

late jungle
#

Yea I figured. I meant I'm not sure what it means that it shows up in neither list

#

but I can navigate to it from root

cyan jay
#

that's... strange

#

idk maybe you could try in the #linux channel?

late jungle
#

ok thanks I'll try that!

cyan jay
#

oh hang on... the folder is /perforce_root ? if you do ls -l / does it show it?

worthy junco
late jungle
#

what does this mean?

#

ok so mv /perforce_depot seems to have triggered something. Should've probably added some argument to see what's actually goin on, but I assume it's moving the files right now

late jungle
#

Ok @cyan jay I got it moved to the volume and it's working again. Thanks a lot for your help! I'll look into backups as well

#

I read that the volumes of Digital Ocean are replicated over different machines to prevent any data loss. So I'm not sure if any additional backups are necessary. I can also take snapshots once in a while as extra measure. Do you think that's safe enough?

cyan jay
#

All depends on your appetite for risk! It sounds pretty good but they probably don't guarantee data integrity. I wouldn't rely on it for a company that was responsible for their clients data for example, but I might use it for a small company that was working on a prototype.

late jungle
late jungle
#

So when I initially set up our perforce I included a bunch of directories that should probably not be synced with the idea that nobody getting the repo would have to build lighting etc. Now I want to remove them from the repo, but if I do "mark for delete" the files will be deleted? So I can use a P4Ignore, but what happens to the files already on the depot that are now being ignored? Is there an easy way of cleaning that up?

cyan jay
late jungle
cyan jay
#

yep.

#

if you actually want to delete the versions from the server, you can use p4 obliterate command

late jungle
#

Oh okay so "delete" doesn't remove the actual files but removes them from version control? And obliterate actually removes the files?

cyan jay
#

well, the deleted files still exist on the server as older versions. if you don't obliterate them then you can sync back to an old version.

late jungle
#

Hmm ok. So delete removes any future revisions, but you can still access the original through perforce directly?

subtle adder
#

Hi!
I've a problem with the source control plugin for Unreal with perforce and a source built engine. Right now, assets using engine resources are not passing the plugin's validation, because they're not under source control:

wicked swallow
#

the grace what i linked is said the evolution to git what is centralized version control

late jungle
#

I have a perforce depot that was initially setup with a complete and large Unreal project. We didn't use p4ignore yet so none of us would have to build lighting etc. Now I've added a p4ignore after the fact (I know it's not ideal). Now we can sort of work as intended but I wonder if it would still be better to remove the files that are being ignore from version control entirely? Seems like a bad way of working with it, + all these files are read only which might also bite us in the ass later on. Thoughts?

grave vortex
grave vortex
indigo cloud
#

Is there a command that returns the sum of sizes of all LFS files in the repository?

vale basin
woven sluice
# late jungle I have a perforce depot that was initially setup with a complete and large Unrea...

in our team coders use a separate virtual stream which cuts out DLL files from their workspace, and artists use the normal stream which has DLLs. a build machine creates and uploads DLL files when there are code changes so that coders don't have to worry about managing DLL files, they just code.

if you just dumped a whole full running project folder in there without an ignore.... did you include Intermediates and Saved folders and other temp folders as well?

late jungle
late jungle
# woven sluice in our team coders use a separate virtual stream which cuts out DLL files from t...

Oh that's interesting. I was already thinking about what to do with that because I wouldn't expect everyone to build from VS but on the other hand it's not great to sync all that build output.

And kind of. I joined a long existing solo project and the dev removed what he felt comfortable with to start with. I knew it wasn't the right way, but I didn't know his project and setting up a perforce repo well enough to want to mess with it and figured I'd just exclude stuff after the fact. One of the reasons was stuff like light maps that take a long time to build, but I didn't know at the time those were in the same folder as the maps themselves so I guess I could've excluded a lot more from the start.

#

Actually I'm kind of considering setting up the repo again from scratch just to get the most out of the typemap and p4ignore

#

But on the other hand we have the benefit that setting up a new workspace comes with a lot of generated files so it might not take as (a lot of this might not change as the game is out in early access and changing those maps isn't planned in the near future).

runic summit
#

What's the trick to making perforce only keep a certain number of revisions for just ONE file ?

merry verge
#

change the type of that one file

#

in p4v, right click file > change type

#

this will not delete old submitted revisions

runic summit
merry verge
#

yes

woven sluice
#

perforce i hate you
this is the 3rd time in a couple years that it has just gotten some weird ass corruption on binaries files which i'm submitting from jenkins (everything else has always been flawless, literally just jenkins-perforce fucking up) ... have to go in and copy some dummy files in place to make p4d think that the previous rev of files is present... wtf. I guess this is what i get for being one of "those people" who commits DLLs

vale basin
bitter sun
#

quick question, do I have to do something extra to get undo'ed files to depot?
25 files branched

woven sluice
# vale basin wtf that's.... not good. Are you incorrectly stopping the service/daemon? are yo...

it is only seemingly caused by jenkins' p4 plugin, and only seemingly when parallel sync is enabled on the server. lol. twice it's happened before, and both times i solved it by ssh'ing in and copying some other random file .gz packages over in place of the missing ones to serve as scarecrows. but this time i'm extra angry going to try and upgrade the server in hopes it was just a bug in the verison i've been using since forever

maiden wedge
#

Hi everyone!

Quick question about perforce, does someone know how to exclusive checkout a file across multiple streams?

analog lodge
#

Quick question...Has anybody had some experience with setting up a perforce workspace on a cloud drive?
WeΒ΄re moving our remote office to box.com and ideally weΒ΄d save all our Unreal workspaces locally in our box-folder.
This way weΒ΄d have an extra backup should our perforce server break for example.
But IΒ΄m not sure if that would maybe lead to file locking conflicts or similar...
So maybe its better to save the Unreal workspaces on a separate drive and then set up a scheduled sync with a different folder on our box space, than the one we put the rest of our project files in?

maiden wedge
#

Install the P4 server engine, choose the same root for the repository, stop the process, and replace with the folder coming from the other PC

#

you should have everything working normally. Users, checkouts, history, etc

analog lodge
#

Testing it right now and so far no issues.

analog lodge
#

Well, some issues, but none that could not be resolved.
If I want to exclude the usual folders I exclude in perforce from being synced in the box app, I need to :

  1. unsync the folders
  2. Close the box sync app.
  3. Delete the folders in the cloud.
  4. Start the box sync app again.
    I tried unsyncing and then deleting the folders locally first, after unsyncing, but as soon as unreal started up, it created the folders again, and since they were in a synced folder, they automatically started syncing to box again.
manic shore
#

I added some of the paragon content to my project a few commits ago and my pushes to origin are failing because of azures 5gb limit. I didn't mean to include them in my commits and have since added them to my git ignore and done

git rm -r --cached .
git add *

I'm even tried removing my entire Content folder so it shows like this in git status, that is where basically my entire project is.

#

but no matter what I do, my attempt to push to origin shows the same number of Compressed Objects and "Writing Objects" and ends up being too big to push. From watching it try to commit it also seems like it is the same objects that are large.

#

there must be some solution to this or is my project just screwed as far as azure is concerned?

cyan jay
woven sluice
#

i would second noggs 100%, i see no good reason at all to do something this odd. if you really want something like this, use a program like Syncbak and just automatically dumb-copy your project over into your box.com folder once every couple days and just know that it "exists" in case you ever need it for some reason

#

if you ever need it, you will very likely and unfortunately already be undergoing problems so vast that you will not care about losing a day or two of work

elfin mural
#

Is there a disadvantage to using source control if you work alone? I like the idea of file versioning and UE5's autosave function is useless. Every time I crash and need to restore it tells me the files can't be checked out from source control even though source control is currently disabled...

cyan jay
elfin mural
#

What source control package do you recommend?

cyan jay
elfin mural
odd phoenix
#

This gitattributes for lfs is okay? would they add something else?

vague whale
#

hello, with perforce can i make a folder always RW?

analog lodge
# cyan jay Honestly, not sure why you'd want to do this. P4 workspace is designed to be loc...

We don't only work with unreal. We produce linear content for tv/commercials and we're trying to move all our projects to the cloud.
So, unless we are using two project folders on different drives/partitiona for each project, where one contains only unreal folder and the other contains everything else, we're gonna have all our local workspaces in the folder synced to our box account.
Hence the possible interference with syncing to box while perforce is syncing to the perforce server.

cyan jay
analog lodge
cyan jay
#

Well you can always try it if you need facts. Maybe I just don't understand WHY you want this folder synced to cloud. Especially if you have to do a dance regarding unsyncing folders etc. Unreal development produces a lot of 'temporary' folders in various places.

analog lodge
# cyan jay Well you can always try it if you need facts. Maybe I just don't understand WHY ...

I dont WANT to sync it to the cloud, it would just be the default, if we keep all project files, including the unreal project folder, inside the same drive, because the whole drive is a network mapped drive made from a folder in the box sync folder.
So, we'd have to create another drive outside that to store unreal folders, which just introduces an extra layer of possible confusion etc.

#

And which also needs a separate backup solution, on case our perforce depot breaks, which is running on a separate VPS in the cloud

#

Keeping Unreal stuff inside the top folder, but then unsyncing it might be an option, it requires additional steps every artist would need to take, but its probably not more than having to deal with separate drives .

#

And I AM trying and didn't have any issues so far, but you know, I don't trust that as empirical proof...:)

cyan jay
#

Please do not consider that to be a backup of perforce in any way. You have unknown state of files in each cloud drive, maybe not all files, no history etc. Perforce server should be backed up separately.

analog lodge
#

We don't really rely on history most of the time.
Like I said , we produce linear content , which is quite different from game dev.

#

If I.the perforce depot goes down, we just need to be able to at least open the unreal file from a different location.