#source-control

1 messages Β· Page 43 of 1

halcyon cove
#

took me like 5 minutes after installing to be 100% sold on plastic, just throwing that out there

severe forum
#

i really dont know if i could throw another week in only to play around with plastic scm only than to find out its not that good

halcyon cove
#

/shrug

mighty dagger
#

I say that, I don't want to spend a week on something

#

and then it takes me a month

#

πŸ˜„

river tinsel
#

I really wanted to like plastic

#

and honestly it's best VCS out there

#

but

#

i just cloudn't configure it to ignore files the way I can configure git

#

they have really over engineered the ignore.conf

#

instead of just working like git and interpreting it from top to bottom

river tinsel
pulsar parcel
#

plastic has way more problems than that

#

i remember the cloaked files functionality being totally broken a few years ago

#

git like workflow wasn't good for artists either and gluon was too limited for them

#

perforce will remain the industry standard for a long time

river tinsel
#

never used that features so hard to say

#

but

#

what convinved me to Plastic

#

was the fact that on custom server on digital ocean it was order of magnited faster than perforce

#

not to mention git

#

but I cloudn't configure files ignore to work like I wanted

#

now that it is fixed i just want integration with Azure DevOps πŸ˜„

red juniper
#

3 years of professional UE4 VR dev with our team on Plastic: love plastic, and the software is getting better and better. Perforce was a nightmare for us, Plastic is really easy to use, has a nice UI dedicated to artists and designers. If you can choose I highly recommend using Plastic.

wide bear
#

how do you get p4v from the word perforce?

dusk dove
#

p4 = perforce and v for visual

wide bear
#

Okay, I wasn't sure if it was just made up or actual corporate jargon

burnt shadow
#

its made up actual corporate jargon

wide bear
#

πŸ’©

crystal widget
#

How do I actually get blueprint diffing to work? I installed P4Merge and it just keeps opening the text diff tool rather than visual diff. The "tutorial" in the documentation says nothing about how to set it up

dim pond
#

@crystal widget the diff is done inside UE4, when you enable in-editor source control

crystal widget
#

Yeah I get that, I'm using the built in Git plugin

#

but I can't find any documentation on how to actually get it set up

#

it's just "click the button and there it is"

quaint obsidian
#

you have to use git config to set it up for uassets

dim pond
#

Are you trying to diff outside the editor?

quaint obsidian
#

launch UE4Editor.exe -diff

crystal widget
#

Actually wait, it is working. I assumed diff support for widgets applied to editor widgets too

quaint obsidian
#

-diff [options] left right
-diff [options] remote local base result

quaint obsidian
#

oh cool

crystal widget
#

I was confused as to whenever I tried to diff it was diffing it as text

dim pond
#

@quaint obsidian last I tried that with git it wasn't reliable with LFS. A lot of times it failed smudging the LFS uassets.

crystal widget
#

but it's because support for widgets != editor widgets

dusk dove
#

by editor widgets you mean the new umg based ones?

quaint obsidian
#

you have to setup LFS to use git lfs checkout

dusk dove
#

it's probably just an oversight if that doesn't work, since they're not really special at all

quaint obsidian
#

or else itll merge pointers

dim pond
#

It was set up. Diffing working copy worked, but viewing history was hit and miss

quaint obsidian
#

hmm, haven't had that one sorry

dim pond
#

One of the many reasons we moved away from git at work

quaint obsidian
#

what version of git lfs?

dim pond
#

You mean server or client?

quaint obsidian
#

client

dim pond
#

Don't remember, it was nearly one year ago. I tried to keep git up to date.

quaint obsidian
#

weird

#

did you use the git plugin built into the engine or the beta one

dim pond
#

I think the git plug-in was the problem

#

The beta one. The built in didn't even know what LFS was

quaint obsidian
#

yeah, i think it's gotten better

#

i think we were just really lucky with timing

#

when we picked up git

dim pond
#

We moved to SVN and it's been smooth sailing so far

#

Art team is using it with mind boggling sized files, in the gigabytes.

crystal widget
#

See I'm in my workplaces art team, we were using SVN but our Dev team moved us to Git

#

So it's what I'm using at home too (Don't want to confuse myself with different workflows)

hybrid musk
#

If anyone is thinking about using Git because you don't like Perforce, I highly recommend GitLab, even the free edition, coupled with Git Large File Support

#

We have a self hosted instance of GitLab that we've been able to use to host the entire project without any issues, source files are checked out normally while binary assets are hosted using the LFS system

quaint obsidian
#

yeah we're using gitlab too atm but will be moving to github

crystal widget
#

We use GitLab at work but 2FA is totally broken. I use GitHub at home

hybrid musk
#

2FA works here πŸ‘€

fringe abyss
#

have to manually go in each folder and make sure they have been added to source control, a lot of them aren't

graceful blade
#

Hi everyone.. I have a p4 question:

Imagine we're working in 3 projects: A, B and C
Imagine we have a depot (P) with all our plugins and we recently started using UGS. The problem with UGS is that we need to have A, B and C in the same workspace.
Because of that, I need to import P to all 3 projects, but p4 doesn't like to import a different depot multiple times, I guess... has anyone had a similar project

import+ A/Plugins/... //Plugins/...
import+ B/Plugins/... //Plugins/...
import+ C/Plugins/... //Plugins/...

^ only the first line works

#

do you guys know a solution for this?

hybrid musk
#

is it possible for two or more devs to work on the same map at the same time?

rotund bobcat
#

with just normal editing, source control has to either lock the file or shit fucks up when merging

hybrid musk
#

that's hot

#

thanks

meager goblet
#

Has anyone had any luck getting a CI/CD model working? I’d prefer a solution that doesn’t involve hosting my own Jenkins because windows servers are crazy overpriced.

I’ve been looking at GitHub actions, TravisCI, and codeship but they don’t seem to offer windows options (can’t say I blame them but still)

#

This would be specifically for packaging the game

rotund bobcat
#

you could set up jenkins or teamcity on a spare pc if you have one

#

I know bitbucket also has the pipelines if you're already hosting your repo on their cloud

#

like 500 min / month for the base 2 dollar per user subscription

#

never used that with unreal though

#

we use a local machine at our office like I mentioned before

meager goblet
#

Gotcha ok. Hmm local machine might have to be my go to then

#

Thanks for the response!

rotund bobcat
#

If you're new to CI I would definitely recommend teamcity over Jenkins though, way more use friendly imo

meager goblet
#

that does look pretty nice

meager goblet
#

Feel like this is wishful thinking

#

😦

#

#someday

willow tangle
#

I keep getting hit by this when me and my teamate try to sync up to perforce

burnt shadow
#

try syncing with the editor closed

willow tangle
#

ok will do thank you Allar

sharp fable
#

yeah in editor syncs have been giving my team crashes lately

dusk dove
#

I don't think that has ever actually worked for me

rotund bobcat
#

it won't work, cause the file is trying to be replaced, but you can't delete a file that's in use, which the loaded assets in editor are

dusk dove
#

no the editor has a Thing where it pretends to be able to hot reload the assets if you click the sync button in the editor

#

but the actual result is broken references and it dying

rotund bobcat
#

I just know it dies on unable to unlink assets all the time when pulling git with the editor open, and seems logical to me

dusk dove
#

I wonder if it works if all editor tabs are closed and we load an empty world with nothing in it

jolly fog
#

does anybody know what Epic Games uses for source control for their Fortnite Project?

rotund bobcat
#

perforce

jolly fog
#

is the free perforce indie pack any good?

rotund bobcat
#

I don't think there's a feature difference with full version

#

except that you can only have up to 5 users

jolly fog
#

mmmh

#

do you use perforce?

rotund bobcat
#

no, we use git

jolly fog
#

i heard git does not work well with larger game development projects, as it cannot handle merges "properly" , if its not for source files. whatever that means

#

its supposed to cause more headaches the more art-related files you have

#

would you call it bullshit? xD i find that hard to believe, to be honest

rotund bobcat
#

no, definitely true

#

but perforce would also fuck up you large binary files

#

the advantage with perforce is, you can lock those files

#

so you can prevent multiple people from working on it

#

afaik all sourcecontrol fucks up binary merging

#

but if you're working with less than 5 people or have enough money, I think I'd recommend perforce over git for unreal though

jolly fog
#

hmm ok

#

thanks for voicing your opinion πŸ™‚

quaint obsidian
#

the new git plugin solves the locking problem

#

you can lock files while you are working on them and haven't pushed yet

#

and it does not allow you to edit files that have a newer version on the remote repo

river tinsel
#

which plugin ? (;

rotund bobcat
#

do you mean git LFS 2.0 file locking

#

cause I don't think that works cross-branch

river tinsel
#

it doesn't even work with single branch properly

quaint obsidian
#

What's wrong with its single branch?

river tinsel
#

it doesn't communit with git directly

#

communicate*

#

git doesn't know if file is checkout

#

and locked

#

and you can easily create contention when two people are trying to lock the same file

dim pond
#

LFS file locking does not prevent conflicts at all, since the locked state is not tied to a commit

#

It's poorly thought and mostly useless

#

It prevents people from editing the file while it is locked, but as soon as the file is unlocked they can open the outdated version and create a conflict

#

It's easier for centralized VCSs to improve their branching and merging than it is for git to implement proper file locking, since it's incompatible with the core architecture of git

#

file locking/ownership depends on linear history. In git, history is not linear

quaint obsidian
#

@dim pond not entirely true. there's already a proposal for git lfs locking that solves those issues and the plug-in already solves the issue

#

@river tinsel what do you mean, it checks origin for new versions

dim pond
#

@quaint obsidian do you have a link? The closest thing I know was a talk at Youtube with a custom solution that did away with locking altogether, but is completely ludicrous IMO.

#

The obsession to make git work for things fundamentally contrary to its core design, by piling kludge after kludge on top of it amuses me.

quaint obsidian
dim pond
#

Ah, that's in the UE4 plugin. I mean the actual LFS locking feature itself.

quaint obsidian
tranquil walrus
#

is it possible to diff a blueprint not just against the previous version, but say 10 revisions ago using perforce?

kind olive
#

I haven't had to mess with anything raid related in a long time so I'm likely behind on what's good to use. What should I look for when setting up a NAS for hard drive redundancy? What's good to use for something with 2 to 6 ~4TB+ drives?

#

I'm wondering what RAID level to use or if there's something else in use now that I'm not aware of.

abstract elbow
#

@kind olive ZFS on FreeNas or Proxmox. Raid10 is a good mix of speed/redundancy and rebuild times

kind olive
#

@abstract elbow Thanks. I was looking at FreeNas before I saw your message. I think I'm going to go with it and Raid 6 for now. I might switch to 10 later though when I am able to add more drives.

#

I also was not aware of ZFS. Thanks for the heads up on that.

light hollow
#
Cloning into 'D:_repo'...
FATAL ERROR: Network error: Network error: Connection refused
fatal: Could not read from remote repository.

Please make sure you have the correct access rights
and the repository exists.

Anyone help please. That is gitea. ip is proper like a username. i just replaced it to not make them public
https clone works ssh not.
i changed main ssh port to 2222 and gitea to 22
22 is allowed in ufw. SSH key added in the profile . And authkeys rewritten with gitea function. also i checked manually . authorized keys file contains my pub key.
Idk what's wrong 😦
Please.. Help 😦

quaint obsidian
#

@light hollow how did you copy the pub key?

#

also you need to write /d/_repo if you're using git bash

light hollow
#

@quaint obsidian ofc cd from the repo

#

i have copied ssh-rsa XXXXXXXXXXX ==Vestalfa

#

rsa.pub

#

main thing i cant understand that's event dont says "access denied" etc it says "refused"
but its the same i think now

light hollow
#

All ok via https but my team asks me to provide ssh ability to use git lfs

quaint obsidian
#

@light hollow GIT_TRACE=1 git clone

rotund bobcat
#

git lfs doesn't do ssh

#

even if you go through the ssh adress it will still use the http I think

#

at least on bitbucket it's like that, but I assume it's and LFS thing

light hollow
#

ik
i answered them too: lfs anyway https
but they said they saw thread on forum about lfs = ssh
thank you for response
and sorry for long response time
i had shower , to give rest off the problem

#

removed putty bcause trace said ```$ GIT_TRACE=1 git clone git@IP:Vestalfa/Test.git D:_222
17:29:07.159772 exec-cmd.c:238 trace: resolved executable dir: C:/Program Files/Git/mingw64/bin
17:29:07.160773 git.c:439 trace: built-in: git clone git@IP:Vestalfa/Test.git D:_222
Cloning into 'D:_222'...
17:29:07.169781 run-command.c:663 trace: run_command: unset GIT_DIR; 'C:\Program Files\PuTTY\plink.exe' git@IP 'git-upload-pack '''Vestalfa/Test.git''''
FATAL ERROR: Network error: Network error: Connection refused
fatal: Could not read from remote repository.

Please make sure you have the correct access rights

#

@quaint obsidian Big thank you for trying to help me.

rotund bobcat
#

did you add your key to your ssh agent

#

and in the ~/.ssh folder

#

at least for openssh you do that

light hollow
#

yes

#

i have connected to sever via CMD on windows

#

with ssh

#

i moved ssh for remote control to port 2222 and its works

#

but gitea ssh even dont listen on port 22

#

how to check out added i to agent or not ? sorry for common answer
just my brain is crying

#

i have installed gitea once (month ago)
and it was going well with ssh

quaint obsidian
#

do you have logs from gitea ssh?

light hollow
#

ill check now

#

i must

#

locate gitea.log ?

#

Lol....

#

the folder dont contains ssh log

#

var/lib/gitea/log

#

i can show the gitea config

#

may be that's unmatter its cat gitea.log

#
RUN_MODE = prod
APP_NAME = srv
RUN_USER = git
RUN_MODE = prod
INSTALL_LOCK   = true
[security]
INTERNAL_TOKEN = XX
INSTALL_LOCK   = true
SECRET_KEY     = XX

[database]
DB_TYPE  = sqlite3
HOST     = IP:3306
NAME     = gitea
USER     = gitea
PASSWD   =
SSL_MODE = disable
PATH     = data/gitea.db

[repository]
ROOT = /home/git/gitea-repositories

[server]
SSH_DOMAIN           = IP
DOMAIN               = IP
HTTP_PORT            = 3000
ROOT_URL             = IP:3000
DISABLE_SSH          = false
SSH_PORT             = 22
LFS_START_SERVER     = true
LFS_CONTENT_PATH     = /var/lib/gitea/data/lfs
LFS_JWT_SECRET       = XX
LFS_HTTP_AUTH_EXPIRY = 720m
OFFLINE_MODE         = false

[mailer]
ENABLED = false
ENABLE_NOTIFY_MAIL                = false
[service]
REGISTER_EMAIL_CONFIRM            = false
ENABLE_NOTIFY_MAIL                = false
DISABLE_REGISTRATION              = false
ALLOW_ONLY_EXTERNAL_REGISTRATION  = false
ENABLE_CAPTCHA                    = true
REQUIRE_SIGNIN_VIEW               = false
DEFAULT_KEEP_EMAIL_PRIVATE        = false
DEFAULT_ALLOW_CREATE_ORGANIZATION = true
DEFAULT_ENABLE_TIMETRACKING       = true
NO_REPLY_ADDRESS                  = noreply.example.org
ENABLE_FEDERATED_AVATAR = true
[picture]
DISABLE_GRAVATAR        = false
ENABLE_FEDERATED_AVATAR = true
ENABLE_OPENID_SIGNUP = true
[openid]
ENABLE_OPENID_SIGNIN = true
ENABLE_OPENID_SIGNUP = true```
rotund bobcat
light hollow
#

added

rotund bobcat
#

ok

light hollow
rotund bobcat
#

that is the key you generated right?

light hollow
#

yes

#

i using the same key to connect to ubuntu from cmd ssh

#

and that key added in gitea already

#

first i havent installed putty

#

second i have installed

pseudo osprey
#

well

#

don't use the "putty SSH stuff" when you install git

#

especially since you didn't even install putty first πŸ˜„

#

second, ok you want to use putty (plink actually) to handle your ssh handshake and the like

#

but did you add your ssh key to the putty key database?

#

probably not I'd say

#

also note that Putty uses keys in different formats than OpenSSL so you need a tool to convert them from one to another πŸ˜›

#

honestly, just stick to OpenSSH for Git

light hollow
#

i have added key to putty db and to the git
still ```$ git push -u origin master
FATAL ERROR: Network error: Connection refused
fatal: Could not read from remote repository.

Please make sure you have the correct access rights
and the repository exists.

#

I'd remove git and putty now and will do clean reinstall

pseudo osprey
#

you can use that Stackoverflow link to see how to reconfigure that without reinstalling git πŸ™‚

#

pretty sure putty isn't even the default setting for the installer btw

light hollow
#

@pseudo osprey yes it isnt 🍑 πŸ”₯

light hollow
#

k. i wanna cry.

completely reinstalled git
using openssh openSSL

cd D:_Repository
eval $(ssh-agent -s) && ssh-add "C:\Users\Vestalfa.ssh\id_rsa"
ssh-keygen -t rsa
$ ssh -T git@IP

ssh: connect to host IP port 22: Connection refused
#

@pseudo osprey Sorry if you bussy 🌈

#

May be i just should dont use ssh ?

#

or LFS dont works with http ?

#

we will just need to load 3gb+ per file

pseudo osprey
#

LFS is always HTTP but shouldn't care how you connect with git to the repo itself

light hollow
#

Oh

pseudo osprey
#

(I think it's always HTTP, anyway that's not the issue)

light hollow
#

Yes

#

Why i should use ssh then ?

#

I just confused a lot . Thank you

pseudo osprey
#

well I like using ssh to connect to gitlab/github

#

because I don't need to enter login/password πŸ˜›

light hollow
#

oh. sure.

#

may be i must reinstall completely ubuntu ?

#

i really dont know whats wrong now xDDDDDDDDDDDD

wicked jay
#

hey, anyone around who has experience with merging blueprints from 2 different perforce streams?

#

i.e. i'm merging 2 streams in p4, and there's a conflicted blueprint - but using "Merge" inside Unreal is only showing history from the 1 stream

#

(@-me if you reply as i have notifications turned off πŸ˜› )

lavish latch
#

anyone have experience setting up a perforce replica server? Looking to automate replication to a second server in a different region.

jolly fog
#

Anyone tried plastic scm? Thanks

limpid cliff
#

does anyone have a step by step guide to setting up SVN ? I tried a couple but they all seem to be missing a step or two

inland carbon
#

Hey guys i'm very much new to source control and i'll be using git for it but i have some questions tho

#

does my team need to have the project too? in order to make it work?

rotund bobcat
#

they can clone the project from your repository

#

or do you mean local git

#

cause if you're using git local and your team is not using git, it's kind of weird

#

but if you're hosting your project somewhere, they can just clone it with a url and they will have the project exactly like you

short pivot
#

I can't connect ue with git source control, there is info that there are no assets to check in ant that message in message logfatal: C:/Program Files/Epic Games/UE_4.21/Engine/Content: 'C:/Program Files/Epic Games/UE_4.21/Engine/Content' is outside repository

jolly fog
#

I got private git working!!!

#

woot

jolly fog
#

So private git server, main issue i found was that i was semi expecting like any ssh / ftp / anything for git to store the files as what they were instead of being object files... this threw me and as such without being able to physically see them, it made me think everything was broken when it was working.... just a heads up for anyone who tries this, using a 2nd branch with different data and switching should unload / reload the contents to show objects as is from the client

upper current
#

Does anyone know of any place where to ask Perforce specific questions? I could find literally nothing online

humble surge
#

perforce used to have forums. idk if they exist anymore

upper current
#

I eventually just restarted my AWS instance which fixed my problem. P4 admin restart didn't fix it for whatever reason

red juniper
#

@jolly fog a bit late but yes, and it's awesome, recommend it 200% (using it professionally since 2016, and the software keeps getting better and better)

#

Honestly, if you are starting a project now without any dependency to any source control software, I don't see any reason to choose something else than Plastic (for game dev and similar I mean). If you have a budget of course, if you need free, then git lfs it is.

flint vessel
#

With perforce, can I make private local changes to my uproject file, without checking it out or submitting it?
Reason being so I can use some editor-only plugins locally without needing the rest of the team to have to install them

molten marsh
#

@flint vessel Set the file to Writeable in Workspace in P4V

flint vessel
#

@molten marsh Sounds promising, though I can't find the option to do so - will keep having a look around

molten marsh
#

Sorry. Right click the file in the depot view and go to Change Filetype. There will be a checkbox in the dialogue that appears.

dim pond
#

@flint vessel you can always simply right click the file and uncheck "read only" for quick and dirty local changes

flint vessel
#

Gotit! Thanks πŸ™‚ I assume this won't affect anyone else using the depot?

molten marsh
#

It will.

flint vessel
#

@dim pond What I really want is to have my changes ignored by the server, and overwritten when anyone else makes changes

molten marsh
#

Using Netos option works better if you dont want a permanent shared change

dim pond
#

I would avoid leaving the workspace writable, it makes it way too easy to create untracked local changes

#

It was a hard learned lesson when I started working with perforce after being used to git and svn

flint vessel
#

I'll give it a go - I only want the .uproject file writeable, if I need to make any changes to it I can revert to the repo version first

dim pond
#

you can also simply checkout the uproject to a new CL and never submit it

#

since they are text files, checking them out doesn't lock the files for other users

flint vessel
#

putting it in a new changelist would not leave it checked out, preventing other people from making changes?

#

oh! thats good news, feels a little more like git πŸ™‚

dim pond
#

only binary files are locked when checked out

flint vessel
#

OK, so it perhaps is not an issue even if I just leave it checked out and don't submit my changes?

dim pond
#

yep, that's fine

#

as a bonus, if someone else updates the uproject file, you can merge their changes

flint vessel
#

well, fantastic! My assumption was that it works the same as a binary file - much happier with perforce knowing this πŸ™‚

#

Thanks again @molten marsh and @dim pond

humble surge
#

@flint vessel traditionally I make a CL in p4 called DON'T CHECKIN and then check it out and put it there for local changes I don't want to submit its good for bookkeeping. setting things by filetype to always be writable is dangerous and should only be used when you just wanr files to be available for reference that people change and never submit

#

oh apparently I should have kept reading lol sorry to dupe advice

flint vessel
#

@humble surge no worries - thanks for the extra detailed tip! I'll probably end up doing exactly that

molten marsh
#

Setting writeable in workspace is only β€œdangerous” if you dont understand the consequences of doing so...

ocean ridge
#

@red juniper seconded, Plastic is an affordable p4-like

tranquil walrus
#

Perforce is not seeing the changes I'm making to CPP files. I edited one in visual studio and it doesn't seem to recognize at all that's it different than what is on the server.

dusk dove
#

right click source folder and reconcile

tranquil walrus
#

I'll try that. I tried installing the perforce plugin for VS but it just errors after being installed in vs 2017

keen elm
#

Has anyone used the dynamic data cache (DDC)? Can you use the same DDC with multiple different engine versions?

tall scaffold
#

Every time I start up the engine, it doesnt seem to auto-reconnect to source control. am i doing something wrong? I'm just launching the editor from library>my project

#

but each time, I have to manually reconnect to source control (perforce)

smoky trench
#

@keen elm Everyone uses the Derived Data Cache, but a shared one is what will differ from person to person. But to answer your question, no the data will be different between engine versions. Tho the cache might contain data for different versions.

keen elm
#

@wanton ridge ok, yeah that's my question -- can multiple different versions of UE all used the same shared DDC...

#

sounds like yes πŸ™‚

quaint obsidian
#

oh that reminds me, if we build a new version of ue4 that's one commit different, how can we prevent the DDC from having to be rebuilt?

dim pond
#

@quaint obsidian I think the DDC stores data by hash, so if a different commit causes the hash to change, that's a new entry in the DDC. Need to confirm, though.

smoky trench
#

Commits won't cause the DDC to become outdated, changes to the engine version will however. I don't believe changes to the patch version number shouldn't invalidate the DDC but changes to the minor number definitely will.

quaint obsidian
#

Are we doing something wrong with the Build.version? Because we left it as is and it keeps rebuilding DDC

normal jasper
#

Hi, I've got problem with source control when I duplicate something on the level. When I drag with ALT some object, there's popup with text "updating files source control status" and dragging is canceled. It's really annoying with thousand of objects; the workaround is turning off source control but I don't belive it's a good solution

carmine walrus
#

have you checked ou the map file?

keen elm
#

evidently Epic rebuilds the DDC every night with an automated process, so I'm not sure there's a way?

willow tangle
#

Hello any perforce pros here lol

#

I'm having this weird problem where one of my teamates has accidently checked out the Entire project and can't submit it back

#

or is there a super admin check in?

reef solar
#

why submit it, revert it

willow tangle
#

hmmm, my guy couldn't seem to do that, i just ended up deleting him from the user list

molten marsh
#

He most certainly should have been able to revert it.

smoky trench
noble knoll
#

@smoky trench whats that

wide bear
noble knoll
#

no

#

oh, i think its their merger for the perforce branches

#

the one with the ROBOMERGE commits

wide bear
#

weird that i couldn't find any details on it

dusk dove
#

why would there be any details about an internal tool somewhere

wide bear
#

thats a very good point

river tinsel
#

the tool was made public on UDN request

smoky trench
#

@noble knoll Yup, that tool :)

#

@river tinsel haha yeah, which is how I found it

quartz depot
#

successfully?

quaint obsidian
#

yes

quartz depot
#

how did you install it can you explain me a bit

#

yesterday I tried

#

but when I tried to open UE4 it said it was to compile the plugin

#

but then failed to do so

#

and project wont open

quaint obsidian
#

@quartz depot what's the log

quartz depot
#

well I don't know it just doesn't open UE4

#

and puts a window saying this

#

like this but UE4GitPlugin

#

and when I click yes

quaint obsidian
#

yeah, if the version that the plugin is built for isn't the engine version youre using, youll have to build it

#

and then fix any errors

quartz depot
#

it will try to compile to say that he couldn't

quaint obsidian
#

it'll be in the logs

#

Saved/Logs

neat grotto
#

Are you trying to use the UE4GitPlugin with Unreal 4.23?

quartz depot
#

yes

neat grotto
#

4.23 support isn't out yet.

#

The latest version is for 4.22.

#

That's why you're getting the error. πŸ™‚

quartz depot
#

dammit

#

😦

neat grotto
#

Unless the latest version has a feature you need, you can use the built-in version until he releases 4.23 support.

#

I don't know which version comes with 4.23 so I don't know how old it is, but it will work.

quartz depot
#

one question

#

how well the git

#

merges stuff like maps

#

if I'm working on a map

#

and change a tree of position

#

and push

#

and my friend is moving some rocks

#

when he pulls

#

the maps will not be the same

#

but because they are Git LFS

#

will they be able to merge correctly

#

and have my tree moved + his rocks?

quaint obsidian
#

we have 4.23

lament ember
#

@quartz depot that's not how VCS work, when you edit a file you checking it out (in Git LFS - file lock) for editing, anyone else could not edit it until you check it in...in cases when edit was made on both ends a conflict occurs, and you have to resolve it (for binary files that means picking one of the versions)

quartz depot
#

and what happens to the work of your friend?

#

does it lost?

quartz depot
quartz depot
#

I'm planning on going back to UE4 4.22 until the git version is upgraded

fringe abyss
#

can i just mark it writable, reconcile offline work, and then submit in order to make my local changes the "source" version of the file?

clear gull
#

Hi eveyone! I have a 4.22 project on Github using source control. I forgot the process of migrating to new engine version (4.23) ?! can some one explain it for me I'm lost haha

rotund bobcat
#

are you using a source version or binary version of the engine?

clear gull
#

binary version (from launcher) @rotund bobcat

rotund bobcat
#

then you can just download the 4.23 and open the project in that and it will try to upgrade automatically

clear gull
#

Ah cool I forgot to try "Convert-in-place" thanks

red juniper
#

@quartz depot yes and it's awesome (I feel like an evangelist on this channel xD)

quartz depot
#

really

#

how much can you tell me I would have to spend for a small game for 2-3 people?

red juniper
#

Yes, using it professionally since 2016, never regretted it

#

Well it's hard to tell. Look at their price plan. It also depends if you're using the cloud version or not

#

But on the cloud you pay per people and also relative to the space you take on their servers.

#

6,95$ per user

#

Actually it's pretty straightforward

quartz depot
#

and

#

is it like perforce

#

where you can host your own server?

#

on digital ocean for example?

smoky trench
#

Going to page @open bone for his thoughts on Plastic as he has been using it extensively

open bone
#

i like plastic

#

it has some odd issues

#

it's not the biggest fan of submitting binaries to source control

#

so straight up don't do it

#

binaries i mean .dll, .exe, and .pdb files

jolly fog
open bone
#

i use the first one

#

gluon is nice but it's kid wheels

chilly beacon
#

Trying to set up source control for the first time in my life may just be the biggest headache I've ever experienced. Tried Perforce since it was the first listing option within UE4 and as far as I can tell, Helix Core won't work with Helix TeamHub and TeamHub requires some other repository tool. I've spent 2 days on this and have barely managed to just get UE4 to at least connect to a local workspace... And the best I can tell is that I'd have to put all the game files on to a single server location and have both users open the project from that location just to get the workspace to be accepted... With the two of us being in different countries and thus either having the server online or whomever has the higher upload speed host the files personally... And I still don't even understand how a workspace differs from a depot and why both users would have different workspace names when there doesn't seem to actually be a purely local copy. I am so utterly lost and confused now. 😭

quartz depot
#

I want to try Plastic

#

if my team grows I will

rotund bobcat
#

yeah it seems really cool

#

definitely gonna try it for our next project

#

kinda stuck with git atm though

quartz depot
#

git has been working fine for me alone

#

jajaja

#

maybe when my partner starts to play around

#

it will get ugly

willow crescent
#

I created a Perforce depot but the folder isn't in my server folder (?)

jolly fog
#

i been using git for my project for a year now and some things are starting to bug me,
mainly when i make a change to a blueprint the whole binary changes and must be updated-w/e
i can put in the commit message that i changed the health of something from x to z but it wouldn't obviously show this cause its a binary file

is this just how things are? or can other versioning software like perforce help with this ?

neat grotto
#

Unfortunately, you're going to see that behavior with binaries for any version control system.

#

None of them can parse binaries the way they parse text. As I understand it, they're all different on the inside; there's no universal equivalent to text that resides inside every binary file, so the best we get is detection if the binary has changed at all, which unfortunately includes when you add something, then undo it... still marked as changed.

#

The only way around that would be a bespoke solution developed specifically for the app that produced the binary, like Blueprint diff tool, for example.

noble knoll
#

@jolly fog make your blueprints be graphics or code only

#

have your parameters in data assets

#

that can be saved as json or csv, and those diff well

dusk dove
#

the bp diff tool works pretty well

river tinsel
#

@dusk dove unless you change data layout

#

at this point it can't handle diff

dusk dove
#

oof

livid merlin
#

What's a source or binary version of ue4?

dusk dove
#

this generally refers to whether you built the engine from source yourself or downloaded it from the launcher

livid merlin
#

Thanks alot!

kind olive
#

Is SVN a viable option over Perforce?

#

I've used Perforce extensively, and not used SVN before. But hosting options for SVN are cheap in comparison.

amber ridge
#

we use svn a lot at work and it works ok. But we use both git for the code and svn for the project assets

kind olive
#

My code base tends to be fairly small. I assume they could both be in SVN?

#

Thanks. I'm going to look at some tutorials or something for SVN. I've just had no luck finding reasonable hosting for P4 that doesn't require me to completely manage it myself.

kind olive
#

Are there any reasons I might not be aware of to use Perforce over SVN? I don't want to get too far along with SVN and find out there's a reason Perforce is more often used that I missed.

novel barn
#

SVN is fine, add file locking if you have multiple people working on the same project though

kind olive
#

Thanks. I already use Perforce, it's just hosting is a pain with it. I'm looking for ease of use and cheap hosting

amber ridge
#

@kind olive I would guess that perforce would be better for larger Teams. Here is a site for you: https://www.perforce.com/resources/vcs/perforce-vs-svn .
But if you are solo dev or a small team I would assume that the effort of using perforce over svn isn't that much in comparing the price and effort of hosting perforce by your own.

limpid cliff
#

Ive just setup source control and git - now for everyone else to use it - do i need to install the githup desktop app on all the pc's ?

rotund bobcat
#

not necessarily the github desktop app, but at least some git "interface" yes

#

like command line or sourcetree or github desktop

#

and then you clone the project through that

limpid cliff
#

We are a few people at a school needing to work on the same project - i first tried to multiuserediting stuff - which works great except we need to copy the entire project folder to local every single day - I was then pointed to SVN or perforce which was a little to complicated for this scenario - So i ended up with the git version instead - can you dumb it down for me on how to set it up for more than one user ?

rotund bobcat
#

is your git hosted somewhere or is it only local

#

cause it needs to be hosted to share, like on github or bitbucket or a local server

#

if you're already working with the github desktop app, install that on every pc

#

the clone the project from the hosting url

#

and before you start working do a git pull

#

and if you make changes commit them and push

limpid cliff
#

Right now its local on my pc just for testing - but we have a server i can put it on

#

it is also up on github as a private repo atm

limpid cliff
#

so they need to clone the entire project every morning before they begin or ?

rotund bobcat
#

no

#

you clone it once

#

then you pull it every morning

#

which will just download the things that changed

#

not the entire project

limpid cliff
#

ahh makes sense - can people still work simultaniously ? Or do we need to still use multiuserediting for that ?

rotund bobcat
#

you'll want to use multiuserediting for that since maps don't merge because they're binary files so they'll conflict

limpid cliff
#

allright it seems to make sense for me πŸ˜› We'll see how it goes ! Thanks a lot

quaint obsidian
#

btw multi user editing requires LAN

limpid cliff
#

So we tested it a bit - i cloned the project with the github desktop app and pushed a few commits from the PC where i set it all up - and it works fine ! However - from the pc where i cloned the project too - if i make commits from that i wont show up elsewhere - did i do something wrong somewhere ?

rotund bobcat
#

you have to push your commits

#

if you haven't done that yet

limpid cliff
#

i did push it - and looking at the history i can see the commit - but only on the pc where it was made

faint cairn
#

It's two step process.

  1. Commit changes.
  2. Push commit to Server.
rotund bobcat
#

if you pushed it it should be in other peoples history as well if you're connected to the same remote

limpid cliff
#

i may have forgotton that - i get this error now - so im guessing i fucked up the order somehow

#

when i try and pull

#

Should i try and delete it and do a new clone or ?

rotund bobcat
#

well it tells you how to fix it

#

commit your local changes

#

before you can pull

faint cairn
#

Be ware that uasset files can't be merged

#

If two users modify the same blueprint/asset, one will have a bad day.

rotund bobcat
#

yes

#

very much so

limpid cliff
#

but i made no local changes πŸ˜›

rotund bobcat
#

did you pull while the editor was open

#

cause that fails like 99% of the time

#

close the editor always before pulling

#

cause if the pull fails it will show everything you already pullded as local changes

limpid cliff
#

i think thats what i did - I got it to sync now but a "merge branch "master" showed up in history somehow

#

but it seems to work now - ill just be carefull in the future

cosmic lichen
#

Hi fine folks, on the perforce tips for UE4 they recommend to set up a case sensitive server in Windows.
Perforce in windows by default installs as case insensitive
How could I change this?

pulsar parcel
#

it's not a necessary step since we run a case sensitive perforce server

#

the only odd case that could happen is that someone renames a file to change the casing

#

if you plan to target any platform that builds with case sensitive paths (ie. linux) then i don't recommend enabling that perforce option

tranquil walrus
#

Anyone know how to move your project on the depot in perforce? Originally I set it up so that it was depot/project files, but i need to create a branch now so I want to make something like "depot/original" "depot/branch". Can i move my existing project files into a subdirectory on the server directly?

pulsar parcel
#

the best thing to do is to write a pre-commit hook for p4 which enforces PascalCase filenames

#

and whatever other file naming standard you have like prefixes

#

@tranquil walrus you're not using stream depots?

tranquil walrus
#

No idea what those even are. I just needed something simple set up to keep people from stepping on each other when editing things since they didn't have much experience with source control or working with remote people. I chose perforce because of the blueprint locking that can be done with it. Beyond that I don't have much experience with perforce specifically.

#

I'd just used git before.

pulsar parcel
#

well you really want to use streams, they're a powerful branching tool

#

but you have to create a stream depot specifically

tranquil walrus
#

is there a useful guide on them somewhere? Perforce's own documentation on branch mapping was pretty lackluster.

#

ah

pulsar parcel
#

another gotcha with stream depots is that a workspace needs to be created for each stream branch. if you want to exclude files from certain workspaces then you need to use virtual streams

tranquil walrus
#

Far too complicated for the people I'm working with. Is there a way to create a folder on the depot and move the existing files into it?

pulsar parcel
#

the setup is on your part, the people you're working with just need to make the workspace for that virtual stream which is trivial

tranquil walrus
#

Ah okay, I'll look into how big of a change that would be then.

rugged sierra
#

i need help with source control
i set up source control
on git
using bitbucket
and now
my friend isnt able to directly commit to the repo through ue4
he downloaded the repo
put it in a folder with the same name as the og
but it wont go to my repo

rotund bobcat
#

he has to commit and push his changes

#

and you have to pull

rugged sierra
#

like it goese to a different repo

#

ue4 just sends it to a different repo

rotund bobcat
#

if you type in the cmd git remote show origin it will show which repo you're connected to

#

idk how it works with in engine source control though, I don't use that

upper mica
#

git and unreal are not friends...

rotund bobcat
#

it's totally fine, the only problem is the binary files like blueprints and maps being unmergeable and git not having locks by default

dusk dove
#

it's totally fine, the only problem is two huge issues

rotund bobcat
#

just saying it's not unuseable or anything like that

#

we've got a team of 9 people working on the same unreal project with git atm

#

but if you have a bigger team then I could see where issue would arise though if multiple people are performing similar tasks

sharp fable
#

i had issues with two people

#

we were using our own branches though

#

to work, and were intending to have master be a stable branch

quaint obsidian
#

we have 70 ppl and 3 long lived branches as well as programmer feature branches

#

and git + LFS works fine

sharp fable
#

@quaint obsidian how do you avoid merge conflicts between branches then? there can be cases where you edit something say, a sub level unintentionally and then save all, but someone else had also made changes to that sub level that is now seen as 'new' by git

quaint obsidian
#

the plugin checks remote branches for commits newer than the local parent change on the asset. if there is one, it doesn't allow you to modify it

empty stone
#

Hi, I'm trying to learn what certain dash command are in git. ex: -m, -u, -v, anyone know a source I can read about?

rotund bobcat
bright flame
#

I have just setup git source control, I was duplicating the project before this. I am keeping the project local and i am the only user, so can I just copy the .git folder to another location as a back up ?

rotund bobcat
#

why do you need a backup if you're using git?

#

but you can yes

bright flame
#

thanks ... In case of HDD failure/corruption ...just like to be safe πŸ™‚

rotund bobcat
#

might as well put it on a private github though

bright flame
#

its too big I think and I think I can only make it public

hollow badge
#

would like to install perforce on a nas. I found that I can do this via virtual machine running linux, but I keep seeing many warnings against doing this. why is that?

burnt shadow
#

what warnings

hollow badge
#
#

for example whats stated here

burnt shadow
#

oh

hollow badge
#

for context though there will be like at max 5 users for my perforce server and it's in my basement. will have everything backed up to offsite server as well

burnt shadow
#

their concern is io speeds

hollow badge
#

said something about data loss potentially too

#

i'm trying to run the perforce server entirely on a synology ds918+

#

it'll be on drive one which is an ssd and then I have drives 2,3,4 in raid 5 for cold storage and back up and that gets sent to offsite

burnt shadow
#

no one in that thread brought up any concerns I'd be worried about other than io latency so

#

I bet if you ran it and made sure you can recover in the case of drive failure, it'd probably be fine

#

it might be slightly quirky but it'd probably be fine

hollow badge
#

quirky how

burnt shadow
#

random p4 operations might take slightly longer

hollow badge
#

hmm

#

I have people across the US and one guy in sweden using this so

burnt shadow
#

honestly if that setup causes data loss then perforce is the cause <_<

hollow badge
#

is this not optimal, true

#

my thought was like if the power goes out and the vm shuts down

#

but then again that probably doesn't mean anything different than when the power goes out normally right

burnt shadow
#

well if your nas uses a caching mechanism that loses data in the event of power failure, that would be bad

#

but if you're using a nas you should probably be also using a ups

woven sluice
#

I used to host P4D on my Synology. had no issues. the only reason I moved it up to a web host server was for reliability (I didn't want to be bothered with maintaining offsite backups) and to make it a bit faster for the other users (my upload was 15MBps and sometimes shared, got a bit slow for other users sometimes)

#

^ @hollow badge

hollow badge
#

finally got all of it installed on my synology nas

#

now i'm in bash on the vm and I'm running through the process of creating a new user however I'm not able to enter anything after the initial p4 user -f [username] part

woven sluice
#

I can't remember how I set it up... it's been several years, I just followed some instructions on their website for Linux, but after making a running server I just do everything in the admin gui on my PC

tough gale
#

Hello guys, I'm currently setting up an UE project with my team for the LD. But i'm a bit afraid about git source control, especially considering the fact that we're working with blueprints. Any advices on how to proceed ?

muted jungle
#

does anyone know a git that accepts repos more than 10gbs?

quaint obsidian
#

@muted jungle azure devops

desert willow
#

anyone ever setup a script for svn server to report to discord?

#

+centos7 svn server

gritty ferry
#

@tough gale "especially consider the fact that we're working with blueprints", could you describe why that makes you more afraid than if you were not using BP's? I ask because I am just starting to look at source control, and my project also is mainly BP's

tough gale
#

Because blueprints are binary files, a forge software cannot compare differences

#

inside a blueprint itself

gritty ferry
#

Oh, I guess I need to add that to the pile of things I need to worry about. Thank you for clarifying

tough gale
#

Well, thank you but not thank you for giving me hope of getting an answer

gritty ferry
#

Yeah, sorry about that. I am still so confused on the approach to take on this subject. Very much still lost

#

if I manage to find anything while digging through these forums I will let you know

haughty ember
#

Comparing/Diffing is possible with Blueprints. Merging is not.

gritty ferry
#

@haughty ember thanks for the info, I am doing research with those keywords now.

gritty ferry
#

So far from what I have found thus far @tough gale @haughty ember , is that the closest you will get to achieving merging with blueprints is by using The Propery Transfer Tool https://www.unrealengine.com/marketplace/en-US/slug/property-transfer-tool/legacy-comments , but to use this tool you have to not use categories on your variables, based on the legacy questions for the plugin. Those categories seem like they would be really useful in development though, so I do not believe you would want to sacrifice them.

gritty ferry
#

Additionally, I should state, I will not be offended if I am corrected for saying something that is inaccurate.

gritty ferry
#

Can perforce save to a hard drive, or does it only work if a server is set up?

#

I haven't any comrades to work with, but I have a feeling I should be fit with a basic perforce source control from the get-go in case I work with someone(s) one day.

#

Looking on google for the past 6 hours hasn't gotten me the answer yet

molten marsh
#

Yes you can install and use Perforce locally.

gritty ferry
#

Thanks, I must be one of the very few that are not interested in setting up a server. I cannot for the life of me identify any information showing perforce being used to save to a local disk drive. The Unreal documentation only lists setting up a server as well. I am surely missing something obvious here...

#

AH! The same page, just had to scroll down to "Setting up a Local Workspace". I thought it would have a bigger sign with neon lights I guess.

gritty ferry
#

Man, I have spent all day searching and have made little progress. I have installed P4V but I have reached a wall where it wants server information, how can I proceed with just storing on my local disk drive?

#

I think my previous question was phrased too vaguely, let me rephrase it. Can P4V be used to version control on my local hard drive and not require a server?

gritty ferry
faint cairn
#

Yes and no.

#

It always needs a Server

#

But you can host one locally by just downloading the Server for Windows and setting it up.

#

However it should generally be advised to just pay the 5$ per month to digital ocean to have a server there.

#

@gritty ferry

gritty ferry
#

Can I set up the server on the same computer? Perhaps turn the server on and off each time I turn on/off my desktop?

#

Thank you for your response by the way, I really do appreciate it.

faint cairn
#

@gritty ferry Yeah, as said, you can install the Windows Server on your machine where you also have the client.

craggy swan
#

can someone assist me setting up perforce on digitalocean?

gritty ferry
#

@faint cairn Ah, my apologies, I am very ignorant about servers. Thank you for confirming for me. I think now I feel much safer proceeding.

small tundra
#

@burnt shadow Sorry to ping, but your old tutorial had something mentioning adding wildcard files to P4?

burnt shadow
#

yay i helped I guess

clear gull
#

Guys It's more than 2 years I'm using Git / LFS for my source control. just fine for solo work. but now for collaboration I need to move to perforce cuz every1 knows ue4's git integration is basic AF.
so I'm looking for recommendations on budget cloud solutions for small teams that supports perforce.

pulsar parcel
#

the location of this is pure evil

#

it doesn't even prompt, it just starts deleting files

dusk dove
woven sluice
#

I don't know if it's the most "budget" or not because I didn't shop around, but I run a virtual linux server hosted by gandi.net ... right now I'm paying $14/mo for 40GB, 1 core, 512 RAM... works beautifully as a P4D server if you're experienced with SSH and linux. @clear gull

clear gull
#

@woven sluice ah thanks for info. I'm a total newbie with server stuff lol
Is digitalocean's 5 dollars per month thingie an option ?!

woven sluice
#

can't say for sure but I think it would be. you'd still have to know or learn how to do SSH and work in linux I think, it can be a bit daunting, skim through some guides first. but anyone can do it if they have the drive to keep going

quaint obsidian
rotund bobcat
#

or just not using a plugin also, works, using an external UI like sourcetree or just command line

dusk dove
#

that's not usable when working in a team with unreal

#

the in-editor lock management is required for it to be useful

rotund bobcat
#

well, we do it

dusk dove
rotund bobcat
#

well, we haven't had much issues, since we have one guy working on game blueprints, another on UI blueprints, and all our artists have different jobs, and other developers just stay in cpp mostly, and then we use different sublevels for design/art/... so not very much conflict occurs

clear gull
#

What's the best/updated tutorial to follow setting up perforce on ue4 with digital ocean ?

#

@burnt shadow your guide is ok still to follow ?! 2014 sounds scary lol

burnt shadow
#

no

sly viper
#

Guys,how to resolve trouble with GitHub. Github filename too long

timid trellis
#

Would it be a good or bad idea to upload my game to GitHub in a private repository? Is this considered a valid source control method?

#

I read that repositories should be kept under 1GB, anything above can trigger GitHub requesting removal of some files...unless I read this wrong; https://help.github.com/en/articles/what-is-my-disk-quota

quaint obsidian
#

you can use azure devops or gitlab

neat grotto
#

@timid trellis Unless the project is very small, I recommend using Git LFS. This allows you to not only version very large files more efficiently, but you can also purchase storage packs at $5 per 50GB as needed.

#

Something very important to keep in mind: Git LFS storage has metered bandwidth, so be mindful of how often you push/pull files, how large they are, etc.

#

For example: you get 1GB LFS storage/bandwidth for free. Let's say you add Epic's starter content pack to your project, which is about 600MB. If you push that up to GitHub, it will eat through 60% of your bandwidth allowance for the month.

#

The bandwidth allowance resets every month.

#

But even a small project can eat through that bandwidth quickly if you push/pull files often.

ocean hull
#

Hey, I'm totally new to source code and I want to make a adjustment to InstancedStaticMeshes, but I'm uneducated in how to navigate there. Would someone be kind enough to guide me?

rotund bobcat
#

that's not really a source control question

ocean hull
#

I'm very familiar with Unreal and how it all works, just never looked at the source code itself

rotund bobcat
#

source control is like git/perforce/plasticscm/svn

#

not engine source

ocean hull
#

Ah cool thanks

#

Keep doing whatever it is you guys are doing ;D

willow tangle
#

Hello, does somebody know how to do a rollback on perforce?

#

I'm trying to find the rollback button like in the perforce tutorial but there is no button

molten marsh
#

Find the changelist you want to Rollback and RightClick on it.

willow tangle
#

So weird, I don't get that option

#

@molten marsh

molten marsh
#

Have you got a Workspace open?

willow tangle
#

yea

molten marsh
#

Odd

#

Are you a Superuser?

willow tangle
#

yea

#

do i need to create a new one? cause i'm using the default super

molten marsh
#

Default one is fine. Its a Superuser.

willow tangle
#

hmm

#

does perforce only offer rollback for paid version or something

molten marsh
#

No

#

You have all features.

#

Your just limited by number of Users/Workspaces.

haughty ember
#

@molten marsh @willow tangle πŸ˜‰

#

It's because you're on old Perforce server/client DD

#

This is the new age of Perforce...the new silly imo

#

Undo Changes has taken all the old stuff like Rollback, Back Out, etc and put it into one option

molten marsh
#

Ohh damn.

#

There you go.

#

lol

#

That sucks.

haughty ember
#

Yeah, it's kinda bad imo

#

Because it like to integrate/branch

#

Making everything look strange in editor/perforce

#

With symbol

desert willow
#

Anyone familiar with svn and ue4 projects to know how safe and how to merge svn so I can reduce my space project downloaded is less then 2 gigs but I’m up to almost 45 used for all the commits

woven sluice
timid trellis
#

Is it possible to lock files with GitDesktop? I have managed to set this up correctly but didnt manage the other Git

desert willow
#

I might just do what I’ve done before. Make sure I have the latest commits all downloaded. Delete the repo. Start it over. Recommit

woven sluice
#

just make sure your HDD doesn't fail between those two steps HaroldHaha

willow tangle
#

@haughty ember @molten marsh thank you both!

native hinge
#

Heyo I'm having some trouble connecting my source control. I've got my server setup, p4v workspace seems to be all good, but when I put in my login in unreal I'm gettingthis error "Workspace 'DesktopWorkspace' does not map into this project's directory."

#

I'm not sure what I'm doing wrong because my uproject is definitely in my p4v workspace

#

Well...it turns out I had opened the wrong unreal 4 project and in fact, the workspace was not mapped to to the projects directory

clear gull
#

is it just me or git lfs is down ?! can't push commits since an hour ago

#

I assume Amazon web services is down

vague compass
#

git lfs is hosted by something that can be down but the protocol it self can't offline

winged tiger
#

Are perforce diffs compatible with git?

quaint obsidian
#

yes, you can set up p4merge as a merge tool for git

winged tiger
#

@quaint obsidian I already have the p4 diff. If I want to import it to git do I just need to update the paths and remove #revision number?

#

... //UE4/Release-4.23/Engine/Source/Runtime/Windows/D3D11RHI/Private/Windows/WindowsD3D11Viewport.cpp#2 edit

#

Or when generating the diff from p4 do I have to pass it certain arguments to generate a diff that will be compatible with git?

quaint obsidian
#

oh, you mean like that, im not sure then

rugged lantern
#

anyone got a good tutorial for using source control with ue4, or can help me out? im using gitkraken and it's all kinds of confusing even after watching general tutorials : )

pseudo osprey
#

that's probably more of just git itself that is confusing you πŸ™‚

rugged lantern
#

it's all confusing me, im kinda new to this whole thing, i've had it working about a year ago when i was using C++ but it screwed me over so many times cause i didnt know what i was doing. pushed and pulled and it replaced my .map etc so i had to start over. i just cant get my head around it haha

#

but currently im just coping my files manually to a backup disk. and it's kind of annoying

pseudo osprey
#

it's always hard to explain
to better understand git, I think you have to think in "commits" rather than in files

rugged lantern
#

hm sure, not sure i get it though. but you think it's gonna be worth it for me? im only using blueprint etc now.

pseudo osprey
#

having source-control is useful

#

would git be the source-control you need? that's less likely

#

git has difficulties with binary files, especially if they get big

rugged lantern
#

hm, i dont know? what alternatives do i have? i was using gitkraken with bitbucket cause i found i really liked the "globoards" they had one their site.

pseudo osprey
#

well you have to think in commits if you want to stick with git

#

you don't work "file by file" much

rugged lantern
#

could you define "commit" for me? im really behind on this.

pseudo osprey
#

a commit is basically what changed

#

a commit takes your files at a point A, makes some changes and results in files at a point B

#

as a result, a specific commit also has a list of "all the files right now"

#

I don't promise I'll be able to explain that well btw πŸ˜„

rugged lantern
#

thats ok : ) i think this is helping. but i noticed that ue4 has subversion, perforce and git. which one should i use if i get in to this if not git?

pseudo osprey
#

a commit then as another meaning/usage

#

it perfectly identifies a "point in time" of your files (aka that B point)

#

as a result, a branch is just a name for a specific commit, name that can change

rugged lantern
#

so.. yeah, backing up manually is just coping. while git is more, snapshots you can revert to if i understand you correctly

pseudo osprey
#

yes

rugged lantern
#

there's also branches etc. which i never really understood. maybe thats for another day heh

pseudo osprey
#

well a branch is like going back to the past

#

and making a different new commit

#

then you give that new commit a new name (branch) and you have a different branch

#

time travel πŸ™‚

rugged lantern
#

hm, i see. uh, are branches common usage? or, when exactly would you use a branch?

pseudo osprey
#

when you work on a team, they can become common usage

#

it's useful when you work alone too

#

like, you finish your game and release it

#

then you start working on some amazing secret feature for the next patch

#

but you then need to fix some big bug

#

you put your work for the future next patch in a branch, and the version (aka commit) you released is in another branch and you start to fix it from there

#

then you have to remember to not "forget/drop" the bug fix you did, this is when you do stuff like merging a branch in another (basically trying to take all the commits in branch A that are missing in branch B and putting them there)

#

which tends to not work well at all with the binary files of Unreal Engine btw πŸ™‚

#

for coders that write text file source code, it works pretty well and we are grateful of how git automates all that work for us

rugged lantern
#

oh. so like. for example, "pubg" experimental would be a branch as oppsed to the actual game. i dont think i need to be concerned much with the binary files? i only want a good 'version control'/backup of my blueprints and .map really.

pseudo osprey
#

yeah

#

make a change, make a commit with all the files you changed/added/removed, give it a name, push it to the remote server

#

never try to time travel

#

and you should be fine

#

the day you need to time travel, you can study how it works πŸ˜›

#

remember I said typically you have two branches? the local branch, and the server branch

#

so your work is usually

  • add commit to local branch
  • push new version of my local branch to overwrite the server branch
#

and repeat

rugged lantern
#

oh.. ok. i feel i understand it a bit more now, thanks for taking the time explaining. : )

mellow tendon
#

hello everyone, out of curiosity I was hoping someone could help me set up perforce with c++. ive used perforce before and I can set up unreal engine projects that work with blueprints... but when it comes to setting it up with c++ im not sure how to go about doing it.

#

and unfortunately nothing seems to work.

woven sluice
#

Perforce and c++ have nothing to do with each other though

#

It's kind of like saying you've parked a Toyota in your garage before and now you can't figure out how to park your new Honda in it

#

What problems are you having?

#

(Are you trying to figure out ignore file setup?)

#

@mellow tendon

mellow tendon
#

it says all the files are locked and dont have permision to ask for files etc

#

but permision wise the user is a super user

woven sluice
#

"it" ? P4V, VS?

#

take a couple screenshots and share them. not sure if I can help but you won't get any help if you don't present the info :]

mellow tendon
#

ight, ive gota run out soon but ill take a bunch of screenshots when i get back, i do appreciate the willingness to help so thank you for that

kind laurel
#

I am looking to switch over to Perforce. I work solo. I mostly use a single machine, but may occasionally want to access my code from a laptop. I have a separate server in my home, and I already use that serer for other things. Would I be better off installing the Perforce server on my main coding machine or on the separate server?

molten marsh
#

Use your separate server

kind laurel
#

Thanks!

mellow tendon
#

so the issue is that perforce is protecting it and in order to write to the file i currently have to check out the entire project. I also had to play around with updating VS so that was another problem i had to rectify

#

im sure theres a better then checking out the entire project but yea, not rly sure when i initially checked out the source that held the files I was modifying

#

@woven sluice

#

I apologize for the noob ish questions x.X but its my first time trying to get it to work with c++ >.<

#

i get the feeling its like when I keep walking past something in the grocery store and cant find it... sure the answer is right infront of me but yea

woven sluice
#

are you familiar with perforce "ignore" systems?

mellow tendon
#

nope, but i can research it a bit

#

not sure if it makes a difference but im using the classic depot

woven sluice
#

I think I am too actually Β―_(ツ)_/Β―

mellow tendon
#

lol

woven sluice
#

here's my .ignore file for you to examine and/or copy, you'll have to research how to set your server to use it

#

just open in notepad/sublime/whatever you use

#

basically what is happening above is that you have extra temp files under version control that shouldn't be under version control. you might have other issues too but this is the first one to fix

mellow tendon
#

hhmmm

woven sluice
#

a bit busy but suggest you try to do some research and come back with questions whenever

mellow tendon
#

ight, thank you for the file... at least im headed in the right direction now

#

only question is if im working with someone else since it ignores something important im assuming it wont mess with if i take something out along with my friend right

woven sluice
#

once everything is set up properly, everything will probably work exactly like you expected it would

mellow tendon
#

awesome, just double checking, thanks

woven sluice
#

complications in your setup will arise if the other person is a total non-coder/can't install VS to compile themselves though

mellow tendon
#

theyre the primary coder

woven sluice
#

alright. if you ever get a non-coder in the team then you have to figure out a way to share the compiled binary files with them so they can open the project

#

worry about it later

mellow tendon
#

sounds good lol

#

thanks again πŸ‘

lean pulsar
#

I'm running a local Perforce server, but remote users have been unable to connect ("A connection attempt failed because the connected party did not properly respond after a period of time, or established connection failed because connected host has failed to respond."). I've tried allowing access to Port 1666 through my Netgear router, but no success yet. Any ideas of what I'm missing? Thank you in advance.

fringe abyss
#

how do you upgrade a code project to newest engine version if you are using p4 source control, what files need to be checked out?

woven sluice
#

check out the entire project. upgrade. revert unchanged files. fix compile errors etc. submit.

fringe abyss
#

@woven sluice thanks

past marlin
#

hello all. I'm trying to get UGS (unreal game sync) up and running. I understand the basics and in fact have had it running and pulling in checkins from a local perforce server test that I made with a local engine build that I made (from github source). I'm struggling to figure out though, what engine source files + (whatever) to check into perforce to make sure the rest of the team can get the editors built. I have seen good docs on making binaries submitted to perforce but I'd like to have the source submitted and built by team members. I can't get good answers on what to include and not to include on an Engine/ folder add to make sure this will work properly with UGS. Can anyone shed light on this process?

pastel hemlock
#

@winged tiger Video on how to setup Perforce for UE4 (server, client, engine etc) https://www.perforce.com/video-tutorials/vcs/start-collaborating-unreal-engine-and-helix-core

winged tiger
#

Done, feel free to edit the message if you want it to display differently

pastel hemlock
#

Thank you !

tame depot
#

Hey all, still new to perforce and just found that I can apparantly checkout any file that other's have checked out but the reverse is not true, they can't check out what I've checked out
I'm not finding anything about exclusive checkouts being available for only one user, what exactly enables this? Is it because I'm an admin? Because I own the stream?

blissful apex
#

Hi Garin, yes if you set it up chances are your user is a 'super' user, and you can checkout/unlock any file.

pulsar mango
#

If that's an issue, just make yourself a regular account for work, and only touch super user when you need to

woven sluice
#

it wouldn't be that your files "only one person" can check out are binary files (blueprints) and your files "anyone" can check out are text files (cpp) would it?

tame depot
#

@pulsar mango good thought, thanks
@woven sluice no, it is not dependent on file type, and it's not that anyone can check them out, it's that I can check out anything regardless of whether it is locked, and others can only checkout unlocked files

limpid cliff
#

the power went off and then my github broke - i can no longer see history or pull or push anything 😦 anyone knows what might have happened and what i need to do to fix it ?

jolly fog
#

ups πŸ˜›

runic summit
#

WHat did I do wrong here? I followed the tutorial but I guess I should have chosen personal server?

#

Solution - For some reason, Windows 10 decided these files, setup on a non-program folder on a secondary hard drive, should all be read-only, so it couldn't update any of the server/user permissions

runic summit
#

Anyone want to help me with this Perforce setup in Unreal? I've connected to the workspace and Unreal is detecting it, but I can't check out files, it only says refresh...I read a post about that meaning the file is "pristine" in perforce but all of the tutorials show using checkouts and submiting changes

#

Do I still have to setup a type map for Unreal, or does the latest Helix/Perforce do that natively?

runic summit
#

okay should what should I uninstall?

#

This is literally why I put off using Perforce for 2 years

#

how in the hell can you not connect to a local folder on a local computer

quaint obsidian
#

@limpid cliff can you open a git command line (like git bash) and enter git status

alpine elk
#

Perforce... are they offering affordable versions now!?!?!?

#

Don't see it mentioned on their site, but also don't wanna do a free trial without knowing

#

@runic summit Regarding Read-Only -- that's how Perforce handles revision control between team members. Since Unreal content cannot be merged, you have to Check Out files before modifying them

#

pretty sure you can disable file lock in a setting somewhere, but it's not safe if you're working in a team

#

buuuuut I don't know why you can't checkout, sorry 😦

#

maybe try viewing the Remote repo to check out, instead of in the Workspace view?

woven sluice
#

perforce has been free for 5 users or less for a few years @alpine elk

alpine elk
#

veeeeeeeeery cool

#

I guess the flow is through free trial?

woven sluice
#

the admin interface simply won't let you add a 6th user unless you have a license, if that answers your question

alpine elk
#

It does, thanks πŸ™‚

dusk dove
#

it was free for 20 users before, so it's not new, they actually made it worse

broken loom
#

I got a bigger ssd, moved my projects onto it, updated the workspace root and it goes and deletes my config folder and uproject, but there is no commit that actually did the delete and I can't get them back (or see what else it deleted)

#

Isn't this the exact thing source control exists to prevent? :/

#

Just destroyed my work itself

dusk dove
#

that sound like user error, though I'm not sure how

#

perforce has never unexpectedly deleted something for me

broken loom
#

Well, neither until now, I've done this before

#

I don't see how its user error since its a very simple action

#

Regardless, I need my files back

dusk dove
#

if you reconcile they'll probably show up as deleted

broken loom
#

Nope

dusk dove
#

you never had them in the depot?

broken loom
#

Yes

#

They're in the depot

#

The depot has them marked as deleted

#

But no commit history ever deleted them

#

See

#

Thats the depot view, not workspace

dusk dove
#

did you obliterate it

broken loom
#

No lol

#

I've never obliterated

dusk dove
#

or mess with the depot folders

broken loom
#

Nope

dusk dove
broken loom
#

How can it be deleted if there's no commit deleting it

#

I can't go get revision either

#

Oops its because I gave it wrong changelist πŸ˜„

#

Hmm if I go get revision 1, it adds it back

#

If I go get revision 2, it removes it

#

So there's an invisible revision for each of these deleting them 🀷

dusk dove
#

very strange

#

time to make a new depot just in case, this one has been cursed br_big_brain

broken loom
#

Guess so 😦

dusk dove
#

it wouldn't just break by itself though

broken loom
#

It kinda did

dusk dove
#

that just can't be a thing with all these large companies using it just fine

broken loom
#

They have people who can fix it when it breaks

dusk dove
#

a bug like that would be apocalypse

broken loom
#

Perks of $

#

Hmm maybe P4V broke the workspace mapping when changing the root too πŸ€”

#

Its default mapping that it gives you is incorrect

#

And it likes trying to put its invalid mapping in when you change anything

#

Well, I re-added the randomly deleted files

#

Trying to build and hoping nothing is broken

#

Deleted a bunch of random animations -__-

#

It actually played eeny meeney miney mo with my files..

#

If this was user error it wouldn't be random

dusk dove
#

but changing your workspace mapping doesn't remove files from the depot

broken loom
#

🀷

#

Tell that to perforce

#

Think I've salvaged it

normal cape
#

What do people think about Git LFS as opposed to Perforce?

#

I am personally using Git LFS without issues, but I am just wondering.

noble knoll
#

its shit

#

will bloat the size of your server and your client, on your client it will require constant purges to remove extra data

#

and scales horribly the more LFS files you have

#

it quickly reaches a point where it will be near unusable

#

SVN is significantly better for unreal usage

normal cape
#

Yeah i’d imagine it for binary assets, SVN makes a lot of sense

noble knoll
#

i can tell you first hand that nearl all of the game companies in asia use SVN

#

svn is great if you are doing "trunk" base development

#

so if you are just developing the game on a main branch, then SVN will work much better than perforce and git

#

if you have to deal with branching.... SVN kinda sucks

#

svn also works a lot better with unreal than perforce

#

perforce is extremelly slow

#

and the checkin-out is a pain

normal cape
#

yeah it is what concerns me a bit, with branching and SVN

#

becuse branching makes a lot of sense

#

espeically when developing critical features

dusk dove
#

wait how did you make svn faster than perforce

noble knoll
#

svn is faster than perforce in general. Perforce (specially the plugin) in unreal is incredibly slow

#

becuase you need to checkout files to remove write only

green lantern
#

OMG perforce is killing my project 😭

#

I thought the whole point of source control was to be able to roll back changes, now I have weird duplicate files 😭

lament ember
#

is anyone here uses GitKraken for ue4 GH repo?

dusk dove
#

but svn would have to remove the write lock aswell

lament ember
#

i have to agree on P4 slowiness, it's always a major issue for me to rename or relocate folders in the project

frigid summit
#

@green lantern are you moving files around after they're added to P4?

#

because it'll make duplicates a lot if you do that

woven sluice
#

Other than how long it takes inside of unreal when renaming and moving several files, I love perforce shrug2 steep learning curve though

quaint obsidian
#

@noble knoll what scales poorly with more LFS files? what happens?

noble knoll
#

the more files tracked by lfs you have, the slower it goes

#

in my 6 GB unreal vr project, it got bad enough that it would crash every git client

#

all of them

quaint obsidian
#

that's strange

#

We have around 16K LFS files in our repo, 80GB LFS history total

#

never had any those sorts of problems

#

not sure why LFS would be handling all 6GB at once on your project

noble knoll
#

i also was unable to commit the entire project at once at the start

#

had to separate it over many commits

#

if a single commit had a big amount of LFS files, it would hang

jolly fog
#

pretty weird yea, i am atm sitting at 14GB LFS and there's no crashing whatsoever

#

nice to hear that it also works well with 80GB LFS

#

have you had any data loss with LFS? @quaint obsidian

quaint obsidian
#

@jolly fog no

#

Als I've been able to do large scale moves of assets and such with thousands of LFS files changes with no issue

jolly fog
#

Damn, that’s good to hear

#

In case i bring more onboard

green lantern
#

so I can't seem to get a straight answer from any web searches. so can I literally not get rid of Perforce submissions? Does it just keep stacking garbage on top of garbage forever? Do I need to branch my own project to a whole new project to avoid this?

#

I seem to have destroyed my own project by moving a folder, and I can't seem to roll back that change.

molten marsh
#

@green lantern Once you start using Source Control you should ALWAYS be managing your project via that Source Control. The moment you start moving stuff around without its knowledge, you are out of sync and cause issues.

green lantern
#

?

#

How am I not managing it via source control?

#

I can't figure out how to roll the fucker back is the issue

molten marsh
#

Did you commit the "move" to Perforce?

green lantern
#

I'm NOT moving files outside of UE4

#

yes

#

everything is committed

molten marsh
#

Well then find the ChangeList that contains the move and then Rollback that CL

green lantern
#

now i've been desperatly trying to roll back to the state BEFORE that change

#

yeah I can't

molten marsh
#

Why?

green lantern
#

I can't even find a description that describes how to

#

it's like a mystery

molten marsh
#

Is there no option to Rollback?

green lantern
#

They don't use the word rollback in the interface

molten marsh
#

Ok so you must be on a newer version of P4V then.

green lantern
#

Well I don't know it's REALLY annoying

#

Spoiler alert, it's not fixed

molten marsh
#

What options do you get when you right click that CL?

green lantern
#

but basically I moved the files in that revision, then submitted it, and noticed there were issues when UE4 had broken links

molten marsh
#

Ok so the Rollback option is now in the "Undo Changes in..." option i believe

green lantern
#

I think I tried that, so now I have duplicate file folders and weird shit, my sound animation notifies are still broken

#

I never moved or changed files outside of UE4 editor

#

and I was always connected to source control.

#

I'm so demoralized right now.

#

I Guess i'll try again

molten marsh
#

When you Rollback, it will create a new CL, just because you Rollback, doesnt mean it deletes all the ChangeLists above that one.

green lantern
#

yeah so i'm gonna have a stack of failed rollbacks in my history. Huzzah

molten marsh
#

It moves the state of the project back to the CL.

#

This is important because if you mess up a Rollback, you can always go back to before the Rollback occurred and try again or whatever.

green lantern
molten marsh
#

You can do a workaround.

#

You can force get the CL you want to be on, then recommit that as a new CL.

#

Basically a hard rollback.

green lantern
#

Maybe I should just fucking make a new branch at this point?

#

Nothing I changed after i Moved the files I want to keep anyway.

molten marsh
#

You could branch from where you want to be i guess sure.

green lantern
#

I don't even know how to do that.

#

I don't know what do you mean CL?

#

Change log?

molten marsh
#

ChangeList = CL

#

Also known as a Revision

#

Revisions are in the History tab

#

Which is a list of all the commits for the project.

green lantern
#

since change 24 happened well after 25

#

ughhh

molten marsh
#

If you want to grab a very specific CL

#

Do this.

green lantern
#

how do I clear our this pending change right now?

molten marsh
#

Revert

green lantern
#

I did and it's still there.

molten marsh
#

Is it empty?

#

If its a saved change thats empty, just delete it

green lantern
#

I hit revert and nothing happens

#

this was the rollback I tried and it posted that error

#

so I want to clear it out

molten marsh
#

You have to hit revert after right clicking the CL

#

The Revert button at the top of P4V only applies to the Default ChangeList

green lantern
#

that is the current change list

#

im trying to clear it out

#

before I try to force the change log

molten marsh
#

Its not, its CL 27 which is a saved CL

green lantern
#

ughh

#

there is no 27 😭

#

my list just goes to 25 😭

#

this one wasn never submitted

molten marsh
#

CL 27

green lantern
molten marsh
#

Thats the History of COMMITTED changes

#

Not saved changes

green lantern
#

ok.

molten marsh
#

Pending means its not on the Server just yet but you have it saved ready to go

green lantern
#

I don't even know what i'm looking for.

molten marsh
#

In the Pending tab, right click on the CL27 and hit revert

green lantern
#

Ok thanks

molten marsh
#

Now you can either Branch, or get the revision you want to work from and commit that as the latest.

green lantern
#

So when I did what you said