#source-control

1 messages Β· Page 53 of 1

woven sluice
#

wonder if there's any hints in the popup dialog if you hover the mouse over the file?

#

does the icon look normal (white with a green circle)

twilit valve
#

Yeah, it looks normal.

#

It would seem duplicating the file and deleting the original solves the problem.

#

Thanks for your time, HoJo.

chilly elk
#

Just a quick question, when working on a project I keep making changes to the map as I add something new to the feature and when I push the commit the map will also be part of it. Now if I have another branch on which I made some changes and the map also got pushed. If I then merge the branch with master I will overwrite the master map which is fine, if I want to merge the 2nd branch I can't overwrite the map anymore as it has some changes this branch doesn't.

#

Does that mean that when working on a branch I should never update the map and only work on blueprints or files? Then I have to make another branch or work directly on master and update the map with the changes?

woven sluice
#

well. you can't merge maps or blueprints with UE. branching is arguably useless and should mostly be avoided.

chilly elk
#

I am asking because I am wondering how do teams handle working on a project at the same time?

woven sluice
#

you use file locking. or if you don't have file locking, you coordinate very carefully and hate life

quaint obsidian
#

Keep in mind that there are diffing tools within UE4 for conflicts, at least for blueprints. So when source control marks assets as conflicted, you should be able to compare and resolve them in editor. This applies for all Blueprint based assets, including Behavior trees, anim graphs, etc.

#

But of course, art assets and maps are not mergeable in any capacity

#

So yeah, it's just a matter of preventing people from working on the same unmergeable files at once. GIt, Perforce and Plastic support locking, not sure about the others

chilly elk
#

Interesting, I will take a look at at that tomorrow,

sullen mountain
#

I have setup GitLab and Sourcetree, but I find I cannot pull changes from the repository without exiting the Unreal project, appears to be a lock file issue. How can I leave the project open and pull changes and have them applied to the project? I can do this all day in Unity, but this is my first attempt with Unreal. Any help would be much appreciated.

merry verge
#

Use the editor to pull changes. I'm not using the git integration so I don't know exactly what it looks like, but there should be a "sync" or "pull" option either in the source control menu or by right-clicking your content folder

#

that'll let unreal gracefully reload assets as it needs to

sullen mountain
#

I have tried the default Git plugin, but it does not have a sync. There is a newer Git LFS 2, and it does have a sync, and it appeared to do what you said, I tried it last night. I guess I need to test it more. I am use to using git outside of projects, so, I was hoping to do it here also, but based on your commit, it sounds like I need to do it with the integration. Thanks, I will embrace the integration.

sullen mountain
#

Maybe I am doing something wrong, but my tests with Git are not going well. If I use the Git beta (the one included in the engine) there is no sync, so to do a pull, I must shut down the project. If I load up the Git LFS 2 plugin (UE4GitPlugin) it is really slow (like 10 plus seconds) to popup the commit box. It does have sync, so it can do a hot content load from the editor. Unless I am doing something wrong, I feel like git does not work well with Unreal. What do you think?

turbid harness
#

When i tried it briefly before i found it very difficult, the commands don't line up, since git has more steps than say perforce @sullen mountain

#

.
Speaking of perforce, i'm losing my mind over an issue. i added around 500 files to a change list, and when submitting perforce breaks the connection after just a few seconds. i tried this from the p4v visual client too

#

if i submit just 10 or less files from that change list, it works fine

#

ive searched all day (about 7 hours now...) and can't figure this out. the actual error i get is SSL receive failed. read: The operation completed successfully. : WSAECONNRESET

#

googling this gave me a lot of suggestions, but none of them worked. its just strange because everything works fine until i try to submit too many files at once. though i feel like this limit is very very low for a normal workflow of adding plugins etc to a project?

#

the perforce server is on the same LAN as me, submitting has been fine since i set it up last week. it just seems to choke on this bigger changelist

limpid obsidian
#

you're using SSL on a LAN?

jaunty hornet
#

@turbid harness I've had that before, is your server running on Windows? That issue eventually disappeared when I started using Linux which is probably not helpful at all

quaint obsidian
#

@sullen mountain The Git LFS slowness is just some errors in the plugin as well as some stuff within Unreal which the plugin isn't interacting well with.

sullen mountain
#

Thanks @quaint obsidian. We have a short timeframe on a demo, so I can't look into right now. I am thinking of using git without the integration and exiting the project to pull (oh, that makes me cringe just saying it). I have used Plastic before (in Unity), if that works well. Do you have a recommendation?

neat grotto
#

Oh snap. @quaint obsidian I didn't know you guys were sharing your custom build of Seb's plugin. πŸ‘€

#

I'll have to try it out during the Epic MegaJam!

#

I'm relieved to hear the slowness is related to the plugin and not Git LFS.

tough gale
#

Hi guys, do you know if Perforce is having some management issues atm?
They don't look like answering to emails

merry verge
#

how would anyone here know that without working there...

ornate willow
#

Can anyone share anything at all about how using an AWS ec2 instance went for you? Specifically I am wondering a very rough estimate of what you would get charged for going over 30gigs of space, which breaks you out of the free tier

quaint obsidian
#

Yeah. I've been trying to clean the branch up recently but it's a lot of work since our fork is a mess of patches, so it's still not as fast as it could be.

quaint obsidian
#

@sullen mountain Yeah that makes sense. I haven't used anything other than Git, so I can't make a recommendation but I have heard nice things about Plastic. Though, managing Git externally should work too if you're tight on time.

ornate willow
#

Like what custom plugin pfist is talking about above, are people successfully using git in editor, and having visual diffs, and no troubles with unreals binaries?

turbid harness
#

@turbid harness I've had that before, is your server running on Windows? That issue eventually disappeared when I started using Linux which is probably not helpful at all
@jaunty hornet sadly this is a linux VM on our network. actually dont know why its doing ssl by default, perhaps this is part of the problem. didnt ever have this issue when we were on windows with no ssl

chilly frost
#

Heyhey Lovely humans, anyone here has experience with the GIT beta source controll for unreal? Any pointers or tips? Something to worry about?

rotund bobcat
#

just don't us it in editor

#

there's plenty of great GUI's for git

#

like sourcetree or the github desktop app

sturdy lake
#

If you want to get a solid understanding of git, it's worth getting your head around the command-line, even if you do use it through a UI most of the time

coarse coral
#

I keep getting these popups, "Perforce password (P4PASSWD) invalid or unset" little messages when using visual studio and the perforce plugin alongside unreal editor being open. Does anyone know why? I'm logged in and I'm sure my session hasn't actually expired since I logged in only an hour ago(session is set to 12 hrs). I think unreal editor is trying to check out files or something, the credentials on there are good and logged in too...

coarse coral
#

It's reallllly annoying, not sure if it's the visual studio plugin or unreal yet....

limpid obsidian
#

@ornate willow use the AWS calculator to estimate your costs

#

@coarse coral use p4admin. create and assign yourself to a group that doesn't have a password expiry

coarse coral
#

@limpid obsidian so I get these popups very very frequently. When I'm closing them, it can be up to 20 popups..they keep popping up one after the other, that still sound like it's part of the password expiry? The more I work, the more it pops up every 30 seconds to 1 minute or so, I think it maxes out at 4 windows open at once(non-modal popups), then I have to close them, but more keep popping up instantly after I close one since it was like a queued thing...This feels like very errorneous behavior

ornate willow
#

@coarse coral it sounds like you need to log into your perforce server through command line, that's where you would set the P4PASSWD variable, it's independent from p4v

#

and is probably what VS is looking for

merry verge
#

That's incorrect, P4VS uses the same token storage P4V does so signing in to one will sign-in to the other. Unless they have something configured super weird...

coarse coral
#

yeah I also did login command line. Seems like this thing is happening off and on, if I restart visual studio there's a chance it doesn't even do that anymore for the whole VS session...I'm not sure what's going on :/

#

Like I just restarted VS and now it's ok again...

#

Maybe I logged into VS before I logged in to p4v earlier?...shrug

#

sad that no one else gets this thought it might be more common problem with some work around

merry verge
#

Never seen that before, I use P4VS all the time along with P4V. Might be an issue with the server rejecting the connection for some reason?

#

hard to say

coarse coral
#

I'll just keep an eye out of what situation triggers it. Thanks!

hushed granite
#

Hello there !

#

I don't understand Perforce Pricing. If I self host my server, can I have unlimited users or do you have to pay for each users after 6+ users ?

neat grotto
#

Self-host or not, you still need to pay for licenses when you add 6 or more users.

#

And your only option is to pay annually.

#

In other words: Perforce is either free (5 users or less) or starts at $3,500/year.

hushed granite
#

oh okay

woven sluice
#

also it is totally against the licensing agreement to share a login amongst multiple users and make use of the 20 workspace limit. totally against. i said nothing, you heard nothing

hushed granite
#

well thank you !

dreamy vale
#

its super loud

south ingot
#

Is anyone here using Azure DevOps for Git LFS repos?

quaint obsidian
#

I did for a game jam

turbid harness
#

@jaunty hornet figured out the problem! the ssl connection was screwed up, it would work for a short time (2-3 seconds) but if the transfer took longer the connection would always be interrupted

#

since we're working on LAN and its all trusted in the network, we disabled ssl and now everything is fine

slim jetty
#

@south ingot I'm using AzureDevops for Git LFS repos. I highly recommend it if you're planning to use Git. The free tier has unlimited LFS storage for teams of 5 or less. Works really well, as long as you use a custom version of the Git plugin for UE4 that properly supports LFS.

jaunty hornet
#

@turbid harness Thanks for the update, great job!

#

Right now with all this teleworking, I hope we won't encounter the same issue

turbid harness
#

yeah it was ubuntu VM running p4d default configs, with windows client

#

πŸ€·β€β™€οΈ

glossy summit
#

Any recommendations for source control for teams of about 15?

#

On a budget

merry verge
#

your options are basically perforce, plastic, or git. One of those is $$$, one is $$ and owned by unity now, and the other doesn't have quite as good non-engineer-focused tooling.

#

git lfs is probably the answer if you're on a budget

ornate willow
#

how about for hosting?

merry verge
#

For which? The only options for perforce are assembla (meh, also expensive but at least you don't need an even more expensive perforce server license) or to roll your own (AWS, Azure, GC, Linode, DO, any other VPS provider). No idea about plastic though I think they do have a hosting service themselves. For git you can use pretty much any common provider that supports LFS 2 - Github, ADO, Gitlab are all common options.

woven musk
#

DM if you are good eith epic endpoints and API will be paying good

vocal edge
#

hey guys and gals. I am having a super hard time trying to follow devsquad's UE4 tutorials cuz 1, its an older version, two, he goes way to fkn fast, and three, he messes up himself alot so i really am not learning crap from him. could someone suggest a video tutorial series that takes its time and describes things in depth for UE4? links would be much appreciated. youtube preferably

south ingot
#

@vocal edge Wrong channel

vocal edge
#

@south ingot cool

heavy linden
quaint obsidian
heavy linden
#

oh

heavy linden
#

This error

#

when I upload a respository

quaint obsidian
#

seems like a DNS issue

pallid ledge
quaint obsidian
#

what is your branch called locally

#

it should say it in the above command you did that also says nothing to commit

#

(git status)

pallid ledge
#

I have tried to push with github desktop; as the recommendation did not fix that. It seems ok; but push hanged up here

#

doing it with the cli; it was all kinds of messed up

quaint obsidian
#

it wasn't supposed to fix

#

it was to get further information

#

but i think its still uploading

pallid ledge
burnt shadow
#

man

#

don't you hate it when servers just like

#

hang up on you

languid escarp
#

in git, how do I refresh my fork's branch list with that of upstream?

quaint obsidian
#

you need to set up a remote for upstream

languid escarp
#

I have

quaint obsidian
#

then fetch it

languid escarp
#

I did

#

the problem is I'm not seeing some branches in my origin that are there in upstream

quaint obsidian
#

git push origin 'refs/remotes/upstream/*:refs/heads/*'

languid escarp
#

hm what does that command do?

quaint obsidian
#

pushes all refs from upstream to origin

#

git push <repository> <refspec>

languid escarp
#

ok so it won't be changing any files, just updates the branch list correct?

quaint obsidian
#

I am not entirely sure what it will do to existing branches on origin (that are also part of upstream), but I think it won't modify them without a force push

#

i can test it probably

languid escarp
#

that would be awesome

quaint obsidian
#
$ git push origin 'refs/remotes/upstream/*:refs/heads/*'
Total 0 (delta 0), reused 0 (delta 0), pack-reused 0
To https://github.com/ProjectBorealis/prefabricator-ue4.git
 * [new branch]      upstream/4.22 -> 4.22
 * [new branch]      upstream/4.23 -> 4.23
 * [new branch]      upstream/4.24 -> 4.24
 * [new branch]      upstream/4.25 -> 4.25
 * [new branch]      upstream/alt_ser -> alt_ser
 * [new branch]      upstream/construction -> construction
 * [new branch]      upstream/dev_4.25 -> dev_4.25
 * [new branch]      upstream/kaos -> kaos
 * [new branch]      upstream/thumb -> thumb
 ! [rejected]        upstream/master -> master (non-fast-forward)
#

I had to first refresh the refs by pushing one branch manually, and then I could wildcard it

languid escarp
#

hm do I need head or heads?

quaint obsidian
#

master was rejected because it was different from upstream

#

oh right

#

its heads

#

sorry :D

#

i think that might have been why it didn't work before

languid escarp
#

what if I ran it w/ head? :)

#

any damage?

quaint obsidian
#

it would just create references

languid escarp
#

it took a while, ran, but nothing changed

quaint obsidian
#

called head/branchname

languid escarp
#

I'll try w/ heads now

quaint obsidian
#

they will be garbage collected

#

because nothing references them

languid escarp
#

k it worked!

#

thanks so much

quaint obsidian
#

yep!

languid escarp
#

how do I generate a patch file that contains all the commits of a single author?

#

alternatively, if that's too difficult, how do I generate a patch file that includes multiple commits (SHAs)?

coarse coral
#

Anyone know how to force ignore a file that's already checked in to perforce repo? Was accidently not ignored..Do I have to delete it from the repo first?

merry verge
#

yes

coarse coral
#

:/ that's annoying.. have to back it up locally still then..

#

@languid escarp Aren't you the only author πŸ˜„

#

I imagine u can create branch from an old commit, cherry pick new changes maybe then diff the branch? If u need specific commits?

languid escarp
#

I have like 6 different committer aliases

#

but I've worked around it

pure oak
#

trying to get access to a project using github to download the zip for some reason this message pops up

#

when i open up the project the files are there but the contents are not

#

anyone know whats going on?

woven sluice
#

@coarse coral if you have admin access I think you can just obliterate it from the depot instead (don't blame me when your depot is RIP though harold )

coarse coral
#

@woven sluice I was keeping obliterate as a tool to use in case I needed it in the future...it can corrupt the depot tho? ... that sounds scary..

merry verge
#

It shouldn't corrupt the depot, but it can delete things forever.

#

basically, verify what it's going to do first - for the command line at least the default is it only lists out what it would do and you need to explicitly pass -y for it to carry out the operation.

quaint obsidian
#

a bit late, but you can use git log to list commits in a format that git format-patch takes and then pipe that into it

#

git log has a ton of tools for filtering commits

wide glen
#

So there are 6 of us and we will be making a level together. What tools/services should we use that are free? I've heard Multi user editing works on VPN and LAN only and we aren't on either. Also, for source control, Git LFS has a 1GB cap on it and Perforce has a 5 user cap on it.

#

Any solutions/workarounds please?

south ingot
#

Git LFS doesn't have a 1GB cap

#

Maybe you mean GitHub? It's not the only Git hosting

#

For example, GitLab has a 10GB cap

#

As for multi-user editing, you can make your own VPN over WAN with Hamachi or a similar program

wide glen
#

Cool. We're using Git for now. However, thanks for the suggestion πŸ™ , we'll definitely try it out later. @south ingot

rotund bobcat
#

also about perforce, users does not necessarily mean workspaces

#

you can have multiple people using the same user

#

depending on what work you're each doing you could also use multiple sub levels and use one general level to put them all together

#

e.g. we split our levels into 3 parts, a design level, an art level and a trigger level, but they're all sublevels of the actual same map

wide glen
#

@rotund bobcat perforce onboarding is terrible

rotund bobcat
#

not saying you should use it, just saying the 5 user limit is misleading

#

I use git myself as well

wide glen
#

doesnt 1 gb cap hinder?

rotund bobcat
#

there is no 1GB capacity

#

depending on your hosting I guess

#

we're on bitbucket and have wel over 200GB on our lfs server

#

of course there's a cost with large data

timid sage
#

Actually @wide glen is talking about git lfs on github

rotund bobcat
#

seems like the 1GB is the free limit, so if you want more you can pay for it

wide glen
#

yeah

rotund bobcat
#

makes sense that they don't give unlimited free storage space tbh

wide glen
#

we're looking for free alternatives

rotund bobcat
#

maybe gitlab has bigger storage? idk

south ingot
#

I already said it has 10GB cap

#

There is also Azure DevOps with unlimited storage but 5 user cap on the free tier

#

That's what I'm using

#

I switched to it from GitLab

#

Not expecting my team to grow larger than 5 people anytime soon

timid sage
#

There is also Azure DevOps with unlimited storage but 5 user cap on the free tier
@south ingot I think that's the same plan as perforce?

#

Pricing wise

south ingot
#

@timid sage As far as I know, Perforce doesn't provide free hosting at all

#

You will have to set up your own server

timid sage
#

Actually we are a team of 6 members, learning game dev. And as we are just students, we don't have a lot of budget.

So gitlab is the best option for us ig?

south ingot
#

Yeah, looks like that way

#

Unless you drop one member πŸ˜„

timid sage
#

Alright, thanks!

south ingot
#

GitLab worked very well for me

timid sage
#

That's great to hear!

rotund bobcat
#

doesn't github have some student extras as well with bigger storage and stuff, or do they not do that anymore?

timid sage
#

Didn't think of that, let me check

wide glen
#

@rotund bobcat how was your experience with perforce?

rotund bobcat
#

like I said, I use git myself, I just know the user thing is misleading to most people

#

no experience with perforce personally

timid sage
#

What user thing are you talking about?

wide glen
#

oh okay

rotund bobcat
#

the fact that 5 users does not necessarily mean 5 people

timid sage
#

I don't think it's mentioned 5 users anywhere?

rotund bobcat
#

perforce is free up to 5 users afaik

#

but you can have multiple workspaces under the same user

#

user is more like access level in that context

wide glen
#

@jaunty solstice wanna chip in more input?

#

it seems GitLabs is the most viable option for us at the moment

timid sage
#

perforce is free up to 5 users afaik
@rotund bobcat Is there any data limits for those 5 users?

rotund bobcat
#

again, I've never used it, so I don't know

wide glen
#

cool, thanks for the help @rotund bobcat @south ingot πŸ™

woven sluice
#

the free Perforce license is strictly limited per login/workspace count, no other limits

#

5 logins, 20 workspaces, no limit on server otherwise. a workspace is like a "mapping" of what a user is working with from the server, and is tied to a computer by computer name. workspaces are just owned by logins.

#

@timid sage

sturdy lake
#

I don't believe you can set up multiple servers that can talk to each other on the free license

woven sluice
#

maybe, although I've never seen any evidence of that... haven't tried either though since I'm in a small team and it'd be kinda pointless πŸ˜„

severe orchid
#

I was actually looking at source control options. Its only for me and my wife so we can use SCM for multi-user editing. Is P4 the best option for us ?

#

We don't have much money .. yet !

south ingot
#

If you plan to run it on a local server, then yeah

#

If you want something in the cloud, then Git LFS on GitLab or Azure DevOps would be much cheaper (free)

rugged jacinth
#

What tends to be the approach for doing code reviews in UE4 projects? Coming from other engineering backgrounds I'm used to pull requests or something similar...is this something that is done regularly in UE4 game development?

#

We're currently planning to use azure DevOps w/ LFS, still testing it out to see if its viable.

#

I already said it has 10GB cap
@south ingot Can you pay to lift that cap? Is that just the free tier? or is it a hard limit.

south ingot
#

It's a hard limit, they want to implement some way to expand it but it's not available yet

rugged jacinth
#

ah, fuck.

#

welp, going to assembla then for hosted perforce. That was a fun diversion.

#

its crazy how little diversity of choice there is for hosted options.

south ingot
#

Azure DevOps is unlimited if you want Git LFS

rugged jacinth
#

@south ingot how difficult is it to work with that?

south ingot
#

It works the same way as GitLab basically

rugged jacinth
#

I'm not familiar with that, sorry.

south ingot
#

Did you work with Git at all before?

rugged jacinth
#

yes

#

but never with LFS

south ingot
#

You would need to set up .gitattributes to specify which file extensions should be handled by LFS

#

That would be .uasset files primarily

#

These files would be treated as "black boxes", and Git won't try to diff them - it will simply store each version

#

Everything else, i.e. the actual souce code, is handled the same way you're familiar with

rugged jacinth
#

is this different than what perforce will do for us?

#

I know perforce is more centralized has checkout constructs, but does it handle diffing of these .uasset files differently??

south ingot
#

No, it does the same thing with these files, as far as I know

rugged jacinth
#

ah ok

south ingot
#

They're both doing the same job ultimately

#

Before LFS was implemented, Git would try to handle big binaries the same way it handles text files, and it would choke on them

#

LFS was made to fix this issue

rugged jacinth
#

can you share an example .gitattributes file?

#

or know where I'd find one

south ingot
#

Hold on, I'll share the one I'm currently using

rugged jacinth
#

appreciate it!

south ingot
#
*.umap filter=lfs diff=lfs merge=lfs -text
*.wav filter=lfs diff=lfs merge=lfs -text
*.tga filter=lfs diff=lfs merge=lfs -text```
#

That's it

rugged jacinth
#

cool, and do you have to actually lock/checkout assets?

#

using the LFS construct, that all works?

south ingot
#

Yeah

#

Locks are supported too, I think you need to enable them on your local Git installation before you can use them

#

But it tells you about that the first time you work with an LFS repository anyway

#

Even supplies the command that does it

rugged jacinth
#

OK I did that part.

#

thanks for the explanation, we'll stick with Azure DevOps for the time being then and save some money.

quaint obsidian
#
[attr]lock filter=lfs diff=lfs merge=binary -text lockable
[attr]lfs filter=lfs diff=lfs merge=binary -text
# Unreal Engine file types.
*.uasset lock
*.umap lock
# Steam Audio files
*.phononscene lfs
*.probebox lfs
*.probebatch lfs
*.bakedsources lfs
# Binaries
*.exe lfs
*.dll lfs
# FMOD
*.bank lfs
*.wav lfs
*.mp3 lfs
*.ogg lfs
*.flac lfs
# Icons
*.png lfs
*.ico lfs
*.icns lfs
# Movies
*.webm lfs
*.mp4 lfs
*.wmv lfs

here is my .gitattributes, has locks enabled too ^^

rugged jacinth
#

@quaint obsidian thank you!

quaint obsidian
#

the merge=binary instead of merge=lfs makes it so it keeps the integrity of the file, but marks it as conflicted if there is ever a conflict

#

that way, you can easily load the file in ue4 and compare the two revisions instead of the default git lfs behavior of making it an invalid pointer file which can't be loaded by UE4

rugged jacinth
#

Awesome this is super helpful

sturdy lake
#

maybe, although I've never seen any evidence of that... haven't tried either though since I'm in a small team and it'd be kinda pointless πŸ˜„
@woven sluice we set up a remote a year or so ago, and needed a paid license for that (which we already had, but it was something that I clocked in the docs)

ornate willow
#

Thank you mastercoms, I just updated our .gitattributes using your lock and lfs attributes at the top, that is sure handy, I had sat there and typed out each type lol. Our team is trying out your git LFS 2 plugin, so far so good!

stuck raptor
#

Hey there!
I want to set up the multiuser team editing using a VPN on google cloud. Has anyone have experience how to start to do that?

frail falcon
#

I have perforce up and running using the default port but this is causing problems, how can I chang the port it listens on? the docs say to change "P4PORT=ssl::PORT" but no instructructions on where to change it

#

nevermind I reinstalled and set a different port but still unable to connect from a remote machine πŸ€”
Firewall was blocking it πŸ˜†

torn compass
#

Does anyone know how to setup a perforce .p4ignore file that works out of the box for all users?

buoyant berry
#

ok im about to loose my mind

#

so

#

ok this is fine and dandy

#

the file in question aint friggen there

#

its like ah yes delete this to push

#

but it just dosent exist

quaint obsidian
#

it's probably in one of your commits (will have to rewrite your commits) or it's your editor pdb

inland maple
#

Hey all, I'm not sure if this is the right place to ask this, so please direct to me the right place if I am mistaken. When I try to publish my git, I am hit with this error message. I understand what the error is but I have no idea how to find the files that exceed the size limit. Could anyone help me out? Thank you.

cyan jay
#

@torn compass the best I have found is to checkin a .p4ignore file to the root but still need to get each user to setup p4 command line with their workspace settings and to run p4 set P4IGNORE=.p4ignore
Maybe you have a bat file all users run or something you can use?

#

I wish there was a better way

torn compass
#

Ahh a bat file is a good idea actually! I might have to give that a try. It can be quite hard explaining the command line stuff to an artist sometimes

cyan jay
#

yeah but you still need to ensure p4 command line is setup which is a pain
so my usual method is

  1. Right click on the BAT file in p4v and choose Open Command Window Here
  2. in the cmd type RunMe (or whatever the bat file is called)
#

maybe a Custom tool can be automatically imported and the user could run that...

forest cradle
#

hello guys, i am new to unreal engine and i need to make source control

#

now github is not possible

#

even with gitignore and LFS still need to pay money to make it work

#

i heard that people use perforce

#

is the Helix Core free ?

#

or how much of storage does it give me

#
Helix Core Is Always Free For Small Teams
Just because your team is small doesn’t mean your needs are. That’s why Helix Core is free for up to 5 users and 20 workspaces.
#

the storage is not mention does that mean it's unlimited ?

south ingot
#

It doesn't give you any storage, you will have to find a server to actually run it

#

It's not a cloud service

#

So either install it on your own computer with however storage it has, or rent a server from Amazon, Digital Ocean, etc

forest cradle
#

ok so that means it's up to my own storage

#

what is the best option around for paas ?

south ingot
#

There are recommendations in the Pinned Messages

#

I don't use PaaS myself, I use Azure DevOps

#

It has a Git LFS option, and the storage is unlimited for teams of up to 5 people

forest cradle
#

oh nice

#

@south ingot thanks

floral field
#

When I am setting up source control it is not making the .git file in my project folder, any suggestions on how to fix?

quaint obsidian
#

@floral field .git is hidden by default

forest cradle
#

@quaint obsidian thanks

floral field
#

Thank you

restive chasm
#

where should i start to learn about source control ?

limpid obsidian
cyan jay
#

great vid πŸ‘

inland maple
#

When I try to publish my git, I am hit with this error message. I understand what the error is but I have no idea how to find the files that exceed the size limit. Could anyone help me out? Thank you.

rugged jacinth
#

@inland maple you'll need to buy more storage for GitHub...but, I'd recommend you checkout Azure DevOps if you wanna use git, its free for large projects and has LFS locking support which you might want.

#

I had a bad experience with GitHub/UE, but a slightly better experience with Azure DevOps

merry verge
#

That's not the error they're getting. The issue is github doesn't let you store files > 100MB (unless using LFS), it has nothing to do with repository storage limits.

rugged jacinth
#

Yes, sorry, the assumption is you need to use LFS.

#

but you still pay for storage costs there as well.

merry verge
#

The solution is to use LFS migrate on large files.

#

Even if moving to ADO that should be done.

rugged jacinth
#

where you'll get 1 GB of free LFS storage, but you'd need to continue to purchase additional space.

#

ADO has more flexible pricing was my point.

#

its fundamentally the same functionality.

quaint obsidian
#

@inland maple You can see the file list in terminal/console/command prompt output. I am not sure where to access that in GitHub Desktop, but perhaps you could open git bash or some other terminal, and enter git push to get the full error log.

spiral oasis
quaint obsidian
vivid nacelle
#

When I try switching branches via Github Desktop, my files update in file explorer, however when I open my client it doesn't see the new files. I have tried clearing binaries and importing but the new files don't show up. Any ideas?

wispy kettle
#

How's people's experience with using digital ocean with multiple users?

#

For perforce?

quaint obsidian
#

@vivid nacelle what do you mean by client

wispy kettle
#

Do people get charged for users accessing the droplets via perforce?

merry verge
#

@wispy kettle There's nothing special about DO, you're just renting a VPS and what you do with it is entirely up to you. They don't charge you based on what you do with it (though you do need to be careful about bandwidth limits). Perforce itself is free up to 5 users, and $$$ for more than that.

wispy kettle
#

Ah yes that's reasonable. This will help me clarify things.
Thanks @merry verge

jolly fog
#

Hello guys I use source tree as a program for source contorl, I have worked with it since 2018, yesterday I created new projetc in gitlab and I decided to go in source tree and clone the project, I got the link from there, the window for loggin popup up, I did it, and then it wrote me that the link is invalid, how I can fix this error?

jolly fog
#

how i can fix this error?

sturdy lake
#

If you click Clone on the webpage and select HTTPS, that’ll give you the link to use.

jolly fog
#

yeah

#

I got it from there

#

again same shit 😦

#

@sturdy lake

sturdy lake
#

It could be because it's a private repository

#

I tried adding a gitlab repo into SourceTree with a public repo link, and it seemed happy

jolly fog
#

oo yeah

#

the repository is private

#

I did it private cus noone to have access to it, only the people who are invited

#

so?

sturdy lake
#

Do you have SSH keys already set up in GitLab?

#

If so, you can use the SSH link instead of the HTTPS one

#

Otherwise, I'd set up a remote account, using the link at the top of the SourceTree screenshot you posted

jolly fog
#

I don't think I have ssh key

#

it asked me when I installed source tree and I asnwered with no

#

so what to do to fix this problem with the cloning?

sturdy lake
#

have you tried linking your account?

jolly fog
#

where?

#

on source tree I need to link an acc?

#

what acc?

sturdy lake
jolly fog
#

aa

#

let me try

#

I tried to login with gitlab

#

and I reset my pasword

#

and it again doesn't accept my password

#

hmm

sturdy lake
#

Have you followed the instructions linked to?

jolly fog
#

I am following them

#

if I add all of the scopes will it be problem?

sturdy lake
#

I couldn't say. It would probably be fine

#

I don't use GitLab myself, so I couldn't say for sure

jolly fog
#

A OKAY

#

ops caps πŸ˜„

#

okay I created it

#

now what?

#

I created it but idk what to do next

#

hmm

#

I logged with the token instead of password

#

but now the link again has problem

rotund bobcat
#

if you check in your tools options, is there a git version installed?

#

maybe you skipped it during sourcetree setup

jolly fog
#

which menu exactly

rotund bobcat
#

tools > options

#

but your authentication also needs to be in order on your account probably

#

dno how gitlab does it, but with bitbucket you can just pick oAuth2, so idk if gitlab has that as well

jolly fog
#

but again problem with the link

rotund bobcat
#

in the git tab

#

does it show a version or something

jolly fog
rotund bobcat
#

maybe try update embedded

#

that might help

jolly fog
#

which to update?

rotund bobcat
#

the button that says "updated embedded"

jolly fog
#

oo yeah

#

sorry

#

didn't see it

jolly fog
#

anyone?

#

I still have this problem

#

I can't start working on the project

jolly fog
#

I tested now with new repository which is public and it detect it

rugged jacinth
#

when using perforce, is there a good template for what files should be ignored? Also how does one designate ignored files/directories in p4?

inland maple
#

@rugged jacinth @quaint obsidian Thank you. I will try your recommendations

jolly fog
#

okay so my project in gitlab is set to private cus I want noone to have access to it, but now I can't push update-howI can keep the project safe and be bale to push?

sturdy lake
#

SSH keys is the best way to go for that

jolly fog
#

idk how I can do ssh keys

#

but I remember that the previous times I didn't use ssh keys

#

and I cretaed the projects private

#

and I didn't have problem with clone, push or pull

#

when I am the woner of the project and the project is set to private and I only use it why I can't push updates when I am added to the project? hmm, no sense bro

sturdy lake
#

Not a clue

jolly fog
#

okay

#

didy ou use source tree before?

quaint obsidian
#

you can use git credential manager core

jolly fog
#

what is that?

#

I didn't hear it before

quaint obsidian
noble knoll
#

oh HELL NO

#

microsoft bans you for whatever reason and you lose all your accesses at once, fuck that

quaint obsidian
#

this doesn't use the cloud

#

it just uses your OS' credential store for git credentials

#

it also uses oauth so that you can easily configure authentication using a personal access token for services like GitHub, Bitbucket, Azure DevOps

#

it's entirely local software, besides the oauth sign in to your git provider

#

@noble knoll maybe I misunderstood, but I don't see how this enables Microsoft to "ban" you and lose all your accesses

noble knoll
#

ah thats better

velvet kayak
#

I've setup source control with AWS (Windows Server 2019) and Tortoise for local editing. But how do I exclude the 'save' and 'Intermediate' folder?

south ingot
#

Add them to .gitignore

velvet kayak
#

I'm using SVN.

#

Found that I could exclude them via Tortoise options. But that's only locally I guess.

rugged jacinth
#

Any Assembla P4 users here? Wondering what folks are doing to continuous delivery/build pipelines from hosted perforce contexts.

hexed minnow
#

I am not assembla user for now, but I researched much about CI in cloud and concluded, that it should be cheaper to host CI on a local machine, as you need big amount of space and cpu performance for builds. Didn't find acceptable cloud solutiilons for it. But you can try to calculate aws/azure/etc price for dedicated windows server machine with enough characteristics and compare it with self-hosted solution.

#

At least if you plan to develop something greater, than tiny mobile game

#

I would recommend JetBrains teamcity as CI platform, but it depends mostly on your peeferences and project specifics

lavish sluice
#

I made a branch in perforce because I was afraid of breaking some blueprints. I ended up fixing those blueprints, but now I've got this second branch that I can't delete because unreal says it's referencing assets in there. I tried merging them, but that didnt seem to do anything. Does anyone know how to fix this? I don't have much experience with source control as you can probably tell.

quartz valve
#

After not using source control my game project almost got corrupted

rotund bobcat
#

very cool

quartz valve
#

I've learned my lesson

sturdy lake
#

Glad to hear it

heavy barn
#

Could someone please point me in the direction of a tutorial that will help me set up source control for free(Not with Github Please)

velvet kayak
#

@heavy barn Try to Google Unreal Source Control with VisualSVN and AWS . You should find Some guides.

floral field
#

Github is free, when you try to pair it with gitlab then it costs money.

#

However you can also use a free version of perforce hosting it on your local machine

rotund bobcat
#

Git is free, Github and GitLab are both hosting services that have free and paid tiers

sturdy lake
#

As is bitbucket.

@heavy barn are you averse to git as a whole, or github specifically?

jolly fog
#

Hello guys I created my project in gitlab and I set it as private cus other people don't see it and now I can't clone it, I remembered that 5-6 months ago when I created my previous project and i set it back again to private and I was able to clone it, hmmm

rotund bobcat
#

what does it say when you try to clone it

jaunty hornet
#

I'm trying to rollback a .uasset in Perforce/P4V and I'm getting the error Failed to rename xxx.uasset after 10 attempts: Cannot create a file when that file already exists

rotund bobcat
#

are you renaming it to something that already exists?

jaunty hornet
#

I assume so, I'm trying to revert its version back to a certain revision

frail falcon
#

Do settings I change in project settings get copied by version control? I want to make sure all team members have the same VR optimizations.

rotund bobcat
#

depends if they're tracked by your source control

#

try changing them and check in your source control GUI of choice

frail falcon
#

looks like it does, you get a message to ask you to check it out when you open it

woven sluice
#

@jaunty hornet left your UE project open?

jaunty hornet
#

ah yes, that might have been it

agile glen
#

So what are you guys choosing for game jam source control? Digital ocean? Assembla? Something else?

merry verge
#

Either use github/gitlab/ADO/etc for git or host perforce yourself (DO or any other common VPS provider is fine). There are no good cheap hosted perforce options.

agile glen
#

Wait, isn't assembla free for the game jam? Or is it free to use on your pc… but doesn't privide a server?

#

Yeah their website claims exactly that

merry verge
#

Sure, but what happens after the game jam?

#

Assembla runs a pretty expensive perforce hosting service. I genuinely don't know what happens after the jam is over and wouldn't touch assembla unless I found out (and hosting a p4 server yourself isn't that hard anyway)

merry verge
#

Ah, they delete repos 14 days after the jam. Meh.

agile glen
#

Well, the running plan is this: Use their services for the Jam, then host the server on my own pc if the game is to be further worked on

rugged jacinth
#

I think somewhere I saw a utility that can retroactively retype perforce files if I update my typemap...does anyone know where that might live?

smoky trench
rugged jacinth
#

@smoky trench THank you!

#

@smoky trench reading that script...how does it actually work? Does it enumerate each file?

#

oh retype can take an expression can't it...

smoky trench
#

Goes through each line in the type map and applies it to the server

rugged jacinth
#

I see and the //depot/.... tells it the subtree expression to apply?

smoky trench
#

correct

rugged jacinth
#

OK this is less mystical than I realized.

smoky trench
#

so it shouldn't go outside of the realms its been told to work within in the typemap

#

just says hey this existing typemap value i have set, re-apply it

#

so as you said can retroactively fix files

rugged jacinth
#

I kinda wish it just did that on its own lol

smoky trench
#

It's destructive, that is to say you can't revert the change. So i understand why

#

But I feel you!

#

In practice i've never had any issues with it

rugged jacinth
#

yeah I forgot to do it in advance

#

is all

smoky trench
#

yeah i feel you, happens all the time

#

especially when working with UE

rugged jacinth
#

yeah, it's been a wild ride attempting to vendor the engine and what not in perforce.

#

Finally got it.

#

didn't want to have to checkin all the inflated deps/compiled binaries.

smoky trench
#

haha yeah

rugged jacinth
#

does retype actually update files in the server-side depot? not just locally?

#

I couldn't tell if all my devs need to do this typemap step

smoky trench
#

it's server-side

coarse coral
#

So not sure if anyone else gets this but I've figured out how I get all these "password expired" popups from MSVC perforce plugin. It's when my session times out, but even if I log back in using p4 login, I still need to exit MSVC and reopen my project. Again I basically get this pop up anytime I'm typing or touching any file in MSVC once my p4 session expires, and so before I knew about this I was confronted with numerous popups(20+) and they build up in the background as I touch and save files. Still not sure how to solve this without the workaround... Basically I'm on MSVC all day, 16 hrs and my password is set to expire at 12 hrs

frail falcon
#

So with Perforce I need to install the perforce tools to each desktop that will be using unreal, and then pull the initial project using that, before logging in to unreal and turning on the version control

frail falcon
#

cannot actually figure out how to pull a remote copy to a new machine using perforce πŸ˜„

woven sluice
#

@coarse coral is there some reason why you don't want to simply change your password expiry time?...

rugged jacinth
#

@frail falcon did you setup a workspace in P4V?

coarse coral
#

@woven sluice I did not want to shorten the password expiry, but I think there's no good reason to not do that just my own biases. So I set it to 20 hours expiration and that works out. Just wish they handled this in the plugin.

woven sluice
#

I think my tickets are going to expire around when joe biden's first term ends HaroldHaha i'm sure i'll be mighty confused when i get that popup. and then another ~6 years later...

coarse coral
#

oh geez haha...

frail falcon
#

@frail falcon did you setup a workspace in P4V?
@rugged jacinth I sorted it in the end πŸ˜„ found a good youtube video on it

gentle pond
#

Greetings, all! I'm looking for some git guidance here.
So I have an active project in a git repo with a lot of pieces of it in their own branches. The file and branching structure kept growing and we didn't have the time to refactor/reorganize it until now.

Now I need to rename some assets and move a lot of them around to fit into a more logical and organized system inside our Content folder. How can I do this without messing up my teammates' work in all the other branches?
My initial thinking is to do the reorganization in master and have everyone else merge it into their branches. Would this be ok? Is there anything else I need to do or consider for this process to work? I really don't want to explode the repo..

quaint obsidian
#

Unfortunately, Unreal doesn't play nice with Git rename detection because moving assets also changes their binary content, which rehashes it in Git LFS.

#

I think you can explicitly mark a rename with git mv, but I am not sure how this works with the Unreal editor.

gentle pond
#

oh no.. i didn't think moving would change the file content pepeHands

lethal willow
#

Hey guys, anyone have any perforce experience that can lend me a quick hand?

#

Basically im a new user and I would just like to revert my depot / workspace to a changelog. But I am having trouble getting it to actually revert / delete the files in the depot that had been added.

twilit valve
#

Good morning. On getting latest in Perforce, I'm seeing this error: Gzip magic header wrong!

Does anyone know what this means and how to fix it?

pastel wren
gray dust
#

Hi all, currently using Perforce, all working very well so far, had no issues but I have a query.

Is there a way you can "Mark a folder for add" inside UE4? the only way I can seem to get this to work is to add all files inside folder, this works but very time consuming when there is a lot of files.

How would I go about this? as when I've tried to add the folder manually add "mark for add" inside P4V i had tons of errors when uploading

crystal estuary
#

Recommended VCS for a team of 2-3?

sturdy lake
#

Code or content?

crystal estuary
#

content

sturdy lake
#

Free perforce, then

crystal estuary
#

That's what I thought

#

ty

sturdy lake
#

you're welcome

#

Perforce is good if you're doing content, as it locks the assets so once one person has it checked out, the other people can't edit themn

#

If you're all remote, though, you'll have to figure out a way to host it

crystal estuary
#

We're all remote

#

Is there like a free perforce server for small teams? how does it work?

#

Cause github is free

sturdy lake
#

I don't believe there is, I'm afraid. I think there may be some free VM hosting services, and you could set your perforce server up on that

#

but you'd have to configure it all yourself

crystal estuary
#

Okay thanks!

sturdy lake
#

Good luck!

noble knoll
#

@crystal estuary you can put the server in a raspberry pi and host it yourself

#

there arent free vms that can run perforce around. And if they are, its a scam

#

another alternative is SVN

sturdy lake
#

Does SVN do file locking?

#

Also, git theoretically does file locking, but I've never managed to get it working successfully

#

With hosted git solutions, you'll probably come upon git lfs limits

rotund bobcat
#

git lfs does locking, git itself not afaik

sturdy lake
#

Sorry - yes - I meant git lfs there

rotund bobcat
#

svn does have locking options, although I've never used them myself either

sturdy lake
#

If you're happy to lose older revisions you can keep your git lfs size down

noble knoll
#

git lfs is absolutely terrible. Github LFS is so expensive you are better renting your own servers

#

at PUBG we used SVN

#

on a multionational level

#

400 gb of a repo + terabytes of source assets

#

worked perfectly fine

#

in fact

#

faster than perforce

#

a lot faster

#

the main lack of SVN vs git and perforce is that branching sucks

#

very hard

#

but if you are an indie dev which wont really work on a branchy workflow, its the best source control

sturdy lake
#

Interesting to hear. Thanks for that.
I’ve not used SVN in 15+ years, I think.
For a 90% code project, with some supporting content, I’ve found that git/git LFS works fine for me, but we’re a very small team

#

We use perforce for our content-heavy projects. Maybe we should look at svn for those though..

noble knoll
#

git is the absolute best for code

#

by a mile

#

but the problem is that git just cant handle binary files at all

#

even on LFS repos bloat super quickly and super hard

#

so you need something else

#

SVN is basic, but its a centralized server

#

so you can just keep throwing more TB hard drives at it

#

i shudder to think how fat the pubg server was

#

perforce does binary deltas very well. it does not bloat

#

git: bloats everything, gets slower by repo size massively with lfs
svn:bloats server, keeps clients light
perforce: solves both, but its a massive pain to use

#

the thing with LFS bloat in git is that github repo costs are huge

#

so you will be paying 1000+ a month in no time on LFS fees on a medium sized unreal project

#

a typical unreal engine repo goes into 20-100 gbs very easily

#

each developer is likely to do a full repo copy every week

#

github LFS costs 5 euros for 50 gb of bandwidth, so its easily going to cost 30-40 euros per dev per month

sturdy lake
#

Thanks - that's really interesting

#

Do you use file locking in SVN?

#

I'm very interested, based on this, to look at shifting our content projects over to SVN from Perforce. Perforce is pretty expensive, and I'd love to shift to something else that offers the same flexibility. I'd want to find a nice UI for artists

crystal estuary
#

I'll look into SVN too

#

Could it be that Perforce won't let me submit files that are not of english characters?

rotund bobcat
#

maybe non-unicode

severe orchid
#

Any of you use devops(tfs) as source control with visual studio ?

gloomy vessel
#

hey i was wondering if anyone has any experience working with several people in an unreal project over vpn. We finally managed to get into the same world and we seem to be able to make minute changes and have everything be consistent with non-host editors, but if we try to make any changes larger than wall movement, only the host editor can see it. We have github set up for all of us including the large file storage and the github desktop, we also enabled the large file storage in the GitHub CMD prompt. After doing all this it still wont accept files any larger than 100mb. This is making it almost impossible to make any actual changes together. Any help would be greatly appreciated!
[10:16 AM]
Our map size is 1.9GB an the file type is a .umap

severe orchid
#

that is with Multi user editing right?

#

My experience using it with my wife was not very good when i tried it about 1-2 months ago, we kept disconnecting.

#

Cant wait to see it working flawlessy

gloomy vessel
#

Damn, well thanks for the feedback. Just trying to figure out how anyone collaborates without being in the same office space. You would think they would have something ironed out, especially with Covid

merry verge
#

You enabled LFS, but did you add umap as a file type for it?

#

You have to explicitly tell git what types of files to store via LFS.

dire kraken
#

Yes I added it. I entered git lfs track "*.ump" an it said that it was being tracked. So I tried to push it to Github but it came back with the error that the file is too large to push to Github

#

Paw and I are working on the same project, just so your not confused as to why I'm replying lol.

#

thanks for you help btw!

merry verge
#

did you actually track *.ump or was that a typo

#

because it's *.umap

dire kraken
#

ooops that was typo

#

its umap*

merry verge
#

had you already committed the map before enabling LFS?

dire kraken
#

It was enabled before the map was added yes.

merry verge
#

Can you post your .gitattributes file?

dire kraken
#

sure just a min,

#

here's a screenshot

merry verge
#

It sounds like your map wasn't committed with LFS for whatever reason. Attributes look fine, you can try having LFS rewrite the commits with this:

# dry run
git lfs migrate info --everything --include="*.umap"

# actually perform the migration
git lfs migrate import --everything --include="*.umap"

You may need to force-push after that (and anyone else may end up needing to re-clone the repo).

dire kraken
#

okay, thanks a million silliex, I'll give this a try and see what happens.

#

still getting this error " The push operation includes a file which exceeds GitHub's file size restriction of 100MB. Please remove the file from history and try again. "

#

it stops the push when I get the error.

merry verge
#

Try and figure out what file is actually causing that

#

might not be the umap, could be a uasset (you could try the above commands with uasset instead)

dire kraken
#

okay will do.

chilly frost
#

For those who are willing to test out new things a short tip for source control:

We are currently using** GIT bash + Google Cloud **for source control and its incredibly well to work with. Easy Setup (5 Minutes per Artist), minimum pricing (1€ per seat), the fastest servers you could dream of using for source control and pay per demand kinda made me fall in love with it.

Only downside is that you have to use GIT which is a bit artist unfriendly but if you keep things well organized inside your project you are ... well that's what you should do anyway! .. pretty safe :D

Wanted to put that out there if anyone ever searches for it.

gloomy vessel
#

@merry verge hey this is what im getting on my end when trying to download his content

merry verge
#

The error is as it sounds, you've hit storage quota for github

#

need to buy more or use another provider that gives you more space for free

gloomy vessel
#

is @chilly frost solution viable do you think?

merry verge
#

Probably, I don't know anything about google's hosting.

#

doesn't even list if they support LFS on the product page

#

Azure DevOps is probably the one I'd look at, they don't have any hard limits on repo size or LFS size. And it's free.

gloomy vessel
#

Thanks man, you've been a huge help. we will check into that

solar iron
#

Hi, asking for a friend who decided to work with Unreal for an animation project. Generally these project can get quite large, with lots of models + animations etc. Some of the work is going to be done on Maya. What source control program would you suggest using?

merry verge
#

git with LFS or perforce

#

those are the default answers

solar iron
#

Thanks, what is the size limit of perforce?

merry verge
#

size limit for what? repository size? None, you have to either host it yourself (so the only limit is the server's disk space) or pay assembla $$$ to host it for you.

solar iron
#

Gotcha, thank you. I know git+LFS provide 1GB of space and monthly bandwidth

#

This is helpful, I appreciate it.

merry verge
#

that's only for github, other providers have different limits (and github you can buy more)

#

Azure DevOps is "unlimited", though you'll probably get a notice if you use an absurd amount of space. Not sure what gitlab has.

chilly frost
#

@gloomy vessel @merry verge Yeah we also where kinda worried because of the lack of LFS in their documentation but quickly realized that they do the same as LFS to any data there - basically removing the necessity for LFS alltogether. I am sure you know the joy I felt at that point.

#

Perforce sadly does only work if you are a small team of max 5 ppl and it quickly becomes an issue if you have a broad team of part timers working main jobs AND on your sideproject.

gloomy vessel
#

at the moment it is only 3 of us, so you think it would work best?

chilly frost
#

perforce

#

most reliable

#

but

#

it scales badly in underfunded projects

woven sluice
#

you can cannot violate the license agreement and use shared logins for perforce to make use of it up to 20 workspaces (I'm going to keep saying this until perforce comes out with an indie-friendly pricing plan fasteyes )

#

but yeah, if you get a big team and/or want to work on lots of projects with one server, you may be forced to eventually bend over hard

chilly frost
#

look @woven sluice if YOU want to advertise those ideas maybe dont do it in a public space ...

#

also thats a great way to get your business fucked after the fact

#

so if you want to be professional

#

you dont xD

woven sluice
#

oooh you don't want to know what i do for a living HaroldHaha

#

it's ok, I pay anyone who actually deserves it. Lol. (and I hope one day to "need" to pay perforce too! rainbowbin )

chilly frost
#

Well as I said in my post prior to all this - you can just go GIT and G Cloud and you are better off in my opinion. I did the talk with them and the per seat pricing ... no. Just no.

woven sluice
#

it's hard for me to believe how limited we still are for VCS's. and hard to believe Perforce just ignores the indie market like they do whylikethis

chilly frost
#

I wrote their CEO on linkedin

#

guess what

#

he didnt react xD

sturdy lake
noble knoll
#

not just at PUBG

#

SVN is way more used at serious productions (not indies) than git is

rotund bobcat
#

big game development never uses git cause of the headache with binary files

#

literally all studios that I've seen talks of at unrealfest were using perforce

sturdy lake
noble knoll
#

in asia they use SVN a lot

#

basically all korean/japan/china games are on svn

#

not sure if nintendo uses it, probably

#

i do know that its completely widespread on korea companies

sturdy lake
#

After our conversation yesterday, I've put it on my list of things to look into before our current Perforce licenses expire in October next year. We do multiple small projects, so it's not like we have a big codebase that we'd want to transfer over - we could start newer projects on SVN while keeping on-going ones on Perforce

frail falcon
#

Hi, whats the workflow for perforce when I first open UE to sync any changes other team members might have made over the previous day?

#

I thought it might be right click > sync the root folder in the content browser but this takes ages, there must be a better way?

dusk dove
#

you don't open unreal to do that

#

you use P4V, click the root folder, and get latest

frail falcon
#

ok so before opening UE you need to check for any changes that may have been made

dusk dove
#

yes

#

I always open P4V first and put it on the second monitor where it remains open all day

frail falcon
#

Ok thanks that works but for some reason it thinks the project was built using a different engine version, it was not they both built from source yesterday....

dusk dove
#

?

#

you need to build it after sync

frail falcon
#

I was not distributing the engine with source control but might do that too.....
I am currently on revision 8 after testing different things to figure out perforce, I now want to roll back to revision 6,
I know I can right click revision 6 and get the revision which will make all my local files the same as revision 6.

How do I remove revision 7 and 8 and make revision 6 the "latest"?

frail falcon
#

Anyone?

dusk dove
#

project binaries are not compatible between different custom engine builds. either everyone builds everything, or you set up the full stack with UGS

#

to revert the file just right click revision 7 in the history, select "undo changes", and then select the option to revert the selected and all following versions

frail falcon
dusk dove
#

yes

frail falcon
#

I will give it a go thanks

dry vapor
#

I just started using perforce with UE4 and is there a way to have UE4 Source Control feature 'respect' my p4ignore file? It seems to keep trying to add files that are stated to be ignored and keeps throwing this message:

frail falcon
#

@dusk dove Just trying this now, I do not see an option "select the option to revert the select and all following versions"

dusk dove
#

you're on the submit screen

#

that's not where I said it would be

frail falcon
#

Oh it sent me there after the previous screen

#

p4 undo -c 11 //depot/Content/AVRFramework/Experiences/Demospace/Maps/Streaming/...@5
p4 submit --parallel=0 -f submitunchanged -i
1 error reported
Out of date files must be resolved or reverted.
Submit failed -- fix problems above then use 'p4 submit -c 11'.

woven sluice
#

Just in case you weren't already aware, the way you revert in any VCS is basically to create a new change with the old revision's data in it. You can't just literally "erase and go back" like you might think if you're new. The undo command helps set up a new change list like this

#

@frail falcon

rotund bobcat
#

well, in git you could revert to the old sha and force push to get rid of all later changes

frail falcon
#

ok I think I understand

vale spindle
#

Hi guys! I'm looking to learn from others' first hand experience with Plastic SCM. I have not found enough on the internet to convince a 15 ppl team to migrate to it. How stable/streamlined is its integration with UE4 to date? Is Glueon really that good for Artists? How does it fare when used on 100GB+ project? Has anyone setup an on-premise server? Has it required lots of maintenance or has it been ok on its own for the most part? How friendly has it been to CI/CD and the likes of Jenkins?

#

Everything I find is about Helix Core... is that because Plastic is not that good on UE4? Or simply not enough people have tried it yet

merry verge
#

The reason you see helix core (perforce) everywhere is that it's been around for decades and is industry standard - no one has really managed to unseat perforce, especially for large teams. The problem is their pricing is shit for indies (hope you have multiple-thousands to spend per year if you have more than 5 users... or use assembla for cloud hosting which still isn't cheap)
Plastic seems to support everything you'd want from perforce (with the nicety of gluon) but I don't think many people have experience with it. Not entirely sure why, it's been around for a while (though not as long as perforce). One thing to note is they've recently been acquired by unity, though they said they're operating the same and won't pull support for other engines - take that as you will.

#

Their featureset looks to be pretty great, supports everything good about perforce and it seems to have some niceties from git as well if you need them. Can't speak for how well it actually works though.

vale spindle
#

Yeah, that's were I've gotten to. On paper Plastic is the Holy Grail of VCS. But I can't find enough about it on practice, which makes me wonder if that's due to not matching expectations for the people who have tried it

#

A lil' bit of "too good to be true" vibes happening right now

merry verge
#

Might be worth just trying it for 1-2 users and seeing what it's like. Unfortunately your alternative for 15 people is generally going with worse tools (git, svn) or lots more $$$ (perforce)

vale spindle
#

Thanks @merry verge . Appreciate your replies ❀️ If anyone else currently uses Plastic SCM I'd love to know about your own experience with it!

sturdy lake
#

Does UE support Plastic out of the box?

merry verge
#

No, plastic themselves have a plugin for it

sturdy lake
#

Cool

sturdy lake
#

Does plastic support file locking? I’m looking at their feature list and can’t see anything about that

#

@merry verge

sturdy lake
#

Awesome - thanks for that

olive solstice
#

Hi, we are currently our perforce server on our "server" machine and connecting to that. Do you guys know if I can do that with plastic, and what's the free user limit that way?

vale spindle
#

I'm gonna keep you guys updated if I find anything of interest, but I think I'll end up doing what was already suggested and just try it by myself and another 2 devs and see how it goes

merry verge
#

gl, definitely interested in hearing how it turns out. I've thought about trying it but never made the jump because perforce works just fine for personal stuff, and I don't have to think about the $$$ for work stuff.

smoky trench
#

@open bone has been using plastic for awhile! Got any thoughts on it vs p4?

open bone
#

hi

#

yeah, i like it way more than p4

#

you can treat it as a server/client system (we do internally)

#

it's very flexible

#

I like how good it is at branching, although UE4 doesn't support branching assets very much at all

sturdy lake
#

Very cool - good to hear from someone who has actually been using it.
It’s a shame that UE doesn’t have the ability to merge blueprints - that would be a game changer

open bone
#

yeah

#

i would task-branch my entire workflow

sturdy lake
#

I do a lot of straight code, which I use git for. Looking for an alternative to p4 for our content-based projects

open bone
#

the nice thing about plastic is that it acts like git with code, and p4 with content

#

so you can put both in hte same repo

sturdy lake
#

Cool. Sounds interesting. I’ll have to see what kind of integration it has with JIRA

open bone
#

i dont use jira internally, so i wouldn't know

sturdy lake
#

Im JIRA/bitbucket most of the time for my code stuff.

open bone
#

it has a pretty scriptable system, so you can extend it

#

i wrote a 'post to discord' post-commit hook

#

wasn't too bad

sturdy lake
#

I’m fine to stick with my workflow, but it’s everyone whose on perforce who I want to shift

#

Interesting

#

I’ve got a release script that does things like getting issue descriptions from Jira to build a changelog

jolly fog
rotund bobcat
#

pull

jolly fog
#

Someone... Please... Been Bashing my head on this for 3 hours...

I'm using a Mac, using GitLab set-up by my Friend, and I'm trying to push , but the following error came.

rotund bobcat
#

the remote contains work you do not have locally means there's some changes on the repo that are not represented in your local checkout

#

so you need to do a git pull first

jolly fog
#

Okay sorry but I'm a complete beginner

#

Let me try

#

So I have to write, git pull?

rotund bobcat
#

yes

jolly fog
#

Yes did it

#

And then again I wrote git push -u origin master

#

And the same error

#

Exact same error

rotund bobcat
#

and what if you just type git push

jolly fog
#

Then this comes

rotund bobcat
#

well run the command that it says to run

#

git push --set-upstream origin master

jolly fog
#

Same Error

#

I Ran the Command it told me to run

#

Same error

rotund bobcat
#

what about a git branch -u origin/master

#

or something like that

#

the / might have to be a space isntead

jolly fog
#

Let me do it :P

rotund bobcat
#

well

#

do a git fetch first I guess

jolly fog
#

I did

#

Nothing happened

#

(9r it didn't show anything happened)

#

It has something to do with branch name

rotund bobcat
#

do that last command

jolly fog
#

Which one

rotund bobcat
#

the git branch...

jolly fog
#

Fatal: Refusing to Merge unrelated histories

rotund bobcat
#

so did you like create a local master branch after one already existed on the remote

jolly fog
#

Yes...

#

Yagneshs-iMac:annihilated yagneshsuthar$ git pull origin master
warning: Pulling without specifying how to reconcile divergent branches is
discouraged. You can squelch this message by running one of the following
commands sometime before your next pull:

git config pull.rebase false # merge (the default strategy)
git config pull.rebase true # rebase
git config pull.ff only # fast-forward only

You can replace "git config" with "git config --global" to set a default
preference for all repositories. You can also pass --rebase, --no-rebase,
or --ff-only on the command line to override the configured default per
invocation.

warning: redirecting to http://gitlab.purplethings.co.uk/Pedgey/anihilated.git/
From http://gitlab.purplethings.co.uk/Pedgey/anihilated

  • branch master -> FETCH_HEAD
    fatal: refusing to merge unrelated histories
sturdy copper
#

Hey guys! Have you released the EU4.26 source code for download in GitHub?

rotund bobcat
#

This discord is not an official epic discord channel

#

but you can always get the latest code of any version on github

sturdy copper
rotund bobcat
sturdy copper
#

Thanks man!

vale spindle
sturdy lake
#

The risk is that if the content is changed on both branches, you can't then merge it, and you'll have to pick which side to use

#

UE4 supports branching fine - what it doesn't support is merging assets, and without merging, branching is (mostly) pointless

vale spindle
#

Oh ok, so the main issue is locking looses its value if locks are not shared across branches, and that is the case

sturdy lake
#

yup

vale spindle
#

And there's no way to share locks across branches?

sturdy lake
#

I'm not sure

#

I've not used Plastic SCM

vale spindle
#

https://forum.plasticscm.com/topic/21509-preventing-locking-across-branches-forking/

Here some guy is complaining about the fact that Locks ARE shared across branches, so that wouldn't be an issue. In fact, perfect for our workflow

sturdy lake
#

ah - very interesting

#

cool

merry verge
#

I don't see how locking across branches is at all useful. If I modify a file on branch A and then check in, the file is no longer locked and I can still make a change on branch B afterwards - locking doesn't help at all except to make it annoying to work on different branches.
The only way it'd help is if making a change in one branch locked out other branches until they integrated changes, but that workflow isn't good either.

vale spindle
#

But if the branch is merged back (and therefore the modified files checked-in) that's the perfect moment to allow ppl in other branches to pull master into their branch and start working on the now free file

#

I don't think Plastic will let you checkout a file that you don't have up to date

#

But that's a good question. Maybe it does allow you to lock something that is not up to date, and then the problem you mention would be really bad

merry verge
#

Not being up to date is irrelevant - when you branch, the new branch can lag behind master (or jump ahead of master) and still have files edited. That's the whole point of branching. If you're not using that, why even branch your content?

#

Locking across branches breaks so many things about branching. What if you need to make a fix in a release branch only? Are you really going to lock out all other branches from that file because you need to make a fix in a single branch? What if the content you're fixing is tied to a code change but you're not ready to integrate both back to master? Are you going to prevent all artist work outside of your unstable branch?

#

The better way to do it is to fix your workflows. Content/binaries don't branch well, period - nothing you do will change that unless someone comes up with a good merge tool. Ideally you make all content fixes in master (and then integrate into whatever branch you need the fix in) except in the case of branches that will never integrate back (i.e. release-specific fixes). Then you only need single-branch locks and don't need to worry about other branches.

#

I know that workflow isn't always realistic, but the alternatives aren't any better imo.

vale spindle
#

Well, I know our team and our needs, and I can ensure you that having 7 artists working on master (full binary), 2 tech-arts (~80 binary/20 code), and 5 developers (80 code, 20 binary), I do see global locks useful.

99% of the time locks by artists and tech art will be on master, and me as a dev will love to be notified that tech-art is using the one/two binary files I needed to tweak to fully integrate my new code that I was developing on a branch, so I don't do work that's gonna be discarded when resolving merge-conflicts

#

The release branch scenario is bad though, and I don't like the release repo workaround, but it's not a dealbreaker for us

merry verge
#

Hmm... I can see the utility for locking from master -> other branches (provided those aren't release branches). The reverse seems dangerous, though, and ofc the release branch scenario makes no sense.

#

Honestly I wonder if p4's strict branch typing would be useful here. You create branches specifically as being "development", "release", "task", etc and it changes how you're supposed to integrate between them.

vale spindle
#

Yeah.... I'd be huge if they allow teams to tweak lock "shareability" to meet their needs (as suggested in the forum post). We'll see

#

The good news for me is that I have enough data to at least convince management to go on the 30-day trial. I'll be more than happy to share the experiment results here in the future

jolly fog
#

hi

#

i did the right tutorial with github

#

now i had to do setup at windows batch

#

after 45 procent the command prompt stopped and now i cant do anything anymore

#

it says checking dependencies and do nothing

#

help xD

agile glen
#

Hey guys, I know this one of the dummest issues with p4v and ue4, but when I try to connect to my workspace, ue doesn't see any in the available ones

#

the same Project that I got by pulling it from the server

#

So, one day its connected to source control, the other it fails, why..?

molten marsh
#

You can manually enter your Workspace name.

#

If it doesnt find it automatically.

agile glen
#

Souce control: failed to connect to source control

molten marsh
#

Then either the details are wrong, your Source Control server isnt active or (least likely) the Firewall is blocking it.

agile glen
#

server's up, its a digital ocean server, and the status shows green, and it looks active (bandwith going in and out and such)
Cant be firewall, because then It wouldn't have worked yesterday
Okay, so it was the details. Its crazy how many times i looked at them, and only now realized there are columns instead of dots between the ip numbers

#

thanks.. for making me look again! πŸ˜›

#

But this is still weird.. Why would it change the dots to columns? That makes no sense

coarse coral
#

rebase?

#

@queen mulch

#

rebase master into ur branch

#

you can still do the merge ...but I think rebase is what you want

#

This one's good explanation

#

I still use the git desktop app btw, I just like my UI

coarse coral
#

Anyone know why the source control plugin in UE sometimes doesn't check out assets(actually a lot of times for me, like 30% of the time it doesn't). I have to use "reconcile offline work" and it almost always finds uassets that were modified but not checked out?

jolly fog
#

Is there any point in committing .log files? They fill up my changes whenever I do anything very trivial and I am thinking of tossing that file type into my .gitignore

#

Also wondering about .ini files

#

Let me know if you have any idea please, thanks! πŸ˜„

woven sluice
#

well

#

the entire Saved folder should not be in source control

jolly fog
#

Ok thanks, I had no clue

#

Is there anything else that shouldn't be shared amongst project members that would normally be included by putting the project location inside the local repo?

#

I saw someone online recommended Intermediate, .log, and .bin files

#

I used a generated .gitignore so I am surprised it did not already have those

woven sluice
jolly fog
woven sluice
#

HaroldHaha πŸ‘

jolly fog
#

wait

#

this is the one I already have πŸ‘οΈ πŸ‘„ πŸ‘οΈ they are identical

#

but git was still recognizing changes in .log files which I assume the only ones are under Saved

#

yeah its the log file under Saved... whut

#

I think my local stuff is just bugging out cause it doesn't even recognize that I have write permissions in my organization, this is strange

woven sluice
#

well then. time to focus on why your gitignore isn't working :[

sturdy lake
#

If a file is already tracked by git and is then added to .gitignore it won’t be ignored. This only works for untracked files

#

So if you added those .log files before setting up your .gitignore, then that’ll be your issue here

jolly fog
#

welp so that will also be an issue but I found the solution to that

#

the main problem is that I had the gitignore one file up from the subdirectory it was referencing files in

#

I will just edit in /[project name]/Saved*, etc and hopefully that will work once I push to remove with the naughty files cached

sturdy lake
#

Sounds good

jolly fog
#

thanks I think it worked 😭

#

Yep :D

frail falcon
#

with perforce if a team member has checked out the project no one else can open it until its checked in, how do multiple people work on a project?

sturdy lake
#

Only check out the files you're using planning on changing

#

Don't check out the whole project

#

You can set UE to check out an asset as soon as you make any change

#

Or if there are a bunch of blueprints that all work together that you're working on, check them all out

frail falcon
#

does anyone have a link to a full multiuser workflow? all the YouTube videos I have been able to find are just setting up the project and committing changes, no examples of multiple people having to work concurrently.

woven sluice
#

there's no difference? everyone just does... that

#

perhaps the info you're missing is that you simply can't have two people working on one blueprint or one level file at the same time @frail falcon ?

#

and I guess you have to "get latest" or "pull" other peoples' work

#

and there are also some complications with binaries/DLL files if you have artists on the team but it sounds like you're not quite at that problem stage yet

rotund bobcat
#

there's actually also multi user editing for maps if you're on the same LAN

jolly fog
#

oops wrong screenshot

#

what does that yellow thingy means?

sturdy lake
#

That’s not a source control thing

#

That means that the UBT command had the ide specified directly rather than doing it through the editor settings

#

It may be because you put -2019 in there - is that to specify VS2019?

#

Oh yes - from the yellow text it is

#

To be honest, the yellow thing is pretty self-explanatory

jolly fog
#

okay thanks πŸ˜„

#

also i got this and my editor stays at 39 procent is there any solution for this ?

#

i did everything like this tutorial
https://www.youtube.com/watch?v=tOy0xYaP3wA&t=11s

This video is the first part of an extensive and informative tutorial on how to integrate Amazon GameLift with Unreal Engine, going over concepts such as GameLift architecture, how to build Unreal Engine Source on Windows 10 using Visual Studio 2019, and making a new C++ project in Unreal Engine Source. In the process, we also go over other thin...

β–Ά Play video
#

im at 18:49

#

after i restart the computer it stops at 45 procent, its like hey how many times i have to restart the computer

merry verge
#

How long have you actually waited?

#

It's likely compiling shaders, leave it alone for a while.

rotund bobcat
#

depending on your pc setup it might take quite some time yeah, the first time needs to do all the editor content

robust bluff
#

I am getting this in source tree when I try to push my project to the remote repo for the first time:

Uploading LFS objects: 100% (4/4), 1.3 GB | 0 B/s, done.
POST git-receive-pack (chunked)
error: RPC failed; curl 18 transfer closed with outstanding read data remaining
fatal: the remote end hung up unexpectedly
fatal: the remote end hung up unexpectedly
Everything up-to-date
Completed with errors, see above.
rotund bobcat
#

have you tried pushing again a few times?

robust bluff
#

several times

rotund bobcat
#

in sourcetree it uses a specific LFS media filter, try turning that off in the options maybe

#

idk where it is exactly anymore

robust bluff
#

hmmm

rotund bobcat
#

Lfs media adapter is the term I think

robust bluff
#

oh yea found it that is disabled

#

i've tried the htpp.postBuffer thing

rotund bobcat
#

are you using http or ssh?

robust bluff
#

ive tried both

#

it's because i hit my cap i think

#

just got an email

rotund bobcat
#

oh maybe, idk about that

bitter sun
#

Anyone used Plastic SCM before? I just created a cloud account but it always fails to connect to server when I try to create a repo

vale spindle
#

where you able to solve this? If not I can help you, I'm a bit of a git power user

vale spindle
bitter sun
#

There are 3 server locations on SCM and I am using closest one, prorably about firewall, let me check it out

#

Looks like firewall is not blocking it, I am also running plastic as administrator

vale spindle
#

tag me directly if you have any further issues. I've probably already gone through them

vale spindle
bitter sun
#

Dont worry, thanks a lot anyway. Only suspicion I have at the moment is my ports, because I've followed the guide on the Plastic website and did everything 1:1, either Plastic servers is down or I have a networking issue πŸ˜…

vale spindle
bitter sun
#

Thank you!

robust bluff
#

I am getting this error when trying to push to github.

Enumerating objects: 17410, done.
Counting objects: 100% (17410/17410), done.
Delta compression using up to 8 threads
Compressing objects: 100% (15791/15791), done.
error: RPC failed; curl 55 Send failure: Connection was aborted
fatal: the remote end hung up unexpectedly
Writing objects: 100% (17410/17410), 4.79 GiB | 69.98 MiB/s, done.
Total 17410 (delta 1548), reused 17394 (delta 1533), pack-reused 0
fatal: the remote end hung up unexpectedly
Everything up-to-date
#

This is when I try to push the entire project, I marked .zip, .uasset, .umap for lfs

dry vapor
#

Does anyone know why Perforce isn't requiring me to check things out? Whenever I edit something in the editor, it pops up saying "File needs to be checked out" so I click the "check out" option on the pop up but it never checks the file out.

#

Nothing requires checking out. None of my assets nor scripts. It just allows me to edit and save freely but will never make a revision unless I manually checkout the file.

woven sluice
#

tough based on what you described but you might have Allwrite enabled in advanced workspace options @dry vapor

dry vapor
#

I was hoping that was it but it's not. These are the settings in advanced workspace options:

woven sluice
#

ok, so describe more what you mean by "but it never checks the file out" - if you click "check out" in UE and then open P4V, it hasn't been added to the default changelist?

dry vapor
#

Correct.

#

Before, it would pop up this dialog box whenever I would save an asset (this exact picture is from my project but it's the same dialog box):

#

Sometimes when editing something, such as a BP, I'll get this pop up in the bottom right (this is the pop up I was talking about specifically in my original post). and when I click 'Check-Out' nothing happens.

#
  1. One of my assets, an animation blueprint, now prompts the checkout dialog box (even though I didn't change anything to Perforce), and 2) I'm not sure if this log is related to the issue?:
vital fulcrum
#

hey guys does anyone know a guide on setting up a perforce server on a linux machine ? i have attemted to get it done a couple of times but no luck

dry vapor
#

There's a section on this guy's site covering that iirc: https://allarsblog.com/

If there isn't one there, perforce should have something covering that on their site.

dusk dove
#

follow the official guide for package based installation

vital fulcrum
#

@dusk dove I'm afraid i have already tried that

dusk dove
#

well where did it go wrong?

robust bluff
#

i am using git source control

#

and every single time the engine is crashing because of a umap and its build data. I have to go and re-do some work, then when i try to save it it tells me to save the .umap and built data. So i do, then i push my fixes to git. if i close the project and re open it, it will crash on startup

forest shale
#

Anyone have experience with setting up perforce? I have an ubuntu server which I would like to host it on. But can't seem to work out how to.

merry verge
boreal pilot
boreal pilot
#

There are package based and non-package based installations for Ubuntu. I would recommend the package based approach if you don't have specific business needs and/or it's your first time.

The basic overview is: 1) setup Ubuntu 2) verify pubkey and download/install p4 package with apt, 3) run the p4d helix config (default /opt/perforce/sbin/configure-helix-p4d.sh to interactively set the parameters for your server instance, 4) connect to p4d using p4 and accept the fingerprint (if using SSL)

There are a lot more complicated intermediate steps, especially if you want to have a robust, production ready installation.

vapid kettle
#

Hello, just a quick question what is better, GitHub or Perforce?

sturdy lake
#

It depends on how you want to use it

#

Is your project mainly code, mainly content, or a mix?

vapid kettle
sturdy lake
#

Then Perforce is a better option for you

#

You could also look at SVN and PlasticSCM

#

Git (GitHub is just a website that offers a cloud git service - there are a few git options around) is great for code, but not good with larger binary files

vapid kettle
#

alright, thank you very much man!

sturdy lake
#

you're welcome

dry vapor
#

Is anyone familiar with how I'm suppose to move files around in the content browser when using Perforce as my VCS? I moved a blueprint to another folder and this is the result:

#

The top one being in Content/Blueprint is the location I moved it too. The bottom one in Content/ThirdPersonCPP/Blueprints is where it originally was. Perforce, along with File Explorer show it being in both places but inside the editor there is nothing at Content/ThirdPersconCPP/Blueprints.

sturdy lake
#

That's because it'll be a redirector in Content/ThirdPersonCPP/Blueprints

#

In the Content browser, under Filter, you can enable "Show Redirectors"

#

This is there so that any other BP referencing this one doesn't have to be changed.

#

If you right-click on the folder on the left side, and select "Fix Up Redirectors", it'll remove this, and you'll also find that any other asset referencing it will have changed

dry vapor
#

Oh. That makes sense.

sturdy lake
#

πŸ‘

dry vapor
#

In regards to just using Perforce, is it a bit 'overboard' to use it for just a solo dev project? I started using it because Epic mentioned on their educational livestreams that it was much more common in the industry so I wanted to get a little bit of experience with it but I've just been running into headache after headache. For just working by myself, Git felt more appropriate. But I also might just misusing Perforce πŸ€·β€β™‚οΈ

sturdy lake
#

If you've got a lot of .uassets, then git will get very unwieldy very quickly

dry vapor
#

Hmm. My project is mainly cpp but the amount of .uassets would build up quickly I suppose.

#

I'm certain at this point that I messed something up somewhere. I was having issues where I couldn't build my cpp files, then having an issue where UE4 wouldn't check anything out even though I had set up the Source Control in engine (it did work for a while then just stopped checking anything out entirely.) It also wouldn't respect the p4ignore if that makes sense. It would keep trying to save assets that are specified in the p4ignore to be ignored which keeps leading to an annoying error popup. I just don't know where I went wrong ;-;

#

Thanks for the help and information though πŸ˜ƒ

warm shoal
#

When i try to save modifications to an asset i get a dialog 'Check Out Assets' with the options 'Check Out Selected' or 'Make Writable'. What does it mean and what should i choose?

#

(SVN)

#

Ok, so i guess "check out" means "lock" in unreal? usual version control "check out" means create a working copy, but in this case it already is checked out

sturdy lake
#

"Make Writable" means "I don't want the source control system to do anything, but I want to make this file not read-only any more"

#

ah - yeah - "Check Out" is Perforce terminology

#

I would never use "Make Writable" unless I can't access the server and need to change something

vapid kettle
#

how do I connect with someone's perforce

#

it's pissing me off

#

okay, I figured this out

#

but this thing is showing now ;/

woven sluice
#

cloning to the local server wtf

#

how did you fix the first error, that might give clues as to why you're getting the second error. have never seen it before but it almost sounds like you're running a local p4d server and connecting to it, and you're trying to simultaneously use/pull work from a remote server or something

merry verge
#

The solution to the first error should have just been to create a new workspace...

#

Sounds like they initialized a local instance of p4d instead.

woven sluice
#

@vapid kettle ping

vapid kettle
#

@woven sluice I already fixed it

#

had to search through docs and shit for 2 hours

#

but thanks for response anyway πŸ™‚

woven sluice
vapid kettle
#

guys what the fuck is going on

#

I'm cloning perforce data for like 3 hours

#

and it only got 400 MB

woven sluice
#

is it someone's server running at home with poor upload? Β―_(ツ)_/Β―

vapid kettle
#

no

#

it's a hosted server

#

@woven sluice

woven sluice
#

weird. it does run single-threaded normally (one file at a time) so if the workspace contains several thousand tiny files it will go slower than if it contains a hundred big files. but that still sounds oddly slow

vapid kettle
#

if I would download it through my internet it would take 3 minutes

#

for f*ck sake

quick slate
#

I have a perforce CLI question that is quite noobish.
I am trying to perform a p4 copy in a batch script, with a branch mapping.
this is my batch script so far

p4 login [user]
p4 -c [workspace_name] sync
p4 copy -b [branch_mapping]
p4 submit -f submitunchanged

however it fails on line 3, saying that No target file(s) in both client and branch view.
That workspace I change to is the target of the branch mapping.
I just can't see what im doing wrong at this stage and it has driven me up the wall a little.

#

also, huge fan of branch mappings being called branch views in the documentation most of the time

#

I've also tried having p4 change between lines 2 and 3 but no dice

#

probably using change wrong tho

woven sluice
#

@quick slate before you get too far i might just ask: are you confident in your reasons for wanting to use branching? are you comfortable with the fact that you cannot work on anything in unreal in two branches at the same time and merge it back together?

#

or wait, is this to duplicate stuff between depots

quick slate
#

@woven sluice its to merge a plugin from its development location to a project implementing it. Entirely uni-directional, hence the copy rather than marge.

woven sluice
#

Ah ok. Are you using classic or stream depots?

quick slate
#

stream depot