#source-control

1 messages · Page 33 of 1

celest hinge
#

can anyone here help me out with compiling UE4 with UWP packaging becaue everytime i try it messes up heaps

gleaming star
#

anyone got a good guide for setting up streams in perforce?

desert willow
#

Lesson learned don’t delete a file that’s linked to your source and then try reverting a change

#

File(s) “wtf is this .7 file..”

cloud bay
#

what option is the best for an online server for perforce

#

Payed is no problem

#

its priority to have an easy set up

#

Only had local server and not hosted

median heart
#

If you're fine with setting it up manually on Linux, I'd say a cheap-ish VPS would be best

#

Vultr has $2.50/m VPSs on the bare minimum, but I'd say you probably want to go for at least the $5/m one

#

DigitalOcean is great too, but a bit more expensive

#

I guess that all depends on what you consider "easy" setup though—personally, I think the command-line setup is pretty concise and pain-free, but someone with less experience might not....I get that

cloud bay
#

Went for digitalocean

#

😃

cloud bay
#

Its a bit tricky to set up perforce on the server

#

and we apperantly got a DOS attack so need to redo everything 😦

#

Is the allar guide outdated? we could not get it to work properly. Something wrong with the part when perforce restarts qutomatically on the server if the server restarts

haughty ember
#

Yeah

median heart
#

Did you try setting it up the manual way or just running the script? @cloud bay

haughty ember
#

That shit doesn't work

#

The issue is

#

He is using an older version of P4V

median heart
#

Yeah, I feel like just running the script at this point might be pretty fragile

haughty ember
#

as well as Linux

#

So, the new version of Linux uses other newer shit

#

To do the thing

#

Which, right now, I can't remember, because I just reboot if it's ever down

#

It's not just the script though

#

It's outdated

median heart
#

Ah yeah, this uses daemon :/

haughty ember
#

Because Ubanto or whatever uses a different autoloaded thingie

#

That's it

median heart
#

These days systemctl is used

haughty ember
#

I am Linux newb, I was just happy enough to get it working 😃

#

If someone wants to do up A NEWER VERSION

#

With newer Ubunto

#

I don't think anyone would complain 😃

#

Unbuntu

#

Ubuntu

#

W/e

cloud bay
#

We got it up and running now. But on the older server version. It should be fine right? 😛

#

Yeah that would be great 😉

haughty ember
#

@cloud bay /shru

#

You using the 20/20 one?

cloud bay
#

we use version 15.1

#

is it the 20/20 one?

cloud bay
#

@haughty ember

knotty trout
#

Whats the easiet way to setup source control for small projects ?

median heart
#

Easiest? Probably git

#

Best performance (will probably save you time in the long run)? Perforce.

knotty trout
#

Damn, ive been trying with SVN cant get my friend to connect.. Gonna give perfoce a try

cloud bay
#

We had problems with git. But as long your few, go for it

knotty trout
#

We are two, almost seems like its better not to go through the hassle and just do it manually or something

robust jacinth
#

@knotty trout If you're having trouble getting connections with SVN, changing to another source control software probably won't help.

#

Be sure they're using the right IP, make sure you have those ports open.

tepid ore
#

Hello, Is there anyway to keep fbx, 3dsmax files on github or bitbucket?

brittle raft
#

No, both have too small size limits of 2GB

#

Unless you buy more space

tepid ore
#

If I have my own spaces?

analog burrow
#

VSTS offers unlimited storage

obsidian thistle
#

I didn't find yet a configuration file or command to change the max size of a depot with perforce

#

actually it seem that 20GB is the maximum size of my depot

#

but a project with an unreal build from source will take more space than this

molten marsh
#

@obsidian thistle If you have more than 5 users you get limited by depot size. Under 5 users has no limit.

obsidian thistle
#

I have actually 5 users

#

4 users + perforce super user

#

maybe it's simply a display on P4V

molten marsh
#

Id say your being limited because of how many users you have

obsidian thistle
#
** IMPORTANT UPGRADE NOTES **

         CHANGES TO UNLICENSED SERVER FOR THIS RELEASE

         For v16.1 onwards of the Helix Versioning Engine (P4D) the number
         of free users allowed with an unlicensed server has changed to 5,
         the number of clients remains at 20. Previous versions of the
         server will continue to support the 20/20 usage allowance.
#

actually my p4d version is before v16.1

molten marsh
#

There is also an workspace limit. Which is the “client” limit of 20 they talk about. If you exceed this limit as well it will restrict your account.

#

You need to make sure you delete unused workspaces from the server so that it doesnt exceed this limit if you wish to continue as an unlicensed user.

obsidian thistle
#

ok thanks 😄

turbid prism
#

anyone here experienced that bitbucket/sourcetree sometimes seem to make a 1kb file out of a umap file instead of the actual size it is when using lfs? note, it only seem to happen once in a while, but obviously it's a bit nerve wrecking when that only happens occasionally

robust jacinth
#

@turbid prism You sure it's source control doing it and not UE4? A very small asset file tends to be a redirector to an actual asset.

turbid prism
#

as far as i can see yes... i tried making a backup of the file, noting the size down (bigger than 1kb), and then pulling again, and then it turns into 1kb

#

but as mentioned, only sometimes (actually quite rarely), but still enough to make me feel uncertain when i commit

#

which is kinda the opposite of what sourcecontrol should make you feel hehe

robust jacinth
#

Agreed. No clue, sorry. :/

turbid prism
#

no prob, thanks for asking though

knotty trout
#

Thanks @robust jacinth the problem was the port! Is there anyway to change the depot location on perforce ?

robust jacinth
#

Yes, but you'll have to look at the docs.

#

I wouldn't know off the top of my head.

knotty trout
#

ah alright

#

Is it a big problem if i do it later on ? Like after it gets a bit big ?

jolly fog
#

Anyone uses Gitkraken and Gitlab Here?

#

Need a bit of help ssetting up a repo

knotty trout
#

Got preforce setup! Do I have to send my friend the files ? Cause he has a clean workspace but the project files are in the depot or can he just download the depot and put it in his workspace ?

molten marsh
#

Once files are on the Depot you shouldnt have to send anything to anyone. They just sync with the Depot and they get all those files.

echo geyser
#

guys so i set up a git pre-commit hook to compile project before commits are made . Is there a way to compile using only the commited files ?

#

right now it inclides files that havent been commited too

brittle raft
#

I don't believe you can do that with UE4's build system

#

Maybe see if you can stash changes during the process

echo geyser
#

gottcha.

#

maybe i could create a separete folder or set up a jenkins task to do that

#

just copy over the changes to be commited along with whats at the head and compile that

#

which brings me to ask. Is GIt Bisect useful ? What sort of git hooks/ task are people are people using right now ?

brittle raft
#

I don't use hooks myself, what I generally see if a server hook to check incoming commits

echo geyser
#

ah gotcha . Thinking of actually putting in a pre push that runs some stress/ fbx tests. I'm not sure how i'd run a few of those server side

#

not sure how Unreal handles cross compilation

knotty trout
#

@molten marsh Thanks! 😄

stone notch
#

And i dont know what to do to have it solved.

#

would be so much apreciated if someone wastes its time on me.

knotty trout
#

Is it possible to buy dedicated servers or something to put perforce on and connect to it from there ?

molten marsh
#

Sure is. Or you can host an Server locally yourself.

#

I host my own on my Build Server.

misty topaz
#

which Git application can we use with Unreal? I'm trying to get the "GitHub Desktop" application to work with it, but unreal won't accept any paths for it

knotty trout
#

Great!

haughty ember
#

@Archer#3838 If you are talking about GUI

#

I personally use Source Tree

#

And don't use anything inside UE4

#

Only thing I can guarantee will work in UE4 is Perforce

calm basin
#

BTW why is everyone calling this vcs "Perforce"? I mean, "Perforce" it's a company title and they have a lot of different products, while specifically vcs is called Helix.

median heart
#

They're a little bit unclear on the naming themselves

#

For example, this is straight from their manuals: Perforce is an enterprise version management tool that you can use to manage source files and other...

#

P4V itself is called both the Helix Visual Client and the Perforce Visual Client in their official documents

#

Plus, that's just the name everyone knows ¯_(ツ)_/¯

#

Kinda like how people say VAX (Visual Assist X), even though it has just been Visual Assist for a while now

robust jacinth
#

It wasn't even until late last year that the actual application was renamed.

#

Actually, not even. It's still totally "P4V"

calm basin
#

@robust jacinth I have definitely seen the "Helix" title at least a year-1.5 ago, so not "late last year" for sure 😃

buoyant ice
#

I tried setting up perforce for a team a few times and never got it working in a way I liked. But yeah GIT inside UE4 is the devil. Causes all sorts of weird behavior with files when renaming/moving/deleting etc. For what its worth I like the program GitKraken

median heart
#

@calm basin he was talking about the application—P4V—not the brand name overall

#

(plus, he corrected himself right after that it's still P4V :p)

#

And like I was saying, P4V is referred to in multiple ways in different parts of their documentation, so it's a bit fragmented

#

I'm not arguing that it's not called Helix...I'm just giving some reasons for why some people may still refer to it as Perforce

calm basin
#

@median heart I see, thanks. Just it was a bit confusing for me when I have tried to google "Perforce" for the first time and there was no such application, only the company with lot of products 😃

robust jacinth
#

@calm basin I meant the actual exe. It's still P4/P4D/P4V etc.

#

(And now I read that it's already been cleared up. Woops. I just responded to the mention, without reading.)

neon vapor
#

Whenever I package, I get a bunch of errors about not being able to get at files. I always fix this by copying my project and marking everything as readable in windows explorerer. The new version packages fine. Is this what everyone does every time? Seems like a hassle.

#

My assumption here is that Perforce is locking those files, which makes unreal angry, but unreal isn't smart enough to check them out or something?

odd shell
#

it sounds like you checked in files under your project's folder that you don't need to check into Perforce. Things like:

Intermediate/
Binaries/
DerivedDataCache/

get a lot of temporary files written during packaging and should not be checked in.

neon vapor
#

@odd shell None of those are checked in. The read-only errors I get are for pretty much everything, all the stuff I have in the content folder, etc.

odd shell
#

That's odd. packaging shouldn't need to write to your Content folder.

#

I saw your packaging log in #packaging . Yeah, doesn't look like it's a Perforce thing.

haughty ember
#

hmmmmmmmmmmmmmmmm

#

I am using Perforce...

#

What kind of shady stuff is going on here...time to investigate

robust jacinth
#

Maybe a plugin that needs disabling?

haughty ember
#

Aye

#

I thought I had that and Git already disabled. Not that it should have mattered though. It shouldn't be running unless I am using it as the SC.

sour vine
#

beginner source control user here. which should i use?

#

I can use my pc as a host for a project, but dont have to if letting another place host is easier.

#

ive tried github and p4 a couple times and have failed all 4 attempts.

molten marsh
#

Perforce is going to be the easiest to use and the least pain in the butt solution in my experience.

robust jacinth
#

Getting the personal server setup working with P4 should be trivial.

#

Like, super trivial. Like open up the client and click Personal Server and follow the prompts.

#

Though for sure, setting it up for broader use is way more involved.

jolly fog
#

Is there any reason why you wouldnt choose to fix up redirectors in folder? It seems like a no-brainer...?

robust jacinth
#

Redirectors are binary files.

#

Sorry, assets in general are.

#

Fixing up redirectors involves opening up every asset that references the redirector, editing it, and saving it.

#

Binary implies exclusive checkout in source control, so you can't fixup a redirector without checking out every asset that references the redirector.

#

Not about being able to check out the redirector, but being able to check out everything that references it.

#

Not a bad idea to try to resolve as many as you can on a weekly basis or some such.

molten marsh
#

I always fix up redirectors after renaming or moving an asset and then just in general every now and again just incase.

robust jacinth
#

That can work too, but sometimes you risk checking out 20 other files and a handful are already checked out and buggery ensues.

open cairn
#

Just thought I would share as It has some really cool features

#

that are not in the current version that ship with the editor

wheat flax
#

has anyone here ever used PlasticSCM for UE4?

#

thinking about switching to it from perforce

robust jacinth
#

I think @haughty ember has? Maybe?

#

Since I'm futzing with my P4 setup, figured I'd share some of my stream setup that I'm going to be testing out momentarily.

molten marsh
#

Are you going to Stream your Stream?

robust jacinth
#

I am not, no. 😛 Not much to show.

#

And first I need to understand what the hell I did...

#

Something with import vs import+.

fiery prism
#

Sad, I won't get to see your stream of conciousness setting up your streams on stream.

robust jacinth
#

... how deep can we go?

fiery prism
#

I think that might be the limit.

#

At least, its the furthest I'm willing to take it.

robust jacinth
#

What... did I do?

#

I think the left-side was an initial attempt at setting up branchable engines for different projects in separate depots

#

And the right side is a child stream of the left... using import+ to allow me to directly sync and edit my main engine stream as part of the dev stream.

#

I think I should have a virtual stream between Main and all Dev streams that allows them to import+ the engine?

#

That... that actually sounds bad.

#

Dev-A could make changes to Engine which would instantly propagate to Dev-B and break Dev-B.

#

Ugh. Getting cross-depot stream relationships setup seems problematic if you're trying to share things.

#

I think you have to straight up do an integration to introduce the files and leave that be how it is.

#

Integrate the whole Engine folder and whatever else.

fiery prism
#

I was gonna suggest something but realized that I don't know if its helpful so

robust jacinth
#

May as well - can't hurt.

fiery prism
#

Well I've never tried setting up something like what you're doing, and feel like I need a docs skim.

#

so let me go skim that and I'll come back

robust jacinth
#

Eugh, another one is trying to submit any kind of changes back to Epic - without keeping a GitHub repo, keeping a tidy pull request would be difficult.

spice brook
#

Does anyone have any good resource of something like: The guide to perforce for someone who is very competent at git and would like to get going with Perforce reasonably quickly? 😉

#

Always been using git, for game projects git+lfs, but it just feels.. flaky. I dislike having to run a separate service just for handling the LFS component rather than just doing it over vanilla SSH like I can with everything-else-git.

robust jacinth
#

Sorry, don't have any resources to suggest. :/

#

I think I've figured out how I'm going to set this all up, though. Maybe.

robust jacinth
#

Am I being dense here? This doesn't make sense...

#

Why would the default behavior for a release branch be to only allow changes to go down from it?

#

Also, this is in general a really fucking bizarre way to visualize these things, considering that Perforce insists on calling "Main" the "parent" of "Stable"

robust jacinth
#

I am having the hardest time getting files from one stream in one depot to be branched to another stream in another depot.

odd shell
#

getting files from one stream in one depot to be branched to another stream in another depot
have you considered using branchspecs for this?

robust jacinth
#

I've been bashing my head against this for hours - making a branch spec didn't seem to make any difference. Always said 0 files would be affected.

#

I finally gave up and put all my projects in 1 depot.

#

Different mainline streams.

#

I think trying to use a virtual stream as my source was still presenting an issue, for whatever reason.

#

Almost 6 AM here, I'm burnt out and I don't even know what I've done at this point. Ugh...

molten marsh
#

Thats how i manage my projects. Its just easier to deal with haha.

haughty ember
#

Hmm, still a shame we can't download project plugins from MP (vs engine)

#

For ease of just dumping it into Plugin folder

robust jacinth
#

Time to reverse engineer how the launcher does it! (Disclaimer: Probably don't)

analog burrow
#

Yeah, it's kinda complicated

#

As it downloads the file by chunks, and to get those chunks id you need to make a request with token auth

tepid ore
#

Hello, Should I open branch for every level?

haughty ember
#

@tepid ore if is am understanding you correctly...and I may not...my answer is no

#

Levels are typically separate

#

Branching is mostly done when you are going to dramatically influence the main logic of some system (s) by modifying it as is. You branch to make sure those changes don't take until you are ready to merge em

#

That's just one typical scenario for branching. Plenty of others

#

Like, we will probably branch a build for the PS4/VR version from our main branch

#

Since the requirements are more stringent in regards to (mostly) art optimizations (they gonna not look so good as on PC) and other things that we don't want to change for PC version

#

Any code optimizations though can't be bad.

#

But who knows. Not something I have given too much thought to. But I do need to plan for later.

tepid ore
#

thanks for answer. I work on a VR project. We have different scenario. But we have same library. So we discuss about every scenario should be different branch or not.

robust jacinth
#

@tepid ore That's a really odd thing to do. Ostensibly, you should have few branches: some kind of main branch, release branches for each release, and maybe some other development branches for bigger tasks that you don't want messing up everyone else's work until it's done.

#

You don't make a branch of a single level, that doesn't make any sense - why would you want a diverging copy of your entire project for each map?

tepid ore
#

My project manager told me about branch. She has not any experience with Unreal Engine actually. I tried tell her but she didnt listen me. She said I want know about where are we in our project pff. She can realize if can read commit I guess. @robust jacinth . thanks for anwser also

robust jacinth
#

Branching has nothing to do with UE4 though.

#

This is general software development stuff.

tepid ore
#

And also theres just one Unreal Engine developer in our project no one else. only me. why should use branches I dunno

robust jacinth
#

Like I said

#

Typically, you branch when you are releasing a particular version, so you can make hot fixes to it and continue development in the main branch without introducing incomplete features and new bugs in to the stabilized release branch.

ornate trout
#

can anyonje with git experience help me? I dont know how it happened but I am like missing a commit on my local git

#

but Im ahead of github

#

like I have one commit that is missing, as though it was never commited, but all the wrok is still here

#

so I dont know if I need to delete one from github and take it from there.. or??

ornate trout
#

Im not even sure how to go about deleting the commit from github

haughty ember
#

Typically you don't delete commits

#

But I am not super duper experienced with Git. But doubt it is any different than Perforce or any other VCS

#

Not sure what GUI you use

#

I use SourceTree myself

ornate trout
#

I use github desktop, but I also use the git command line

#

like what I need to do is keep all the work I have right now

#

but put it on github

#

like there is a 0% chanche of me needing to look at any previous commits

#

I just need to keep my current progress stored safely and where any new team members can get access to it

#

any help would be greatly appreiciated

odd shell
#

Dropbox or similar file sharing/syncing service might be better for that use case

haughty ember
#

@odd shell um no

#

@ornate trout use Perforce if your team is 5 or under

#

Check pinned. Plenty of guides and random articles I put up there

#

Do the research

ornate trout
#

I mean thats hwat needs to happen with this particular instance in github, I do sometimes have to go back, but I want to fix this issue with git, because I dont know how it happened in the firstplace

haughty ember
#

Perforce...the wild beast

#

So, has anyone ever run into an issue with trying to Integrate something from a Release branch back into the Parent (Main) via changelist and getting the stupid "Client Not In View" error message

https://forums.perforce.com/index.php?/topic/1023-integrate-command-fails-with-the-wrong-message-files-not-in-client-view/
^I thought I was onto something with that thread and a few others, but nope.

Anyway, Instead I went ahead and from Stream View, to Integrate and that works (albeit it does it all at once, and not via changelist).

In this particular usecase, I don't mind doing it this way, since I know all the changes going back into main will work (nothing was touched with those files on Main since I was "gone")

But in the future, I feel like this may become an issue, especially when/if things move around and/or I want to test every changelist Integration on Main as I do it. Anyway, if anyone's ever run into the issue, please @versed relic me with thy resolution.

Thanks!

#

And uh, why is someone named @versed relic 😉 My bad.

versed relic
#

shh

#

🔪

haughty ember
gentle bay
#

i have 4096 ~500kb files stored with git-lfs and they're taking about 10 seconds each to download

#

does sourcetree suck or is it git-lfs and i just have to live with it

jolly fog
#

I think its LFS GeorgeR

#

Suddenly my project linked to source control is broken and now I can't reconnect.
The Repo is there, local and source tree. ( I checked in new content, submitted. but failed to push it before my system crashed).

Now i'm getting this error ->

#

Using bitbucket and sourcetree

#

Anyone knows how to fix this

median heart
#

It appears your index file was corrupted when your computer crashed (or, at least, that's what your errors are alluding to)

#

You could try to delete the index and reset your local repo; you may lose changes you hadn't successfully pushed (but I'm actually not super sure about that, to be honest)

#

@jolly fog

#

Try that, and if that doesn't work, worst case scenario is you just get a fresh clone from the repo

#

In that case, you would definitely lose any unpushed changes.

jolly fog
#

I did delete index file
not sure how to reset the local repo with git bash

did a fresh clone as well, but that didn't build and kept giving me vs build failuers

median heart
#

git reset

#

I can't really comment on your fresh clone not working; if your repo wasn't in a buildable state, there's really not a ton that can be done about that at this point.

jolly fog
#

fatal: Not a git repository (or any of the parent directories): .git

I'm certainly doing something wrong here when trying the reset command

median heart
#

Did you completely nuke your git folder?

jolly fog
#

nuke = deleted?

median heart
#

Yeah haha, sorry

jolly fog
#

yeah I deleted everything except engine/project files

#

everything related to git

median heart
#

Eugh...

#

If you can't recover those from the recycle bin, that copy of your repo is basically useless at this point

#

I would suggest definitely not doing that in the future :p

jolly fog
#

uhh ohk
well i think i'll create a new repo
faster than trying to fix this one

median heart
#

I mean, you might be able to try to manually transplant a git folder from a fresh clone into it to recover your changes, but that would be a tad hacky (at the same time though, I guess if it works it works)

#

I've never tried that though, and I have no idea if it'd work

jolly fog
#

hmm.. well my code is saved locally
that has a chance to work and chance to not
so new repo might be better

do you have any idea if i can setup git repo with p4 or a server which isnt my pc

median heart
#

'git repo with p4'? Do you mean the Perforce-Git integration? I've never tried that, so I can't really comment on that

#

But yeah, you can definitely set up external Git repos, that's what remotes are

#

Initialize a bare Git repo on another computer to which you have access, and you should be able to push to it

jolly fog
#

My first option was to setup p4 since i'm experienced in it
but that requires a server,
now I can't create my pc or any otehr pc a server, so something that is free and acts like a server for p4 🤔

#

Helix4Git consists of Helix Versioning Engine with the Git Connector that communicates with native Git clients and mirrors Git repos into Helix.
hmmm i think this could work 🤔

haughty ember
#

PERFORCE FOR LIFE

brittle raft
#

You misspelled Git

fiery prism
#

mfw svn

buoyant ice
#

I love git for source work, and LFS is good, but in the long run Perforce and UE4 integration are the best bet for UE4 development, especially in team environments.

#

I havnt svnd since like 2000

fiery prism
#

lol I haven't svn'd since one of my first projects but here I yam

#

Normally prefer p4 w/ ue4

ornate trout
#

so, can anyone explain to me what git lfs is? like how does it work

#

because I read the website and it doesnt really explain it very well

ornate trout
#

ok, I see how it works now

#

but Im still unable to figure out how to use it properly

#

I've got well over a gig worth of 3d models, but when I do "git lfs track MyFileNameHere" it seems to track it, but then when I do add and push, it still says im trying to push the same large amount of files to github and rejects it

odd shell
#

IIRC GitHub has a size limit on your repositories. That doesn't change even if you use LFS.

shut rain
#

@GamingBacon97#8934 If you're setting up LFS, make sure that you don't have an older commit from before adding the LFS tracking that is still trying to add the large file to the repo

gentle bay
#

any git wizards on?

#

i forked a project, he added a new branch, i want to pull that branch - how do i do that?

#

nevermind, pull locally, add base as remote, checkout new branch, push to origin

ornate trout
#

yes I don't commit often either which is my problem, @shut rain I wish it would just incrementally do it

vagrant wren
#

Anyone ever encounter preforce issues such as when you edit an item and get the check out prompt, when you click on Check out, no dialog appears. Then when you save the item, it tells you it's writeable but not checked out. Even if you mod the file and use the Source Control button to check out modded files, it won't do it. I have to browse to the file, right click it, check it out that way, then I can save and Submit. Happens with some blueprints, but not all.

robust jacinth
#

Look in the actual Perforce client, rather than in the UE4 editor.

#

That'll tell you what's actually going on in the purest way possible.

obsidian thistle
#

I'm curious to know if perforce source control plugin support streams or not

#

Look like no

#

I have no experience with perforce streams but I would like to use for a better versionning of my project

haughty ember
#

@obsidian thistle I have been using streams for (release/dev) branches

#

Has nothing to do with UE4 plugin tho

#

It's whatever workspace you are on on p4v

#

And whatever project you open up

obsidian thistle
#

ok if you want to change your current streams we can simply use P4V

#

and the perforce plugin will use this streams

haughty ember
#

Not exactly

#

I said, it depends on what project you open up

#

You cna technically be working on two different streams at the same time

#

To avoid confusion, best create new workspace (not really a choice) and set up the new workspace inside the Editor

obsidian thistle
#

with an Engine build this can easily take plenty of gb haha

haughty ember
#

Just know that you can still open up different workspaces once p4v is open

obsidian thistle
#

yeah

haughty ember
#

Yup

#

My branches are over 40GB each

obsidian thistle
#

but normally the current branch is always dev and push to a beta/release branch

#

thanks ! 😄

delicate basin
#

Hey guys, is it a good idea to integrate github or some sort of git with an unreal project?

#

And if not github, what should I use (preferably usable with group work)

warped oasis
#

can some one briefly explain how source control works?

#

like i know the basics

#

but

#

the pushing

#

pulling

#

and uploading to branch.

ornate trout
#

alright so I assume you are using git, basically when you pull, you are taking from an outside source such as github and updating your files with there changes that they have pushed to github

#

but, you dont wnat your work overwritten, so thats why there is checking out

#

which is similar to a library

#

if someone has something checked out you cant edit it until they push it back

#

theres lots more to it than just the basics though

median heart
#

That explanation kinda combined two different systems, which might make it a tad confusing

#

"Checking out" in Git and Perforce are completely separate concepts.

#

You started with Git, then talked about the P4 checkout 😄

#

In Git, you "check out" a branch to switch to a different branch on the local copy of the repo, which is good for organization of changes

#

In Perforce, you "check out" a file, which then prevents others from making changes to it

#

They're really not related, they just happen to have the same name.

#

Git doesn't have the Perforce-style checking out because it's not centralized, so there's really no way to stop other people from making changes to a certain file

#

(it does exist in Git LFS as file locking, but that's partly because LFS assumes a more centralized nature—that's really the point of LFS)

ornate trout
#

oh lmfao @median heart I thought they were the same

#

I suck at using git, and I've never used preforce

tardy cape
#

perforce is much better, but you have to pay for an actual server unless you dont care to store it all locally

#

the P4V client is much better than anything git can offer, even the github desktop client is shitty compared to P4V

#

actually you dont have to pay if you have another PC to serve as your server

#

that is, again, if you want somewhere to backup your shit too and not just function as version control

ornate trout
#

I don't really use git as source control, as I work alone

#

but I do use it as an offfsite backup

#

ok im having an issue

#

git lfs is finding like na extra 5 gigs worth of files that arent shown to be tracked

#

because the ones shown to bge tracked add up to less than a gig

#

but I've commited and when I do git push git lfs is rpeorting that ver 7gigs are goignt o be pushed

tardy cape
#

youre supposed to have an ignore file that lists all folders/files to ignore

#

you should be ignoring the Intermediate folder, etc.

jolly fog
#

anyone have experience setting up a local network server and making a vpn on it so you can connect to it from home etc

median heart
#

I'd suggest Pritunl if you want a full suite with account management and stuff like that, or you can just go pure OpenVPN if you want it simpler

jolly fog
#

was thinking just a default windows setup without third party

jolly fog
#

Hi guys, I wasnt using source control and tried to recover backup files and now my project crashes every time I try to open. What else could I try?

ornate trout
#

can I have more details? like crash errors/logs, maybe a story as to how you got into the situation

#

@TadasJ#4765

plucky arch
#

@TadasJ#4765 well, the nuclear option will be compiling a debug-only version of the engine (of comparable version to the one you use), opening it up in that engine

#

And then manually bypassing the parts that error out

#

It must be some sort of an assert or something else, some form of minor corruption. Usually you can still load corrupted files with a debugger attached to the engine

pulsar parcel
#

the launcher version does have debug symbols

#

and let this be a lesson, use source control from now on

jolly fog
#

hey

#

so I was committing some files

#

and pushing on every commit

#

then suddenly it asked me to pull from the remote (no idea why)

#

I think it stashed my files

#

and all my uncommited files were deleted

plucky arch
#

@pulsar parcel but the engine is compiled in release

#

So those symbols have limited use

jolly fog
#

I tried using Data Recovery, and while I can see files from 2013 I can't see any of the files that I need

pulsar parcel
#

release builds don't completely destroy debugging info

#

it should give you at least some clue as to what is causing the load to fail

haughty ember
#

@plucky arch @pulsar parcel you can indeed attach processes from launcher builds

#

And yes can you include debugging synbols in Packaging as well as crash reporter

#

That's how Backtrace actually grabs their info

#

Bit off topic, but if you're having hard crashes in your game (players reporting) Backtrace might be a good answer. Not useful for soft crashes like stalls/freezes though. Still looking for a good solution.

pulsar parcel
#

i don't think using a crash handling service is an appropriate solution to an editor crash on startup

#

just open VS and debug it with the symbols (optional download w/ launcher)

undone isle
#

Guys how do you use source control so you can dev with your team?

wheat flax
#

i'd recommend using perforce @undone isle

tough torrent
#

hey all, new here. I come from a software engineering background, and I'm most comfortable with Git. Just wondering what the arguments are for Git vs. Perforce? Any other alternatives worth checking out too?

#

this would be for maps primarily, not so much code

jolly fog
#

I'm looking for someone to setup perforce on my project , paid task

molten marsh
#

@jolly fog You can use the #looking-for-talent channel to post an job listing or you can follow the tutorial for how to setup Perforce that is pinned in this channel. If you have any issues you can ask here or DM me.

jolly fog
#

Oh well you'right , sorry for this inconvenience

molten marsh
#

Id help you myself but im in bed on my phone 😛

jolly fog
#

eheh no problem , it's not a urgent task too 😃

signal mulch
#

perforce source control

does anyone know how to prevent the P4ServerLog error
"unable to connect the file system p4log has only 224.42m free but 250m is required"

from google results it mentions something about rotating the logs?? but im a perforce noob i dont have a clue what to do

at the moment im forced to delete my whole server and restore it from a backup and then it all works again for a few months then i get the error again

odd shell
#

Free up more space on your hard drive. You'll run into bigger problems down the line if you're running on such tight space.

signal mulch
#

its the logs taking up space i need to rotate the logs but im no good at command line stuff

tight galleon
#

Hey guys, i was reading this VCS setup https://www.gamasutra.com/blogs/RyanDarcey/20161021/283799/An_Unholy_Alliance_Unreal_Engine_GitHub__Perforce.php
And from what i could gather he had the corce UE4 part of the solution liked to github, so he could just pull the latest changes for updates

#

Isn't it possible to update a c++ project through the launcher aswell?

brittle raft
#

You can't automatically update code

#

Not sure what your question really is @tight galleon

tight galleon
#

in order to update the engine version of a c++ project, do you need to pull those changes from github or can you update it through the launcher?

#

(assuming you didn't change a single line of engine code of course, otherwise i would say you should have that always in a separate branch, and handle the conflicts in a rebase when you want to update the version)

haughty ember
#

@tight galleon @brittle raft sure you can 😉

#

By "update", Get Latest, Pull down from Git

#

Whatever the programmer's secret sauce was for the new modded source build

#

Keeps all devs up to date

#

Merge from Master whatever you want

#

That's what they mean by that

#

@tight galleon Updating version has nothing to do with BP or C++

#

Or Source vs Launcher

brittle raft
#

You can't do it from the launcher, no

haughty ember
#

?

#

Yes...

brittle raft
#

You need to pull engine changes from Git

haughty ember
#

Is he talking about source build still?

#

He asked about launcher at the end

brittle raft
#

He's talking about updating the engine

haughty ember
#

Hmmm

brittle raft
#

Oh well

haughty ember
#

Which you can do in Launcher

#

😃

brittle raft
#

@tight galleon updating the engine is do,ne from the launcher (for launche builds)

haughty ember
#

Guess more clarification is needed

brittle raft
#

or through Git (for source builds)

haughty ember
#

Aye

brittle raft
#

Whether the project is C++ or BP is irrelevant

haughty ember
#

I agree

brittle raft
#

Question is confusing 😃

tight galleon
#

but if you're working with a c++ project, aren't you inherently doing source builds?

brittle raft
#

Nope

#

I am using launcher builds only, for my almost-C++-only project that barely uses any BP

tight galleon
#

can elaborate a bit on the difference between the two please?

#

or you can just tell me to google it i won't be offended xD

haughty ember
#

lol

brittle raft
#

Launcher build = engine compiled by Epic, downloaded as a regular program
Source build = you compile the engine yourself, takes an hour or too

haughty ember
#

Launcher Build = Cannot Modify Source Code

#

Source Build = Can Modify Source Code

#

That's literally the only difference

brittle raft
#

^ source code of the engine

haughty ember
#

Other than, only Source Builds can build Dedicated Servers

#

Which

#

I still actuallly don't understand

#

How Epic hasn't fixed that

#

There's gotta be some way to make it easier for Launcher builds

tight galleon
#

yeah that was the only time so far i actually had to source build

#

i don't have any plans of making engine changes right now, but i guess i'm going to keep that linked to github either way just to make it a little less painfull down the road

#

thanks a lot for the help @haughty ember @brittle raft definitely cleared some stuff up for me

#

👍

haughty ember
signal mulch
#

@haughty ember victor sorry to mention you directly but youre pretty good with p4. do you know how to set up log rotation ? my server keeps getting wrecked by the log file growing too big and taking up all the space

haughty ember
#

@PrintStringFTW#6597 Yo, no worries. TBH, I've never run into that issue, but I have practically unlimited space.

#

I'd start with that though

#

@signal mulch

smoky trench
#

@PrintStringFTW#6597 What is your P4DEBUG Level set to? (can check with p4 configure show P4DEBUG) Might be worth setting that to 0 when you aren't actually debugging. Otherwise it will make your log file grow really quickly

#

Other then that I just run a script once a month that deletes the P4Log file, personally the only use I've had for it is when I am actually trying to debug so I've had no loss by deleting it

untold skiff
#

About using Git for UE4, am I understanding the problem correctly that the large binaries are only actually an issue when the file size of the binary is larger than a certain amount? In other words, I only realistically have to worry about large binaries and therefore require LFS for complex static meshes, sound files, and similar art assets?

#

Because even my most spaghetti'd Blueprints, I've noticed, tend to be less than 1MB.

weak terrace
#

Personally I haven't used LFS, but I can tell you that there's a limit in git, which prevents you to do a push/pull that's about 4 GB or bigger. You'd have to split a huge commit into several smaller ones or copy the repo via ftp. Also, big files are not that great to work with insofar as if you change a 100 mb binary file a few times your repo quickly grows bigger. And if you're using GitHub, there's also the 1 GB limit for free repos iirc.

robust jacinth
#

Today, I learned about p4 unload depots.

#

After spending like 30 minutes trying to understand why my automation's workspace didn't exist, couldn't be found, but couldn't be recreated.

#

Someone or something at Epic must have effectively archived the workspace, p4 unload.

#

Had to use p4 reload to actually make the workspace be unarchived.

molten marsh
#

Never heard of unloading an workspace?

#

Is its only function for archival?

robust jacinth
#

Basically

gentle bay
#

shit

#

that moment you realise you didnt sync your submodules at work

lofty pivot
#

Question has probably been asked a bajillion times here but there's no pinned messages regarding git clients. I heard bad things about GitKraken and the UI put me off instantly. I'm using sourcetree at the moment but I don't like the interface, I'm looking for something much more sober and functional, that would allow me to, for example, quickly clone another repo without too much hassle, any good recommendations?

#

for windows* also being able to do most basic things through the context menu would be a plus I guess

haughty ember
#

@lofty pivot If you're newb, use SourceTree

#

Actually, even if you're not. SourceTree is all-around pretty good

lofty pivot
#

@haughty ember I'm used to source control in general, I've used svn, git and perforce in large codebase company settings, but I'm just not too fond of sourcetree as a client

#

It's not bad, it's just that I'm used to just dropping "git clone X" in a terminal, but I'd rather not use windows' terminal if possible.

median heart
#

If you're used to a more *nix-style terminal, you might want to try out Cmder; it has a lot of customization options and acts more like a Linux terminal

#

Else, there's really not a GUI I've found better than SourceTree

#

If you're more comfortable with a CLI, I would say go for it, haha

robust jacinth
#

Fixed my automation that syncs Fortnite from Epic, builds it, and tries to populate the DDC.

#

At least, I think I did.

#

It ran for 5 hours when I tested it.

#

The automatically scheduled automation, however...

#

... 12 hours later, still running.

#
[2018.03.03-21.03.17:575][  0]LogDerivedDataCacheCommandlet: Display: Waiting for 103677 shaders to finish.
[2018.03.03-21.08.41:722][  0]LogDerivedDataCacheCommandlet: Display: Waiting for 102677 shaders to finish.
[2018.03.03-21.14.18:923][  0]LogDerivedDataCacheCommandlet: Display: Waiting for 101677 shaders to finish.
[2018.03.03-21.19.59:069][  0]LogDerivedDataCacheCommandlet: Display: Waiting for 100677 shaders to finish.
[2018.03.03-21.25.03:673][  0]LogDerivedDataCacheCommandlet: Display: Waiting for 99677 shaders to finish.
[2018.03.03-21.30.07:443][  0]LogDerivedDataCacheCommandlet: Display: Waiting for 98677 shaders to finish.```
Just a snippet of the log.
molten marsh
#

Hehe

haughty ember
#

@lofty pivot @median heart ST has command line though

#

Just add the CL tool

jolly fog
#

Anyone still using github for their projects? 😏

split lintel
#

Anyone know whether the Unreal Game Sync tool/program is sent out with the engine/is distributed somewhere that isn't github

#

Also whether it just syncs the project binaries or whether it can do automated shipping builds

split lintel
#

@robust jacinth Looks like the tool I mention above that our team are interested in using is actually developed partly by you! Any chance there is any documentation on the Unreal Game Sync program?

robust jacinth
#

It is in the UE4 repo.

#

Has a readme.

#

I myself did not work on UGS though, at all.

slate cosmos
#

Hey does anyone have any opinion on using TFS with Unreal?

#

is the lack of integration the only downside with TFS?

reef oriole
#

Hi @slate cosmos , TFS uses Git under the hood (which has some level of integration), and I hear it is a pretty solid hosting solution with great price

slate cosmos
#

Yea but any drawbacks with it vs perforce?

#

Because TFS isn't integrated with Unreal

#

Also I don't think TFS is using git?

#

Not sure though

#

git doesn't have file locking but TFS does

haughty ember
#

Well actually @reef oriole @slate cosmos Yes and no 😃

#

VSTS and TFS can Git by default

#

But you can use Team Foundation Version Control (TFVC)

#

Which is like Perforce

#

Centralized

#

Also @reef oriole when are they accepting your new Git plugins into engine?

#

Plastic too

#

And might as well do a TFS 😉

slate cosmos
#

@haughty ember biggest draw back with TFVC is simply the lack of integrated support?

haughty ember
#

@slate cosmos Hmmm, depends

#

People use Plastic and it doesn't have it, only via plugin

#

I mean, TBH, as long as they can take snapshots of your work, solo-wise, any VCS will do

#

Teams is another story. Perforce or Go Home imho

reef oriole
#

@haughty ember Epic is not interested in integrating all VCS plugins by default. Also, as I've discovered, it is really costly & lengthy to get update into the Editor, so I favor putting new features into my own Plugin and let it mature for some time before event proposing them through a MR

#

also, I need alot of time to make a proper Merge Request an revalidate it into the latest master

dull current
#

how I can use one plugin across several projects and keep that plugin always updated? Like if I make some fixes for the plugin in one project, some fixes in other project and I want to always keep plugin up-to-date everywhere?

cinder ledge
#

make a repo for the plugin and set that up inside the plugins folder?
That might work

dull current
#

inside the plugins folder? Do you mean, one which is inside engine folder?

#

I dont really want to add engine folders to the perforce at this stage

cinder ledge
#

oh you're using an engine plugin

#

then I don't understand your problem
if it's an engine plugin the changes should reflect for all the projects that you're using that plugin for

dull current
#

no no, that's not the engine plugin

#

I can make it as the engine one, but I dont want to

#

currently I have three copies of one plugin in three different projects and when I make some changes to the plugin in one project I have to migrate them by hand in other projects, which is very stupid way to do such stuff. But I cant figure out a good way with perforce for this

reef oriole
#

Well @dull current, the first answer of @cinder ledge was the right one: put the plugin in it's own repository, and keep a working copy up-to-date in the Plugins/ folder of each of your project

#

For instance, I do have a Plugins/UE4GitPlugin/ git clone in each of my UE4 Projects

#

when I make a change to the git plugin, it is not commited to my UE4 Project, but to the UE4 Git Plugin (github) repository

#

and so it is easy to update (git pull) every other instance of the plugin (if/when I need it)

dull current
#

sounds interesting

dull current
#

btw, what about perforce streams? Someone used them?

river tinsel
#

@reef oriole are you still wroking on Plastic SCM features or it is just maintance mode now ? (;

robust jacinth
#

@dull current All the time, internally.

dull current
#

@robust jacinth and how good are they? I'm looking for a way to improve branch usability in our team

reef oriole
#

@river tinsel it is always an alternance of maintenance mode and then new devs ; last update where in early february, I start a new job in a few weeks so it will stay a while in standbye

robust jacinth
#

I don't really follow. They're good? They're a more modern branching mechanism?

dull current
#

I suppose so. In terms of perforce.

obsidian thistle
#

5 users, 50 gb storage, unlimited repo (private), 50 gb bandwidth for free

#

nice for a code only project

haughty ember
#

@dull current Sooo

#

I am actually using Streams for branching

#

I do release stream branches, and also dev ones

#

The only issue I've found is that I can't get folder to folder branching to work with Streams

#

This is probably intended behavior and I get that

#

So what I do to workaround is Integrate to mainline after resolving conflicts (merge/overwrite) and just don't submit the folders I don't want

#

Doesn't really take too long to do, I get the results I want. I remember looking into it awhile back but couldn't find any solid answers, and the documentation wasn't helpful in that regard either. Seems that it should work. But meh. Life goes on.

tawny pine
#

How do I use the built in Git source control? I cant get it to let me edit the email or repository root

#

Scratch that, I am gonna try Subversion

robust jacinth
#

Repository root? You mean... relocating the directory?

tawny pine
#

Yeah, on my system, but I am trying subversion now

robust jacinth
#

I'm not fond of Git anyways, but you definitely took the nuclear option at a pretty mild point of friction...

reef oriole
#

Hi @tawny pine, Subversion is was better for handling binaries. Git is very handy for quick prototyping since you don't need a server, though 😃

#

Just to clarify the intended usage of the Git plugin: you are supposed to have the git command line installed and setup (including your name and email adresse)

#

then you cannot specify the root of your local repository (workspace) : it is the intended to be the root of the UE4 Project.

#

(disclaimer: I am the author of this Git Source Control Provider plugin 😃 )

buoyant ice
#

Anyone have a prefered issue tracking/agile board system for use with Perforce? Looking for something that will integrate easily with our P4 server so we can track everything.

lilac aspen
#

we use Jira

#

they have a P4 integration plugin. we set up ours so you can add hashtags in the commit description, and it will update the Jira accordingly; will also log changelists and P4 streams/branches

molten marsh
#

Tutorial time? 😃 😛

buoyant ice
#

@lilac aspen Does that work on the Jira hosted solution or only if you host your own Jira server with the plugin. My struggle has been finding a way to use the Fisheye. Doesnt seem to be an option on the hosted Jira, and in my experience running Jira yourself requires some beefy server stats. I of course am trying to save money since were developing with no funding atm.

#

Looks like it requires hosted fisheye at least.

lilac aspen
#

@buoyant ice i don't know, sorry. we're hosting our own Jira server

buoyant ice
#

Yeah seems like that would be easier and probably cheaper in the long run actually.

winged tiger
#

Does the .pdb file under Binaries need to be checked into perforce for artists who don't have visual studio to be able to open the project? Or is the .target, .modules, and .dll files enough?

molten marsh
#

Shouldnt need pdb

winged tiger
#

awesome, thank you DD

smoky trench
chrome pollen
#

what do you guys think would be a good workflow for two programmers to work together in UE4? we were considering github but we realized we need to be able to both work on level design, blueprints and other assets too

#

we're totally new to collaboration in UE4 and currently scrambling to look for answers on how to do so effectively before we start development

obsidian thistle
#

@chrome pollen, perforce is the way to go

chrome pollen
#

thank you so much, i'll give that an indepth look today

#

is assembla a good hosting site? @obsidian thistle

obsidian thistle
#

I don't know it

chrome pollen
#

ah okay

obsidian thistle
#

but maybe, I live in Europe and OVH is a nice host

chrome pollen
#

OVH?

#

I'm in Europe too so perhaps that's the answer I've been looking for

obsidian thistle
#

it's an OVH company with discount price for small dedicated server

chrome pollen
#

ooo thank you

obsidian thistle
#

perforce need hdd and ram but not that much cpu

buoyant ice
#

Man whats the trick with that OVH company.. that seems WAY to cheap for that hardware

brittle raft
#

Pretty huge european hosting service

#

Kind of your standard host over here

buoyant ice
#

Not bad. never seen any US with dedicated offers like that.

haughty ember
#

** FUCK ASSEMBLA **

#

@chrome pollen fuck them

#

Host your own

#

Or get Vultr/DigitalOcean

#

ez to get up and A LOT CHEAPER for ya

#

I should delete them from my pin

chrome pollen
#

Yeah I didn't end up using Assembla

#

thanks for all the help guys

short siren
#

@buoyant ice I am using OVH's Kimsufi both personal, and in work (I work remotely in small ecommerce online shop as sysop, sometimes helping webmasters as part of my job), and I never encountered any problem except one few-hour outage in last over 5 years that I got money back (about 15% of month payment or so, don't remember exactly). On screen my personal server's manager of kimsufi. Except that, I find only one con: Getting LETTER (physical) payment invoice by physical mail every month. But used to it.

#

Whoa, it sounded like advertisement. Well, whatever, I can honestly commend it.

buoyant ice
#

@short siren Thanks! I actually figured out they have Eastern servers in Canada and picked up a nice i3 with 8 gigs of ram and 2TBs storage to use as a Jira/Perforce server. Like 5x the resources for the same price as DigitalOcean or Amazon.

obsidian thistle
#

I would like to know if someone has an idea of perforce price for a team larger than 5 users

smoky trench
#

$420 USD per user per year

#

For your first year you can try negotiating with them tho. We got 7 seats for the price of 4

obsidian thistle
#

@smoky trench, ok thanks 😄

obsidian thistle
#

also you host your own perforce server ? or at this price you have a cloud server ?

smoky trench
#

Host our own at that price

obsidian thistle
#

thanks for all those informations !

shut rain
#

I'm setting up a perforce server, and have managed to connect it in UE4 just fine. If I now wanted others from my team to work on the project, would I just need them to connect to the server in UE4, or would they also need P4V and the other setup steps?

#

The UE4 perforce setup page mostly just goes over initial setup, it's not very clear on how to add others to the project (or maybe that's just me)

brittle raft
#

They need to install P4V themselves and set it up too

#

Same thing as you, except for the creation of the repository

#

UE4 doesn't handle version control, it just has some integration to make it easier to use directly from the content browser

shut rain
#

Okay, and then once they connect to the server in P4V they can also see the workspace for the project in there or something?

brittle raft
#

You create a workspace once, add files, and then people connect to your server to synchronize the workspace

shut rain
#

Alrighty, thanks a ton!

jolly fog
#

😛

gentle bay
#

i have probably a dumb question

#

i know git fairly well, is perforce worth learning?

#

for my own purposes, not for my resume

haughty ember
#

Hmm

#

Depends

#

If you ever plan on working on a team, yes

molten marsh
#

Its more suited for things like UE4 in my opinion. So with that said yes.

haughty ember
#

if not. Maybe not.

#

Git serves itself well for solo devs

#

But I do like Perforce better than Git

#

But I do notice I use Git more on Solo Projects

#

Especially true for client work

#

That is just me doing something and then they need to review it/get

molten marsh
#

I manage my own Perforce server for client projects if they dont have source control (which is concerningly common)

haughty ember
#

So true

#

Or they use Google Docs/DropBox as VCS

molten marsh
#

Ive only come across a few of those types

haughty ember
#

I am surprised no one's built dedicated Perforce Server NUCs

#

I wonder if I can build one with the new Pi

#

you could with the old B

#

now the B+ has a little faster CPU and better networking

#

Too bad it's old

#

If someone comes up with a guide for the new model pi, you'll be famous for a bit

untold skiff
#

I use my old laptop as a Perforce server, which you'd think would be an asset, but on the rare occasion I get to work for another person they just prefer to use Git or Subversion.

fair canopy
#

@haughty ember they removed the os image for a perforce server from AWS, but you can set one up for about 5$ a month on azure and that way you don't need to worry about external sharing of your pi based perforce , as you can easily manage the endpoints that have access. ... But any excuse to get in about a rasp pi is always a good one.

haughty ember
#

@fair canopy I have perforce servers at home, via Vultr and Assembla

#

The only reason I want it on Pi, is just because

#

But my linux and the like is poop

#

I'm lucky I was able to put the one up on Vultr

fair canopy
#

I done it in windows on aws

haughty ember
#

thanks to Allar's guide mainly

fair canopy
#

I get ya though if you have time for pi projects bring on the fun:)

haughty ember
#

But anyway, I was thinking about how funny it would be to build a Perforce Pi Farm

fair canopy
#

Ha take it your next project will be a pi render farm:)

#

Just had an image of your Lego esk perforce pi farm . ... It could be magical

shut rain
#

Hey, having a problem with my new perforce server. I can use it fine, but I'm trying to have someone else on my team access it.

#

Installed P4V and connected fine, gave the new user "super" permission, bust still getting an error "Remote server not configured to clone"

#

So how would I do this?

#

I already set server.allowfetch=1 on the server...

#

She'd have to clone the project if she wanted to work in it right?

haughty ember
#

@shut rain Out of curiosity, who told you to use DVCS?

#

Or rather, why did you?

#

All you need is P4D and P4V (which you probably have from following whatever DVCS guide, but just in case you don't)

#

These fools keep changing the names though, but the "acronym" still stays the same

#

Helix Core for Server, Helix Visual Client for well Clients

#

You can use P4V for Admin stuff though

#

Helix DVCS reminds me of Offline Reconcile, but anyway. No experience with their DVCS, only centralized. Which works splendidly.

shut rain
#

I switched to Perforce because of the UE4 integration, and because it was recommended to me by someone else in the industry @haughty ember

#

I have set up our server with the Helix core server, and locally I think we all need to have P4V? Not 100% sure, but it does work well this way

#

As for why I'm using P4V, I've followed Unreals setup guide on Perforce

#

(plus that's what was answered when I recently asked here, unless I didn't understand the answer right)

#

Anyways, if you say Helix Visual Client (isn't that just what the "V" in "P4V" stands for?) Is what I need instead of P4V, I'll check it out @haughty ember

haughty ember
#

@shut rain My question wasn't why you switched to Perforce

#

Please reread what I wrote

shut rain
#

@haughty ember tbh with all their acronyms I'm not sure what part of it is DVCS (or maybe it's cause this is the first time I'm setting something like this up), sorry for misunderstanding!

#

Would DVCS not be peer-to-peer? We're using an external server running a Helix core server, not one of our machine hosting it

haughty ember
#

@shut rain just follow this and you'll be good

shut rain
#

Thanks @haughty ember ! Works nicely!

reef oriole
#

nice 😃

quaint aurora
#

Hi

#

Having a bit of an issue

#

I wanted to see if I can setup Perforce on an Azure Windows 2016 Virtual Machine

#

I have been able to set it up on the server and it works

#

the problem is I can't connect to it remotely

#

Can you help?

smoky trench
#

Have you allowed the port on windows firewall?

quaint aurora
#

Yes

#

1666

#

The strange thing is I can connect using p4v but I cannot connect on Unreal

reef oriole
#

Could it simply be a problem with your P4CONFIG?

quaint aurora
#

Will try it

shut rain
#

I'm having a problem with Perforce, where P4V is connected to the server, the project is downloaded locally through P4V, and in UE4 the IP etc. gets autofilled, except the workspace isn't in the dropdown for some reason?

#

Only one person on our team has this problem

#

Nevermind, for others experiencing this problem, make sure the UE4 autofills the correct name...

untold skiff
#

On my end @RiverThomas#7570 -- the auto-filled IP when I try to connect via UE4's thing is wrong and I need to manually type it in myself each time. Maybe it's just me, though, but if I were in your shoes I'd double check that. my bad you already realized that

shut rain
#

Huh, it was the IP that was wrong for you? weird

jolly fog
#

hey so

#

for some reason my perforce locked all the files

#

no idea

#

files are checked out

neat dock
#

alright, i give up
I got what is probably a simple problem, but i cannot figure out where to shoot the trouble.

#

a long time ago i rigged the console to print out a value on tick

#

by now i cannot remember where its coming from and i don't want it anymore

#

anyone know a way i can figure out where this is printing from?
i checked all of my blueprints (i think)

haughty ember
#

@neat dock ah

#

so, not even sure what channel you were intending, #source-control isn't close to any real support channel

#

well maybe packaging

#

Anyway, Find In Blueprints

#

either print string or that number

rocky marsh
#

Collaborating on one remote project and it's a good time to get everything running under proper source control system. Aiming for P4 as I don't think we can do it with git. I know that some folks are fine with setting up a local server at home and having other folks being able to work with it. To me such setup s a bit contrived as its quite risky. Maybe we will have such setup at the end but I want to try one of the cloud solutions for now.
Any recommendations from previous experience as to decent cloud provider for P4? I've read that you can get a box on amazon with everything pre-packaged but those folks can be costly.

haughty ember
#

@rocky marsh vultr

#

Mine is $10/month

#

Check pinned

#

The only one that actually officially does P4 out of the box without any real setup is Assembla, but you will be paying a great deal for that ease of use.

#

$225/month

#

Plus trouble shooting

#

Some help costs extra if you don't know what to do and you need them to do something

rocky marsh
#

@haughty ember thank you! I’ll check it out

jolly fog
#

@rocky marsh Allar wrote good documentation on how to set up a perforce server using digitalocean.com, 20$/month tier

rocky marsh
#

@jolly fog thank you!

#

I thought - maybe it’s pinned here - and all those questions I had are pinned here already 😄

median heart
#

FWIW, you can probably get by on the lower tiers if you need to, especially since they recently buffed the specs at most price tiers

#

But yeah, setting it up on a VPS is relatively painless

hasty loom
#

hi everyone. Anyone have experience with Rsync of UE4,have some problems with ssh key on remote machine?

jolly fog
#

so i have an issue, i cant upload my map to github its 600mb anyone have any idea how i can deal with this?

haughty ember
#

@cyan narwhal GitLFS

#

or peace out Git and use real source control for ue4

#

Perforce

cyan narwhal
#

Wrong Greggy

#

@jolly fog

jolly fog
#

lol @cyan narwhal always the same isnt it glam

cyan narwhal
#

Yup

jolly fog
#

what files should i have on my ignore cause everytime i open or save it keeps doing ini files and logs etc

haughty ember
#

@jolly fog read the docs

#

Pinned

untold skiff
#

A good question got raised in the #cpp channel recently: Github is almost useless for sharing UE4 projects. So then what do we do about sharing our portfolio projects with employers when we apply for jobs? Just give a link to where they can download the already-packaged project?

scenic bear
#

Vids of work?

#

C++ code can be uploaded to github just fine right?

#

I know Unity launched a beta for better git support, not sure about UE

reef oriole
#

In fact, you can use Github to share multi-gigabytes UE4 game project, it has already been done

#

as long as you don't have one file bigger than 100MB

#

which can be tough but is a good practive (for instance, split your maps in multiple levels using world composition)

median hawk
#

I saw a tutorial for Source Control that used LFS to upload larger files. Does anyone know how to get that setup correctly?

foggy scaffold
#

maybe it's a dumb question... can the Itermediate folder be excluded from the repository?

burnt dagger
foggy scaffold
#

thank you very much

dull current
#

anyone using perforce swarm?

dull current
#

what is a good way to let artists get latest changes in the project without recompiling code? As far as I found we should add our code binaries to the perforce, but I dont know how to avoid collisions between programmers, because we need to constantly update binaries and submit only the latest version

robust jacinth
#

See Engine\Source\Programs\UnrealGameSync\Deployment.txt

dull current
#

omg

#

how did we miss it

#

but it looks like overkill for such small task that I need 😓

robust jacinth
#

What you need really isn't a small task at all.

#

You want non-engineers to be able to use the latest binaries.

#

Except latest binaries has to be binaries that exist - they can't exist if the latest files in source control don't actually successfully build.

#

You also need to download these binaries from somewhere, not source control.

#

You don't need to store binaries for every changelist - you only need them for changes that actually result in different binaries.

#

You need to only offer the option to sync to a changelist for which pre-built binaries exist and know when to download a different set of binaries.

#

UGS does all of this or provides information on how to do this.

dull current
#

oh god why everything should be so complicated..anyway, thanks for this info, I'm going to dig into it

dull current
#

@robust jacinth did you setup it? Looking through code it wants to find unreal engine folder in my perforce repo..

#

which I don't have in perfoce -_-

robust jacinth
#

I have not, but it's expected you will need to set it up specifically for your particular deployment of it.

#

As for complicated, I'm not sure what you expected of a multi billion dollar industry that combines technology and art to create simulations of imagined realities...

dull current
#

😨

dusk dove
#

is there a builtin tool to solve merge conflicts in assets?

#

say a blueprint

robust jacinth
#

You can diff within the blueprint editor.

#

I don't recall there ever being any kind of merge capacity. You should never, ever, ever be handling merging of binary assets.

#

You effectively need to redo whatever work you're trying to merge in.

dusk dove
#

so basically have to make noone ever changes the same things?

haughty ember
#

You cant' merge

#

it would just overwrite

#

@dusk dove That's why you would be using Source Control in the first place

#

So the asset gets locked while someone is working on it

dusk dove
#

haven't tried this locking thing yet

haughty ember
#

And you wouldn't have any issues

fiery prism
#

about the best you can do is diff and then copy the work over.

dusk dove
#

maybe we're doing it wrong by not using it

haughty ember
#

What are you using exactly?

dusk dove
#

git+lfs

haughty ember
#

hmm

#

LFS should have locking

#

The issue is, that there's no "auto-freelock"

#

whatever you want to call it

#

When you submit

#

Git is sort of hard to work with, unless you have a "Card Master"

#

Someone that is green/red flagging assets as they get worked on so other can't jack things up

#

If you are still early in development and your team size is 5 or less, you should check out Perforce

#

Makes like much easier in development

sonic canyon
#

you need to latch into pre-post hooks effectively

#

it still doesn't cover all the bases either, it is this sad level of wanting and incompleteness.

#

and you'll break the souls of your artists. We've actually be getting people onto command line early to indoctrinate and it works pretty well but a lot of times they just don't interact with version control that much.

reef oriole
#

@dusk dove and @haughty ember I have implemented LFS 2 File Locks in my dev version of the Git Plugin

#

conveniently called Git LFS 2 plugin

dusk dove
#

nice

#

is that in 4.19?

reef oriole
#

no it is not, it is a separate plugin you have to put in your project Plugins folder

dusk dove
#

alright, gonna check it out

reef oriole
#

also, there is a big performance problem with the default windows credential manager, like multiple seconds to checkin

dusk dove
#

huh

#

so basically, if we just add the lockable line to .gitattributes for uasset and umap, the plugin will automatically start working?

#

or is there an extra step to start using this in a repo that didn't use it before

reef oriole
#

just to finish regarding performances: what I meant is that you should try to configure git either to use SSH, or to store password as plaintext of with alternate credential manager to fix the perfs

#

and then report your solution to me!

#

Regarding your question:

#

I think you can add the "lock" keyword and start using it,

#

but I have never tried this (well, perhap's, but now I don't remember for sure: I think it just work)

dusk dove
#

@reef oriole hm, there is already a GitSourceControl plugin in the engine folder, how does it know which one to use?

reef oriole
#

As stated in the README, the project plugin override the engine plugin with the same name.

#

Also, you can tell that it's running the correct version since the source control menu is different

#

and you get a lot of output logs

#

(sorry @dusk dove for not answering this in a timely manner)

dusk dove
#

yeah, we already got it working and it's great :D

reef oriole
#

LFS is pretty slow, yes

#

the new Locks are also quite slow if you don't use ssh

dusk dove
#

even running git lfs locks in cmd is slow af so it's probably not the fault of the plugin

#

is it supposed to be possible to make a commit without also instantly pushing it?

dusk dove
#

btw. revert in editor crashes in random uobject code, manual revert doesn't automatically free locks. is there a solution?

jolly fog
#

anyone can help me set SVN on my VPS?

dusk dove
#

@reef oriole using ssh definitely doesn't change anything, it still takes several seconds for each git lfs command to execute

reef oriole
#

@dusk dove sad thing 😦

#

I am actually very disapointed by the current status of LFS2

#

my only big game project is using Perforce

#

and all other smaller personnal "prototypes" only use raw Git since it's way easier/cheaper for this kind of usage

river tinsel
#

idk 10$ month for amazaon doesn't sound expensive

#

if we factor more space for EBS it might about 20

jolly fog
#

10$ a month is not a bad deal and when you link your twitch and amazon you get 5+ good games for free

tame dawn
#

We`re using PlasticSCM and I just love the easyness with it. Maybe it costs some bucks more ... but never had an issue ... esspecially the GLUON UI is very Artist friendly 😃

#

we`re using the cloud-system

pulsar parcel
#

We use to use plastic, we abandoned it a few months later

#

It costs more than perforce and it's terrible, buggy software

#

It has a tendency to create merge conflicts even when there weren't any, cloaked files didn't work properly, artists didn't understand merges

#

Its star feature, easy branching, is pretty much equalled by task streams in perforce

#

It got worse when our company opened an office and people were submitting things around the same time as each other. You had to be at the head revision to submit and then you had to pray you didn't get any bs merge conflicts when getting the latest

tame dawn
#

We are just a small team of max 6 ppl and therefore its cost was just about the same as perforce (server needed), but when you reach the 5 ppl, perforce was too costy for us ... for a hobby team. We really havent got any issue ... and avoiding merging by communication. But jeah, on the last point you`re right. For us all the other systems had produced more problems, than plastic ... so we stick to plastic.

pulsar parcel
#

So right there you're saying you're making concessions because of how the software works. If your team gets to the double digits or you're working from the same physical location, the problems will be making you wish for perforce

bold forge
#

whats the thingy to type for gith to upgrade my engine from 4.17.1 to 4.18.3

#

i cant remember 😂

#

is it ugh

#

git checkout 4.18.3-release -b 4.18branch

zinc oak
#

I've got a strange problem on 4.19. I'm attempting to place an open source project on github, complete with config files and the .uproject file.

I've been following this answerhub post:
https://answers.unrealengine.com/questions/16787/how-to-setup-git-for-an-ue4-project.html

Here is my repo:
https://github.com/uetopia/ProESports/tree/4.18-4.19_OSS_Enhanced_Complete

I download the zip, unpack it, and move the root folder to c:/ProESports

Then I right click the .uproject and "Switch Unreal Engine Version" I choose my source built engine version.

This generates project files also.

I open the .sln and choose "Development Editor" "Win64" "ProESports", then build…. VS Ouput window says
Build started: Project: ProESports, Configuration: LinuxTestServer x64

This results in Build: 1 succeeded.

Then I attempt to build UE4 Development Editor, which complains about make files being missing, and creates them.

Then I go back to build ProESports for development editor, and I get:
The property 'NMakeBuildCommandLine' doesn't exist. Skipping…

Any clues as to what I am doing wrong here? Am I missing some files in the repo?

vague whale
#

so git support is still beta after all these years

#

will it ever not be beta?

mighty socket
#

I've been on a number of teams using different source control and I've never felt like we've gotten it "right."

For git: How do you get around not having exclusive checkouts? Conflicts on binary files have been a huge pain for me in the past. Is it just team communication? Is there an option I'm missing?

dusk dove
#

you can use the git lfs lock plugin mentioned above, but it sucks because each lfs command takes several seconds to execute, totally slowing down your work in the editor (is the fault of lfs, not the plugin)

#

there might just be no way to do it correctly and efficiently with git

dusk dove
#

I made a real time video of using that plugin with git lfs over ssh

reef oriole
#

@Frith#8299 "so git support is still beta after all these years? will it ever not be beta?"

#

I am the author of the git plugin; it is still in beta since I am still the only one to make fixes and features

#

(by which I mean, no one from Epic Games is maintaining it)

#

And the merge request I made whith documentation was never merged

#

Also, it should probably remain in beta at least until proper Git LFS 2 file Locks support

#

with no more delay at each "git lfs locks" command

#

since it would then be on par with Perforce features

sterile drum
#

Hi :)

analog burrow
#

😉

#

Haven't used git lfs recently, but here's what I remember

#

Basically it puts every version of your files in the .git folder

#

There're a few tricks to get rid of old versions, but IIRC you have at least 2x the size of your assets

#

Which sucks

sterile drum
#

I though space wise lfs managed it more efficiently

analog burrow
#

Well I might be wrong on this

sterile drum
#

As far as I could tell lfs focushes itself on speed mostly, doesnt it?

#

Yeah well, I have one devops and a sysadmins telling me to use lfs to solve Part of our problems, but I couldnt find a reliable source of information that could fullfill my needs in terms of information

#

So all I can rely in is on users and their experiences

#

Its my first time utilising GIT on a large scale UE4 project because of $$

#

So you noticed that the space on the server was bloated super fast?

#

Or was it locally?

#

@analog burrow

analog burrow
#

Actually you should try with a test repo

#

Create a bunch of dummy 1GB files, change them etc

#

See if it's viable

sterile drum
#

Yeeeeeeeeeah.... I.... Guesss

vague compass
#

@reef oriole Do you know the status of proper git locking comparable to perforce?

lime nova
#

i'm having a painful time using perforce... does anyone know of any free training resources for it? i seriously despise this VCS so far...

robust jacinth
#

Hope you're using both the plugin for VS and the plugin for UE4.

#

Both of them make it so that you basically only ever interact with P4V when you need to submit.

#

Or sync.

lime nova
#

should i be doing my changes in a separate stream though?

robust jacinth
#

Separate stream to what?

#

A stream is like a branch.

lime nova
#

so we have a mainline and a dev stream, should we just be sending changes directly to the dev stream or is it good practice to use our own streams?

robust jacinth
#

Yes, directly to the dev stream, unless you want to make a small, temporary task stream for something you feel is an appropriate chunk of work to justify it.

#

Personal streams don't make sense.

#

Your workspace is yours, that's your personal set of files, tracked and managed.

lime nova
#

great, that sounds good. thanks for clarifying

robust jacinth
#

NP

molten marsh
#

Cant speak to @robust jacinth experience with P4VS but ive had issues with its performance and opted not to use it.

robust jacinth
#

Did you turn off the server querying it does?

molten marsh
#

Probably not. I assumed it was just not very good.

robust jacinth
fiery prism
#

p4vs

#

is like HR

#

I removed it, and suddenly VS got more stable and less slow

molten marsh
#

Mmm might have to give it another go if you think those changes help?

robust jacinth
#

P4VS is fine, honestly

fiery prism
#

Maybe for you

robust jacinth
#

If you don't disable those things, then yes, you'll face exactly the issues you just described.

#

Which is P4VS trying to query the file state of every file in the entire solution, stupidly.

#

And then trying to do it again every so often.

fiery prism
#

it isn't worth my time to install it and configure it, IMO

robust jacinth
#

If you're fine with what you've got, sure.

#

Just saying that most of Epic uses P4VS and it's fine.

#

I use it for work and for my own stuff without any problems.

fiery prism
#

Think it'd be worth putting those settings in a wiki or something easily searchable

molten marsh
#

Ill give it another go with those settings. I just found it horrible to work with in its default state so i went back to my old workflow

fiery prism
#

Cause maybe then I wouldn't avoid p4vs until the end of time

#

(if I'd tried those earlier)

robust jacinth
#

I hear ya. But I'm the sort of person who goes in to the options/settings for any program or game before doing practically anything else with it.

#

... and also have dealt with P4VS being shit due to exactly that reason and having had the discussion about why you should make it do a lazy load and never check the server. 😃

fiery prism
#

I didn't see an option Don't drag my editor experience down :P

robust jacinth
#

If you see the log output, you'll end up realizing it's hitting the server and freezing VS until it finishes those operations.

fiery prism
#

IDK, I have some scripts for if I wanna manage file status manually - reconcile works for everything else

robust jacinth
#

It's your first clue that it's related to P4VS querying the server regularly and when selecting a file.

fiery prism
#

¯_(ツ)_/¯

robust jacinth
#

I did use NitftyP4 for a while before that.

fiery prism
#

maybe I coulda been more diligent. If I'm ever forced to use p4vs again I pray I remember your advice here.

#

I've just got a button on dopus

#

really handy if I select .h/.cpp via split pane and then check them both out at once.

#

I've got Alt+O working in it too.

#

Never had less hassle adding/removing/managing files in a ue4 project.

robust jacinth
#

My workflow when editing any source is basically never interacting with source control - it's all "auto-magic". Except for adding files, which I do in the native OS filesystem browser anyways, so I just drag-drop the new file in to the P4V changelist.

fiery prism
#

also ew that gif preview

robust jacinth
#

Neat

fiery prism
#

Got other nifty things like regen/open sln, open uproject/launch game

#

p4 set env

robust jacinth
#

Regen is available with UnrealVS.

fiery prism
#

Sure

#

But its handy if I add files I can do it right here.

robust jacinth
#

I have seen the regen option get busted for some reason though.

fiery prism
#

And I can regen launcher projects with it

#

Anyway the chances of this being allowed to run inhouse are pretty slim... :(

crimson lynx
#

Any tips on optimizing Git perfomances on a big repo like UE4? Maybe some sort of caching mechanism?

river tinsel
#

don't use git

#

best you can do

#

is to buy SSD

#

and keep it here

#

and

#

there is that

molten marsh
#

Or use Perforce instead.

#

😃

bold forge
#

Perforce the best and most expensive ever 😂

brittle raft
#

@crimson lynx Serious answer : Git + LFS for games

#

For your UE4 repo, Git should behave pretty well

#

Git clients, not that much

placid flower
#

Hey everyone. I am starting to build forked unreal engine builds. Now the question is if there is a best practice on how to deliver the build to our team (remote team consisting of 20+ ppl). Afaik I am not able to use the Epic Games Launcher for this.

river tinsel
#

git + lfs is garbage

#

it will duplicate all your binary files in repository

#

granted it will at least not create history of them..

brittle raft
#

So ?

#

It's fast and you still get history

river tinsel
#

it takes twice as much space

brittle raft
#

If you're concerned about file size you're in the wrong business :/

river tinsel
#

well if the difference is between 800gb vs 400gb the I start beign concerned ;s

#

I like git for code as much as next person

#

but for storing big binary assets it's still garbage ;/

brittle raft
#

Even 800GB is still a few minutes of cloning, for an operation you do only when setting up your project, so I dunno

river tinsel
#

it's not about time

#

it's about my 1tb SSD 😄

brittle raft
#

Get a regular 1TB disk drive for $40 then 😛

river tinsel
#

to slow 😄

brittle raft
#

I don't know how well Perforce handle binaries, so it might be better

#

Git has the perk of being completely free, so until you're really bumping into hard limits, might as well use that

river tinsel
#

the issue is that in git you have local copy of repository

#

it's nice for code

brittle raft
#

You don't have to, FWIW

#

But sure

river tinsel
#

but you essentialy duplicate what you have (repo + original content)

#

perforce keeps everything on server (but you don't have to :D)

#

it would be nice if git lfs didn't actually made copy of every tracked binary file

#

tl;dr i just use Perforce it's free for 5 people ;s