#source-control
1 messages ยท Page 57 of 1
i have these settings for git:
[remote "origin"]
tagOpt = --no-tags
prune = true
[core]
whitespace = trailing-space,space-before-tab,indent-with-non-tab,tabwidth=4
preloadIndex = true
splitIndex = true
commitGraph = true
autocrlf = false
safecrlf = false
fscache = true
checkStat = minimal
trustctime = false
[protocol]
version = 2
[gc]
auto = 100
writeCommitGraph = false
pruneExpire = 1.weeks.ago
[index]
threads = true
[merge]
conflictstyle = diff3
stat = false
renamelimit = 7000
[blame]
coloring = highlightRecent
[fetch]
prune = true
pruneTags = true
[help]
autoCorrect = 5
[pack]
threads = 0
useSparse = true
[push]
default = current
[repack]
writeBitmaps = true
[feature]
manyFiles = true
experimental = true
[checkout]
optimizenewbranch = true
[am]
keepcr = true
[reset]
quiet = true
[status]
aheadbehind = false
Nah, but when I am back off leave next week ill run it by and see if its possible to OS it, its just a little powershell/bat file combo that locks/unlocks the file and sends a notification to a slack channel
Took me like an hour to hack together
umm what are those settings
id advise core.autocrlf = true, looks like there are some extra customisation options but looks good - pack.threads /http.postbuffer can be used and provide a nice speedup
pack.threads 0 opts into a new threading algorithm afaik
and i dont think http.postBuffer is needed
autocrlf is pointless and mangles files usually
most editors on Windows distinguish between and properly handle CRLF vs. LF
it depends, but it can mitigate some issues/allow speedup with very large files (>4GB)
sometimes, sometimes not - but have had large teams using it and its usually fine*
why would you be pushing those files using Git? also this documentation suggests the opposite: "Increasing it above the default may increase latency for larger pushes (since the client will buffer the HTTP request into larger chunks)."
I don't like "usually", so I turn it off
Thats fair - it depends if you have a cross platform team or everyone on windows tho.
usually for us it's like
yes, gitlab
if a file has certain line endings, it stays that way (i.e, we distinguish some files with CRLF or LF)
and VS, VS code, atom, clion, etc handles it perfect
the only thing that doesnt is like windows 7 notepad
Thanks, that's just what Stack Overflow was pointing me too as a potential solution. The actual problem however was Git.exe being 32-bit and not being able to allocate enough RAM for itself beyond 3.5 GB.
Why it needed that much RAM in the first place is anybodies guess
It uses more ram to be faster ๐
Anybody use UGS here?
how do i disable shared ddcs permanently?
Have anyone worked with perforce? How do you package with source control without checking out the entire project, because I'm getting errors like these:
UATHelper: Packaging (Windows (64-bit)): ERROR: Couldn't touch header directories: Access to the path 'Q:\!3d_Projects\Unreal_Projects\CliffWorld\Plugins\EasyXMLParser\Intermediate\Build\Win64\UE4\Inc\EasyXMLParser\Timestamp' is denied.
PackagingResults: Error: Couldn't touch header directories: Access to the path 'Q:\!3d_Projects\Unreal_Projects\CliffWorld\Plugins\EasyXMLParser\Intermediate\Build\Win64\UE4\Inc\EasyXMLParser\Timestamp' is denied.
Or you're supposed to commit, then check out everything, build, and then revert?
@jade jewel you can set allwrite option on your workspace. This won't mark files as read only on your next syncs. But be careful with this
Or you just can uncheck read only in windows on your project folder. That will get back to read only later again though
You need to exclude Intermediate folders from perforce. Research unreal p4ignore
Hello guys, I'm noobie.. what is this warning? and what is the fix for it? like I can see commands in the pic but I don't understand it! can someone explain
you need to use one of those commands
it is to determine what happens when you pull changes from a branch into yours
the first command will make it merge by default
the second will make it rebase by default
and the third will not allow changes that conflict to be pulled I think, but not 100% on that one
so do you recommend rebase over merge?
both have their advantages and disadvantages
I prefer merge cause it feel like the easier option in my opinion
but rebase keeps your history cleaner, especially if you're working with a lot of people
Compare git rebase with the related git merge command and identify all of the potential opportunities to incorporate rebasing into the typical Git workflow
we are just 2 noobs lol, I guess I'll go with merge!! thanks a lot my man for the help and the link you provided ๐
Where do UE4 Editor settings get saved? I would like to add them to my source control because I have to often git clean my solution. For example, right now I had to git clean because these 2 parameters refused to show up in the blueprints after updating the C++ class:
I built from Visual Studio, tried to compile from UE4 Editor, restarted UE4 Editor. Now after I git clean and rebuild the solution, they finally showed up
The problem is that UE4 Editor settings get reset every time. For example, something that I had to change right away is enable this panel:
Because it's hidden by default
git clean did not solve that problem. Compiling with the editor closed solved that problem. In case you want to go nuclear, the editor files should be stored somewhere in the saved folder. Adding them to source control will probably cause you headaches, and will mean you can't work with others on the project. A cleaner option might be to export your current ue editor layout settings into a file and restore from that afterwards
( @boreal crown )
Compiling with the editor closed solved that problem.
Well, I did close the editor, checked that the process isn't in the list in Task manager, pressed on Build Solution in Visual Studio, build succeeded, then opened UE4 Editor and these 2 arguments still wasn't there
It's not the first time it happens either
Then I did git clean and they appeared
Whatever the case, the problem itself wasn't caused by source control and source control definitely wasn't the only or normal way to fix it. I/we obviously can't try to solve it at this point
๐
Sure, I just wanna know how can I preserve UE4 Editor settings. I got my Resharper settings in the same folder with .uproject and .sln settings called ProjectName.sln.DotSettings
And they're under source control
Bad habits but oh well
If you would insist on using git clean there may be a flag to exclude files or folders, if lucky and true just exclude Saved folder iirc
I'm not insisting on git clean, nope. I don't wanna lose my UE4 settings to make UE4 update the blueprints correctly
And again, I guarantee you the two are unrelated and you didn't need to.
Cheers! are you using something like zapier to send the notification to slack?
no wrote it using pure powershell
@ornate willow https://github.com/KrakenFuego/Sourcetree-Slack-LFS-Notifier
There ya go
Do I need to keep the fileopenorder folder in source control?
Legend! Thank you Fuego
No problem ๐
Hello !
I'm working alone on a project that take a rather "big" disk space (about 15 Gb). I'd like to set up a source control system, but online source control isn't very useful (as I'm working alone), is there a way to set up a local source control ? As an example, I buy and external SSD, and the source control use that SSD instead of a server. Is this possible ?
Setting up a local Perforce server is very possible. In fact Unreal have a decent guide: https://docs.unrealengine.com/en-US/ProductionPipelines/SourceControl/Perforce/index.html
How to setup Perforce so that you can share assets with other on your team.
You can also git init and work locally, if git is more your style
perforce is a good shout if you are alone though
I see, thanks for thoses answer, I'll look into perforce !
i'm attempting to host an lfs-test-server but i am not sure where i put my login information in the url. none of the documentation indicates i need to put a password in, but any combination of https://user:pass@host:ip/user/Myproject results in 404s. i have a user created in the lfs-server test database. ssl cert verification is turned off client and host side and ssl is working apparently as intended.
You are trying to do git right?
@simple lodge yes
it prompts me for passwords, it connects to the database, but its not seeing the files. i'm not sure exactly what the "content" folder is or how lfs-test-server knows which project is which
there's also no log, which is just splendid
true
**Short Git Source Control Writeup **
For Low Budget Productions with more than 5 users
(for those who search for this somewhen in the future)
We are currently using **GITHUB **and **GIT SUBMODULES ** for our source control.
**A bit history: **We essentially started with github, users had UX issues with it so we moved to perforce.
Perforce wasnยดt bad but also introduced itยดs own issues and as our team grew beyond the 5 seats user cap, the per seat licencing cost was out of bounds for our budget.
We shortly switched to GIT CENTRAL which is a real nice plugin (awesomely helpful author too), but its file-locking makes every operation in engine like "just save something" unbearable to work with** for iterative work**.
So we finally went back to just using GITHUB, but set it up on google cloud services, which was real nice and cost efficient and removed the "setting up LFS" headache, BUT when uploading large amounts of data you often get disconnected and have to restart the upload.
We finally went back to "just GITHUB". There we finally tried to fix the main issue many users face when using Source Control to share Plugins from the Marketplace with their team - having to rebuild them all the time ...
**How we do things now **
We finally decided to put the plugins into a seperate github repository that is then linked as a submodule into the main project github repo. That allows us to have an empty git-ignore and gitattribute in that specific submodule, sharing ALL the content in it, while still being able to use standardized git ignore rules for the main repository.
Finally users that upload into the git submodule have their hand on a batch file that when pressed simply copy pastes the desired content from their engines plugin folders into the submodule folder.
Another really nice quality of life change was finally adding the discord webhook to the repositories, meaning any changes always gets pushed to a channel in our project discords.
@chilly frost thank you
Hi slackers, I've uploaded a cpp project to github and downloaded it on a different computer, all bp classes are working fine but cpp files are missing from the project (they do appear in the folder if I looker through explorer)
Any idead what can I do?
@grave tinsel , did you build the project again?
Here's what I normally do. With Perforce tho.
I delete binaries and intermediate folders and the .sln file. If any exist.
I then run generate project files from the . uproject file. A new .sln file will be created.
I then open the .sln file and rebuild the project. Works everytime
Always. Been an interesting year xD
Question, does that mean you arent using LFS at all?
No we went back to standard git + git submodule for the plugin folder for a cleaner way of sharing the project with our team members
you can not use git without git lfs since any large file would break your source control ^^
yes I have
havent tried that yet tho
Try it and see what you get
You are gonna have problems in the not too distant future with clone speeds if you arent using LFS
but as long as it works for you its all good
or do you mean the standard in engine plugin?
@barren otter I got an error:
Failed to connect to Coordinator:
All builds will run in standalone mode.
tho the project is starting
๐ค ๐ค
oh sorry i think we miscommunicated here we DO use lfs โค๏ธ ๐
Guess it's a GitHub thing
like i said you can not use git without for unreal source control
its just not possible
git refuses to take on files larger than a specific size
No it doesnt
There is nothing in the spec that defines it cant accept large files, most packages define it - to stop you breaking the repo
But in the before times, I did a full repo without LFS
A Git repository contains every version of every file. But for some file types, this is not practical. Multiple revisions of large files increase the clone and fetch times for other users of a repository.
But it works!
thanks man!!! โฅ
Git != Github just for the record. Github is an implementation of Git
but its technically not a requirement in the spec
ayeaye ๐ you are right
Awesome.
sry man i broadly use git as a representation of github in my wording
so technically we did the same thing as you described at one section of our development, using "just git" no lfs for the google cloud repoยดs. But for GITHUB we had to return back to lfs
let me fix that in the OP
Im getting really near to releasing a tool that will abstract all of that (and a lot more) away
It also sets up and runs CI (builds, testing, deployment to some platforms) for your project
cool
ping me when its ready
will do, internally ive had clients using it for a few months and just finished a major rewrite
i wouldnt say our current solution is PERFECT but it matches with the state of our expertise atm so its alright iยดd say
and it at least removed the rebuild headache xD
that was rly killing us
We have a button to trigger rebuilds ๐
especially with artists never having up to date VS or any other stuff
you dont know how much time we spent on just sitting in a call helping them install dependencies
plugin rebuilds arent that common for the teams ive been working with, but I will make a note
Same here. You have nothing for perforce?
and then some systems still couldnt build bcs "no reason"
I mean dependencies are easy enough, there is a script that installs all of them ๐
if you have vs installed unreal provides a config
(well VS, msbuild etc)
for vs modules
but funnily enough i had two instances for two seperate teammembers where even after installing ALL dependencies the rebuild still failed
sounds weird, I mean on that you can set your repo up however you like so ๐คทโโ๏ธ should be compatible
source control plugin with perforce is really slow or its just me?
every asset change takes a second or two to go through
Any one using perforce in UE4 and for some reason cant check out deafaultengin.ini ?
after a couple long nights i'm hosting my own gitlab instance.... if anyone needs somes helps wits dats... igotchubrai
mm? it takes like 15 mins to spin one up?
well i first started with lfs-test-server, not even knowing the gitlab self-hosted was a thing. that and i had to incorporate it with a preexisting server and for some reason ssh with windows is like impossible.. but gitbash helped
but yes it's not amazingly difficult, especially the omnibus deployment
@dense coyote what about Gitea server you tested it?
I wasnโt sure if I should go with gitlab or gitea but gitlab has some really nice integrations like Mattermost, ssl, wildcard domains, postfix, and some ci/cd things. Also ansible playbooks which I might end up implementing once I figure out some more backend stuff. Seemed very dev ops friendly
If I want to host a project for a friend it seemed very reliable
@dense coyote Thanks!
cant check out the defaultengine.ini ๐ฆ
Any got this before ?
Has anybody noticed that the git blueprint diff tool sometimes reports no changes to the file when there are actually changes?
It seems the changes are just not surfaced in the diff tool somehow
Has anybody found a way to resolve this issue or work around it?
another issue I've found with source control - unreal engine constantly changes files that I don't actually touch and if I revert the files it causes no observable issues. So it seems like the engine is pointlessly changing files. This is really annoying because pretty much every commit I need to revert a bunch of files that unreal engine has uselessly changed. I wish I understood why it was making these changes
what kind of files
I get this on the skeleton assets a lot it seems
Also on the level maps
I get it on the level maps pretty much every time I open the editor
or any time I open a level rather
If I diff the skeletons it seems like all of the fields and data is the same but the order is completely different
level maps that's normal: as soon as you move the camera it will mark it as dirty and ask for check out
@errant laurel I had this before. I think I didn't connect to source control modified it and Submit it.
Hope that won't break your project tho
I wasnโt sure if I should go with gitlab or gitea but gitlab has some really nice integrations like Mattermost, ssl, wildcard domains, postfix, and some ci/cd things. Also ansible playbooks which I might end up implementing once I figure out some more backend stuff. Seemed very dev ops friendly
@dense coyote
I love Gitlab it's opensource and I always prefered it. Even more now Microsoft has bought github.
The only problem is that I hate working with git. I've set up own Perforce server amd that was.... Time consuming and I have no regret.
I think PlasticSCM is doing something opensource and maybe less buggy than git lfs
I fixed it ๐ had kicked my perforce server to hard ๐
hello! ๐ why unreal's source control is so slow?
even with perforce
It freezes the editor for a decades ๐ฆ
maybe I have to adjust the settings?
which is faster? git + lfs / perforce / plastic SCM? ๐ฎ
I tried lf that was not a good experience
I want to try PlasticSCM but really it's not my priority as long as Perforce is working well. Love UE4 integration with Perforce. Do you have a slow or unstable internet ? Do you have any issues when using p4v instead ?
I have 1 GB/PS dedicated line
I just tried today to submit all project files
And it takes a lot of time to submit 56 000 files
Feels like it would take 1 hour+
And I've read that plastic SCM is 8 times faster (on their site)
Prolly this is and advertisement
Try using P4V and enabling parallel submit.
@light hollow
p4 configurables set these values. tweak thread related ones to suit your hw
`filesys.bufsize=2M
net.tcpsize=2M
net.parallel.max = 64
net.parallel.min = 4
net.parallel.submit.batch = 2
net.parallel.submit.min = 2
net.parallel.submit.threads = 16`
in p4v enable parallel operations in preferences -> server data
Oh! I did yesterday, but not all of these commands! woow! Thank you! Huge help! โค๏ธ โค๏ธ
you're welcome
as side note, 16 threads on my side are utilizing my network at 100%, so going any higher has no use
might be different for you ๐
yeeeeeeeeeees
wish i had 1gbps so i could utilize my 64 threads here ๐
Oi! Another question! Tried to search in google but did not found anything ๐ฆ
I have changelist with 56k of files
But some of them are not exist anymore, were deleted
How can I automatically remove invalid paths from the change list?
I'm getting
The system cannot find the path specified.
Submit aborted -- fix problems then use 'p4 submit -c 17'.
Some file(s) could not be transferred from client.
i guess you can reconcile these files and add changes to cl 17
less hassle more wait option is reverting changelist and reconciling folder as whole
if there are no changes to lose, of course
didn't perforce create separate changelist for you that contains files that failed to submit?
nope ๐ฎ
https://community.perforce.com/s/article/3453 that should have solution for your case i think ๐
Here's a perfect example of what I was talking about previously with unreal randomly modifying uassets, notice how there are no changes at all listed in the bp diff. This is really annoying because I am never sure if something has been changed in the binary that is just not surfaced in the diff, so I am not sure if I can safely discard the changes or not
another example, I just opened this blend space changed one value but then changed it back to exactly the same value as before. Ideally it shouldn't mark this as dirty since the contents of the file didn't change
anyone know if there's a way to undo the effects of setup.bat on a source build, i.e. restore it to a compact state where all the larger binary downloads are gone, short of repulling from git?
easiest probably would be writing small scripts to remove files downloaded by gitdependencies
has anyone tried porting UGS MetadataServer to .NET core?
shot in the dark here, for Sourcetree users, terminal doesn't open with the terminal button anymore. Not a big deal but definitely annoying. I've tried various dated solutions to this in the past, and none have worked. Anyone in this position ever find a fix?
has anyone here tried plasticSCM? how is it compared to git? I have a repo right now that's kind of starting to make my tiny git server eat bite it pretty hard. (~8 Gb)
Hi, anyone with any experience using Git LFS with UE4 here? ๐
plenty...
However none of us are telepaths so you need to actually tell us the problem
๐ฎ
So basically, this is my .gitattributes:
We do not use LFS file locking as the integration with the Editor makes the editor often freeze and crash, and take ages to save assets.
I am trying to share a repo on Azure DevOps with some remote devs. I added them to my organization, but they always get the 401 Unauthorized page. I don't understand how to fix this.
This means that if there are potential merge conflicts due to two people modifying the same asset, we will have to resolve that somehow, as files are not checked out and locked to prevent that.
We made a synthetic test to see what happens:
I modified a map on my end:
My colleague modified the same map on his:
We both committed and pushed the changes.
I was used to SVN where the conflict of binary files was easy to resolve. It was basically "pick one version and discard the other"
To my surprise though, the LFS merge, defined by the "merge=lfs" attribute in the .gitattributes actually merged the binary .umap file.
I had no clue how it could have done that, and it indeed did not do that.
The merge just flat out destroyed the umap file:
Making it just 277 bytes.
So that is my questions. How do I actually resolve binary file conflicts with LFS and avoid it flat out destroying the files?
I found some suggestion to replace "merge=lfs" attributes with "merge=binary" in the .giattributes, but pretty much every one around the whole internet shows their .giattributes using the former attribute, rather than the latter. So certainly I must be missing something.
Hey guys ive been using perforce for a while and today it started giving me this error:
when trying to connect, SL connect to ssl::1666 failed .
Remove SSL protocol prefix from P4PORT or fix the TLS settings.
Anyone know whats happening
ok looks fine...
This sounds like you made the object a pointer rather than a full file
Well... okay... but how does that help me? ๐ My question wasn't about what happened internally (although it's good to know) but what is the proper way of resolving binary file conflicts, if two people modify the file at the same time and both commit different changes, and also how do I prevent this from happening again?
Well it shouldnt do that unless you do something wrong, for me I just choose which one to keep and carry on with my rebase
Also as a side note, if you are full remote you may not want to store builtdata in the repo
check IP hasnt changed and or cert expiry also you are missing the address in ssl:addr:port
I am confused. I explicitly said that when I was using SVN, I had option to choose which one to keep, but when I used Git, it only have me option to merge.
I do not have any other problems. I am really just interested in simple straightforward answer to this particular issue.
If I should replace "merge=lfs" with "merge=binary"... ?
@simple lodge Hey thanks for the response I checked my IP on DigitalOcean and its still the same whats the cert I should check, sorry im quite new to source control, I removed the address for posting,
depends which client you use, mine (GK) gives me the option to choose, as does sourcetree IIRC
That will be probably it. I was using GitHub desktop originally, but had to switch to sourcetree, as GH desktop was just too limited.
I dont use ST, it just annoys the crap outta me, usually use command line or gitkraken
on a conflict you can right click and do choose mine or choose theirs
normally it shouldn't auto merge binary files
Yes, so it was most likely matter of the UI frontend I was using.
Implying I should use command line is not really useful. I intend to be just average git user, not git expert. And even if I manage to master git, all the other people I have to collab with hardly would.
I used sourcetree before
That's the main issue with Git I always had. It was just too difficult to use from a stance of average user.
And even if I tried, people I'd work with would eventually mess something up :/
Not really. When we were using SVN it never failed, because SVN was just dead simple ๐
SVN was a proof source control doesn't have to be overcomplicated, but unfortunately SVN is so outdated finding some modern hosting for it is borderline impossible ๐ฆ
Can you use more than one typemap list in the perforce typemap? e.g. if I have two entries for a file ending in .ini, is it ok with it? and if so, what does it do?
I would guess it uses the most specific variant that it can. So if the ini file is in depot then it would choose the first one.
If you want to use SVN then rent a small VM and self host. I have a friend who hosts his SVN server on his NAS.
I mean its easy to spin up own node, but its 2021 and it kinda sucks
Git is also very simple tbh
Hey, is it possible to remove empty folder in depot that I remove in local ? (Perforce)
I moved assets/folders but they still exists even if empty on other's computer, and on depot
Damn, can someone make a better Perforce with better customer service and pricing already?
Actually, I'm surprised Epic hasn't bought someone out already. Unity beat them to the punch with PlasticSCM
Plastic scm is open source
It may get a lot of support
I haven't tried it but If I wasn't using Perforce already I would
As nodd said I also know someone who uses SVN with Unreal it looks to work pretty well
you need to add them to the project, not just the org. click the project and hit invite in the top right
Err, no it's not.
There's a free edition with limitations, but any serious user is probably paying for it (and you don't get access to the source)
easily, you don't and can't. even if 1 byte is changed, the whole entire file will be deleted and replaced with the latest version, git doesn't handle unreal binaries at all unfourtnately, this is the drawback and why LFS lock should be used especially for maps. you will have to lock the files you are modifying in sourcetree. unreal's git integration is absolutely unusable
Thanks! ๐
Actually I am fine with not locking them. We are small team so we can just talk to each other and prevent working on the same thing. It's just that when it happens in accident, I want to simply chose which file to keep and which to discard. The confusion came from the fact that by default, LFS actually tries to merge the LFS binary files if you use "merge=lfs" argument that everyone uses in their .gitattributes.
I did post a lock to slack script that might help if you using ST
Hey guys ive been using perforce for a while and today it started giving me this error:
when trying to connect, SL connect to ssl::1666 failed .
Remove SSL protocol prefix from P4PORT or fix the TLS settings.
Anyone know whats happening
connect without ssl like it says, then you can maybe look
Any perforce user ?
I moved some files from one folder to another, I then deleted the folder. It works fine on my workspace, but the depot didn't get the information that I deleted the folder
I'm stuck because other's user still have the empty folder..
@mellow chasm perforce doesnt track folders, so it doesnt add or delete either, you can type p4 client on the command like to change workspace settings and change "normdir" to "rmdir", now every operation that leaves an empty folder gets automatically deleted
I've done that, but other users have to delete folders by themselves ?.. Solved: We just used a command line to remove empty folders from workspace, and we changed the "normdir" to "rmdir" to prevent the issue.
I have a problem and I don't know how to solve it.
We have to make a game but github and git-lfs has limited space and we cant use it anymore.
What should I do because we cant use or pay for other SC programs
you could host your git yourself or something, or SVN self hosting
I think azure has better limitations if you're under 5 users
If I remember correctly you can have unlimited repo size (but recommended to keep under 10GB) and unlimited LFS
you should look into it though, I can be completely wrong
with a 50gb lfs data pack I can still upload game files right?
Git is not for storing released binaries
I question what you are doing to have your repo that big
Short of importing tons of stuff into the game repo that shouldnโt be in the game repo
Err, that's not exactly a crazy amount of data for storing a full unreal project. High quality assets take up a lot of space.
Part of the reason you need LFS to make git usable...
for a full project no its not crazy, but considering they have 0 budget having 50gb in a single repo sounds like they did something very wrong
IMO use SVN or Perforce for Unreal projects instead of Git, Git's not really worth the trouble I think
Git is fine, you just need to know how to use it
I've found that it tends to happen when defaults for actors (or other subobjects) change, even when the actual values in those objects don't.
or when properties are added/removed
it wants to reserialize things because the representation on disk will be different even if it ends up loading into the exact same thing
as for actually figuring out the exact reason why it wants to re-save... ยฏ_(ใ)_/ยฏ
Any p4 admins here (or know someone?) with knowledge on setting up perforce infrastructure in the cloud (AWS)? We're looking for (paid) help in upgrading our own bare-bones setup to the next level. PMs very welcome!
Hi, is it usual to enable Large File Storage for Git on all .uasset binaries?
damn github's lfs storage pricing is surprisingly decent. i'm almost enticed to give micro$oft some money. has anyone used it?
I use it
No issues with it really except I think unreal is better integrated with perforce because that is what epic uses internally
So I would go with perforce over git if you don't have a preference either way
So i installed lfs by using git lfs install and tracked .uasset and .umap
however so this wont change anything on a existing repo right? is it possible to convert the repo?
Azure DevOps still has completely free git LFS hosting with no hard storage restrictions ๐
(for 5 people or less)
Do they? idk. LFS doesn't work over SSH anyway lol
how do i make that cmake folder
i dont feel like rebuilding ue4 rn
how do i make dat boi
work
bro
how do i
make cmake
what plugin
this?
where do i generate project
also does clion have autocomplete
or im wasting time for no reason on clion and should just use vscode
Has anyone had this issue with Github Desktop before?
open terminal and try repack
git repack --max-pack-size=100M -a -d
Hmm I tried that but I get the same error
Hi guys, I'm a solo dev hobbyist with some questions about Perforce. How do you host your server? I know I can do it locally for free, but then there isn't a backup in the cloud in the event of a pc failure or otherwise... AWS appears to have some free options but has some sort of cost/interaction that I don't understand at all. Are there other free server hosting solutions to use with Perforce? My project is ~22GB at the moment.
Assembla.com is the only hosted solution I know of for Perforce. I have previously run my own server in AWS too which on a small EC2 is not too bad. You used to be able to run a 5 user version for free
There's no free solution, you may be able to host on the AWS free tier, but probably not. I use Vultr to host my Linux VM which I installed Perforce on.
Also worth remembering running on cloud != backed up.
Backing up perforce is "properly" is a fairly advanced topic, but you can also backup the entire VM machine image which is better than nothing.
raw git (non lfs) is a horrible idea
just run on a cloud vm for a few bucks a month
whats up lorash you are on here all the timee hahha
Wait till your repo gets bigger ๐
hahaha, a few bucks for you is ~10% of my $50 monthly income. Juggling necessities is tight! ๐ Hey, at least free Wi-Fi at Starbucks, right? Oh wait... I know, I know, being poor is our fault.
Then do it locally and sync the folder to gdrive/onedrive/etc
Havent tested it for a couple months, but on my simulation tests it bogged down and required a re-init of the repo after a period of time
(my simulation is 80 commits per day, for 3 years, with an average of 6 binary file changes per commit)
which is based around the top end numbers for 40-50 person teams I work with
@jolly fog epic news, i didnt have to recompile
Microsoft doesn't use raw git, they built a virtual filesystem layer because partial clones weren't good enough lol.
hey guys idk if this the aappropriate channel but anyone here use perforce for source control?how do u guys link up visual studio with perforce to do commit to the worksapce(client/server)
in the extension tab,there only perforce diff margin and the p4v plugin
is there any documentation on perforce helix core side for this?
ping me btw since i muted this channel
they didn't, you're right
Im havign trouble setting up git hub with ue4
I followed this tutorial exactly
In this short tutorial I will be covering the setup process for project collaboration utilizing the github integration within the unreal engine. I made an effort to convey the necessary information as fast as I possibly could while still covering everything needed to properly get started. If you have any suggestions for other tutorials concernin...
i get this message
but i dont see any new repo
My project size is fairly large (30~ GB) so my best guess is that its still uploading and will show up in my github app once its fully uploaded
but i dont know how to check the progress
ohh thats the better channel^^' so again hope thats dont count as spam^^' eyy, somebody know anything about perforce and SourceControl? we are kinda struggling because the LOG is full?!? and yeah i found stuff on the internet but I'm a Artist and dont understand that language^^' so if anybody can help us, damn we would be really grateful
Hi, does someone knows why github desktop show me conflict and won't let me resolve it manually? And when i do the merge or cherry-pick commit it does not update whatever it's in the commit...
same thing with merges
Easiest way is to log into the machine and delete the log periodically ๐
Although there's a good chance you're going to run out of space soon anyway if the depot and log folder are on the same drive.
But i cant log in because the log is full
I mean, log into the VM hosting perforce
Ohh i see, oke i will try
I just figured out I can .gitignore all my external content (UE Market Assets) and only store my work. I've shrunk my git repo to under a gig.
@worn linden Why would you want to do that? you should have all the source/content required to run your game in source control.
Someone should be able to sync from scratch and be able to build/run your project.
Because it's huge. And I already have it under "source control" because of the unreal store.
I guess I can see how that would work for solo development. It's awfully limiting if you want to ever want to collaborate (which I recognize not everyone wants to do).
Though maybe the store has a solution for that as well. I'm not at the point to have included anything from there in my own project so I haven't interacted with it very much. I only know that the stuff we've bought from there at work has all gone into source control.
I had a project that balooned to over 100G... It took forever to commit and push.
Yeah, games get big. I'm not sure our depot size at work. But we're using perforce which, while I don't really know all the in's and out's of how it differs from git, based on general readings I'm led to understand it handles the binary/large depot sizes better.
anyone use perforce that can help me out with set up
im trying to get multiple users able to access the files
but dont know how
i use git as source control in my project
everything works but it doesn't update project settings such as Engine - Input
despite trying to persist or check for content
how do we fix this?
quick question, where can I find the built in blueprint merge tool>
I can't find it anywhere
It seems like people have mixed opinions on it's usefulness but I want to at least try it out
OK I found the blueprint merge tool, it can be accessed from any BP file->merge but I don't really understand its intended use case. What I would want it to do is take two different versions of BPs and merge them together into a single output BP but I can't seem to find a way to do that
has anybody used this tool before? What is its intended use case?
Hi everyone! I'm new here, hope it's okay if I ask a few questions? I'm trying to connect Unreal to Subversion (SVN). I got that to work, but now Unreal keeps asking about file check-out and keeps locking files. I'm doing a solo project right now, so I don't need any of that. I tried disabling "Automatically checkout on asset modification" and "Prompt for checkout on asset modification", but it keeps doing this. How can I turn locking/checkout off altogether?
Also, when I move a blueprint in Unreal, it leaves behind a tiny file in place of the old blueprint. What's that for? Moving back didn't work because of it.
Hi, is it possible that adding a static mesh asset to Perforce source control could trigger the regeneration of LODs?
We've got some high poly meshes that take ages to generate LODs for and UE4 seems to regenerate them at randim
ah, that's not for me as a solo dev then, but from a locking perspective that's a very nice feature. Thanks for explaining!
I am part of a small team of two using perforce for source control. Right now to build we have to check out the intermediate folders and plugin folders so they aren't read only. Is there something we missed in our process or ignore files to allow us both to package a build at the same time without checking out these folders?
you pretty much stated the solution. you should have set up an ignore file when you started using perforce, if you already committed files that would now be set as ignored into a depot then the ignore file will not apply retroactively - you have to delete the folders from your source control (you can just delete them and commit the change, or if you like to live dangerously you can obliterate them in P4A).
you can find some template ignore files online for git or perforce and adapt them to your needs
also if you didn't set that up, i'm betting you didn't set up your typemap either?
I'm not sure it was done by their dev ops team
in p4v the filetype is listed after the file, e.g. <binary+lS6> ... you can right click on a file and press "change filetype" to see what all the different flag types mean. it's another thing that is not applied retroactively but is really important to make sure your repo doesn't bloat with old garbage file versions (e.g. you can limit uasset files and other source art files to store only the past # of versions)
but, one thing at a time.
fix your ignore setup
Any ideas what this means? I haven't been able to open my github desktop app either
is there some silly way that when a .gitattributes gets updated in 1 repo, it will add only lines to the .gitattributes on other repos? I would imagine I would do this locally on my machine and commit it to the repo. Does SVN have some kind of "sync and only add lines, no removing lines" feature? (I feel like i've done something similar extremely long ago with facepunch studios mod+svn for garry's mod)
anyone know to to change the origin source for a project to a different git repository?
poggers thank you for your time
@woven sluice thanks for your time, sorry I didn't respond earlier I got pulled into some other things. Is it proper to have a p4ignore file at the root of each project folder or should there only be one at the entire perforce root?
one difference I see for example is on the depot, I don't see the intermediate folder (meaning the p4 ignore is working as expected and this hasn't been committed)
but on the workspace, I do have this folder
oh I see the issue actually, it isn't the intermediate folder but the intermediate folder of each plugin
we do want to share plugins on perforce, but maybe not these sub folders. On your perforce set up, do you add the intermediate folders of each plugin to your p4 ignore?
oh hmm, I found from this post it seems we need to add this to our p4ignore so we avoid plugin intermediate folders also
So using Perforce is quite a learning curve when coupled with dealing with the main task of game development. I am doing my best to sort out the issues as they pop up. Right now I need to deal with the fact that perforce is tracking some folders that shouldnโt be tracked. Like the โPluginsโ folder and the โBuildโ folder. Not sure why these wher...
Hello! Trying to start p4d perforce server from service script file in Debian 10
Getting this in journal
Perforce server[2907]: Perforce server error:
Database open error on db.server!
open: db.server: Permission denied
service file
How did you install it?
I might have to reinstall windows on my perforce service - the workgroup I have is not stored on the OS drive, so I should be okay right?
Can someone please confirm this? Don't like working without source control
Without full details of your setup no-one can confirm this 100%. If you have the depot data and meta data stored on another drive then you should be able to reinstall perforce, but it would be a good idea to make a backup first using the recommended procedure.
Workspace != Depot data
@cyan jay Yes, it's a depot that is stored on one separate hard drive - I even installed the actual perforce admin client on that separate hard drive - my hope is that if I do a fresh install of windows 10 on the main OS (separate hard drive) there shouldn't be any issue - if what I have describe is accurate, is this true :
I won't lose any data at all but I may be delayed in setting up a depot that uses that same data - (kind of like installing unreal to a new machine with the same ini files, you may have to make sure you have the same plugins, for example, but your ini files will save your settings) (this is probably not a very clear example)
if you run p4 info where does it say the Server root: is?
that's the problem - i can't the client to start up - windows is f'ed up
@cyan jay how do I work offline?
I think I have successfully copied server files from one machine to another once before without going through the proper migration process, can't remember much about it but I don't recall it costing me too much sanity
Thanks - hopefully no news is good news
I note there is a really long pause when I save any file now - probably because it's checking for source control connection and timing out - is there a way to disconnect from source control? I'm looking in editor prefs and I only see 'prompt for checkout'
@runic summit I'm a bit concerned about your situation, but if you are only reinstalling Windows and not formatting the drive then you should be ok...
I appreciate it - I'd be concerned anytime someone talks about depots and wiping anything, especially if they are infrequently/inexperience with setting up depots
if you can tell us where the server service is storing the depot data and metadata, then you stop the service and back that data up somewhere.
this is nothing to do with the client or workspace
In an ideal case you'd be able to create a Checkpoint (see https://www.perforce.com/manuals/v15.1/p4sag/chapter.backup.html#DB5-74301), backup the Checkpoint and the depot files.
It's straightforward to restore a new server from a checkpoint and the depot files.
Yeah, I'm hoping that repairing/reinstalling windows from a flash drive will let me at least open up perforce and then perform a backup - I don't like relying on windows repair stuff, so once I'm able to do that backup like you described, then i'll do an entire new install in windows -
on perforce how does one do something similar to xlink or submodules?
Like... git submodules? You wouldn't... not really
depending on whether you're in a stream or "classic" depot you have options though
in a stream depot you can have virtual streams which map any path on the server to any path in your local workspace (including other depots on the same server)
in classic depots you have the same thing but you can just make a custom client view for it
if you're asking whether you can have multiple perforce servers in a single workspace, I don't believe that's possible.
But if you just want to have, say, some plugins in separate depots but used together in one project that's totally doable
In a classic depot you could setup something like this as a client view, a stream depot would be similar but probably done with a virtual stream instead.
//MainProject/main/... //YOUR-WORKSPACE/...
//Plugin1/main/... //YOUR-WORKSPACE/Plugins/Plugin1/...
//Plugin2/main/... //YOUR-WORKSPACE/Plugins/Plugin2/...
Ah okay so virtual streams can be used for that
Yeah, virtual streams are basically a way to take what'd normally be a mapping for a single workspace (like the example I posted) and save it so anyone can use that mapping
So basically I can take any depot(s) and tie them into a project workspace such as if I have a custom ue4 for both projects or just a shared module
Thanks @merry verge
Yeah, pretty much. You could even have a single depot for all your shared stuff and map it appropriately - it's flexible, how you do it is up to you.
im making with my friend a game with multi users but we want to save the game with source control but when i try it says source control:failed to connect to source control check your settings and connection then try again but i dont know how to do the settings right please help ๐
@cyan jay I was able to get into windows but i will have to wipe this stupid OS clean - I'm going to take your advice and do a checkpoint and try to back everything up -
I tried p4 verify and it ran a list and seemed fine and then I tried to do a checkpoint and it happened like instantly - way to fast for 700 mb of versioned files https://www.perforce.com/manuals/v15.1/p4sag/chapter.backup.html#DB5-74301
Unless I'm doing this wrong, the md5 checksum didn't match either
SHA1 hash of E:\Perforce\checkpoint.1:
cee5fec90508f16ce701240355b104a1286de6e3
CertUtil: -hashfile command completed successfully.
E:\Perforce>CertUtil -hashfile "E:\Perforce\checkpoint.1.md5"
SHA1 hash of E:\Perforce\checkpoint.1.md5:
5115a77485f36879251db6671f44f57d2e47d6c4
CertUtil: -hashfile command completed successfully.```
Checkpoints don't contain the files themselves, just metadata stored in perforce's database
The data for the files themselves are stored in the appropriate folder for the perforce server
This. Also the .md5 file is a text file that contains the hash, don't hash that.
Assuming E:\Perforce contains depot data, and that it's the sefondary drive, I'm feeling confident you can restore the server from that.
Shouldn't even have to do anything but point the new p4d install at that location. If it complains then it's probably just that the database needs to be updated.
I've moved p4d installs before, it's pretty foolproof... just move the files and configure p4d to use the new location. Same should apply here.
Itโs the .git/index.lock file - probably means an unsafe shutdown while doing something
Im not able to see my repo in git hub after implementing source control
anyone can please help?
Does anyone experiencing their editor softlocked when fixing folder redirectors with in-editor source control enabled?
Hello guys, I am having an issue with perforce where my project wasn't checked out properly with perforce, and I logged into perforce after all my changes were made and it is giving me a message "Failed to save" when I try to submit my changes. What is the easiest way to fix this error? If I add the whole directory to a change list, would this fix it or is there a better way?
@jolly fog yes I tried to push my project there but I get an error
so when I connect my project to source control its sucessful
after that I click on "Submit to source control"
and nothing happens
for a while
so what do i use?
oh
do you think perforce is better than github?
I want something which does not compromise the project really
oh
i thought git is the same as github
probably irrelevant now but these are the errors i get when i push the files
yeah its been like this for the past 2 months
okay Im gonna reboot my pc and delete the index.lock file
i suppose that should be enough to fix it
i have tried that one
it didnt seem to work
so I've rebooted the pc and deleted the index.lock
so i think i should be able to start the editor and push it to the repo
right?
alright
yeah I have got it
thanks for the help
Anyone have any tips for setting up P4 streams with source build of engine with multiple game projects? A mainline stream for each game makes sense, but do you also have a dedicated engine stream? Do you manage engine dependency within a game stream using import+ or other means? Virtual streams for different team members (e.g. artists vs coders)? Seems like there are a few ways to manage such a situation but if possible I'd like to choose the "right" way, or at least keep things similar to Epic's setup so that default BuildGraph/UGS etc will continue to work. Anyone willing to share and discuss possible setups?
Despite the official UE4 one, is there some optimized, up-to-date typemap and p4ignore file?
I am wondering if one can diff BPs in GitHub Desktop or SourceTree, just like in the editor?
you can use editor as diff tool but not actually to diff text etc, only for uassets. also I did not found way to merge it by using the editor + it opens new instance of ue4 every time I do diff
Hello! Is it possible to save perforce password? To not enter it every time when I opening p4v?
I've read about win registry P4PASSWD md5 thing which should be used instead p4 set
but still not work ๐ฆ
Still asking for a passwd
Anyone have a good .gitattributes for Unreal projects for LFS I could use?
I've been using this, works for me
thank you
So I had to reinstall Windows and I kept perforce on a different drive but when I tried to start up P4 admin, it wouldn't work and told me to reinstall it
I reinstalled it to that same directory but it doesn't recognize any of my databases or my server
I think perforce is just dedicated to making sure that every single time I ever have to do anything with it it is going to be hard no matter what
It's acting like it cannot connect to the server - but I'm using p4 ADMIN, so it should be HOSTING the server
Why would I need to OPEN a connection if I'm HOSTING a server? every time I do this it's frustrating AF
I'm not an expert at this backend stuff but did you actually run the server (p4d) ? P4A doesn't host anything
I've always had to run p4 admin to get it to start the server
that was my workflow basically
i checked command prompt and it says error listen error
Aren't there server config files saved in this directory?
I was using it like 30 minutes before wiping windows (on a separate OS drive, not this one)
They call it backend because it is a pain in the ass
i think you can use p4 admin to stop or restart the server, maybe that's where you're mixed up. if this is running on windows, it should be set up as a windows service that starts it
or you run it manually with p4d (the actual exe) or you use ... shoot, there's some other helper you can use that starts/stops it
why is it telling me it can't connect - WTF is it TRYING to connect? it's supposed to HOST
p4dctl maybe (this one may be l00nix-only)
ok well maybe you should go break something that isn't valuable and come back
lol
I'm good, I appreciate your willingness it help - it's just frustrating the blind spots I keep encountering, no matter how much I try to be diligent when I am forced to do one of the things, something I didn't know I didn't know** always bites me in the ass
I wouldn't have touched this machine if windows hadn't decided to just break, inexplicably -
And I spent about 3 hours trying to just repair windows, just so I wouldn't have to mess with perforce reinstalling
I still can look at my perforce server.locks just sitting there in there opaque files mocking me
HoJo is right... P4Admin doesn't have anything to do with setting up the service and only manages it once it's running. The p4d service is managed via windows services. You also need to make sure you've configured the perforce server root directory to point to wherever your files are. I don't know how you do that on windows, as HoJo mentioned it's p4dctl to manage that stuff on linux.
here's a l00nix (yes i'm going to keep using that stupid speeling) example ./p4d -d -In p4master -p 12345 -r /opt/perforce/servers/p4master (as Siliex points out running p4d just launches the server exe, it doesn't properly set it up as a Windows Service to run on boot)
I never saw an option to do any of that -
That'll start it manually, but doesn't help with the windows service.
There's information on this page: https://www.perforce.com/manuals/v15.1/p4sag/chapter.windows.html
which is an old guide but should still apply
It sounds like you need to copy p4d itself to the new server root, then run a bunch of commands to set it up
how do I get the visual client to just recognize the server
And where is the server root? I thought it was just in the perforce install folder
well. we've told you a few times now you have to run the program. so all i can do is tell you again: you have to run the program
I didn't delete them, so yeah, they are in a non-os drive, all the db files
the versioned are in a separate drive as well but I'm just trying to get the server to remember where everything was poniting
standby I''m reinstalling my screenshot program
Go to the page I linked, look at "Multiple Perforce Services Under Windows". You aren't running multiple services but the process for setting up with a different root is the same.
Also see this page: https://community.perforce.com/s/article/2556
in fact, ^ is probably easier
ah
capitalization matters, also that line doesn't really matter. In fact, here's a more up to date version of that guide - https://www.perforce.com/manuals/p4sag/Content/P4SAG/installing-windows-multiple-services.html
finding perforce docs is a pain, half the time you find them from a decade ago
registry: create key: The system could not find the environment option that was entered.
so the server isn't running
I thought it was installed when you install the client - I tried svcinst
I don't want to change the environmental variables but it is asking me too - but if I do this wrong, then it won't match what I previously had
if you do this wrong, you'll just have to correct it. as long as you've got a concrete backup of your server folder (you did make a second copy of it right) then don't sweat things like this too much
I can see the DB files there right now
and my versiond files are where they should be
as opposed to the actual server files themselves, I don't even know what they are, though I can see server lock folders in my perforce install, so I'm assuming that's related
basically, this PC is assigned a fixed local IP by my router, so that hasn't changed - and the router has a dynamic DDNS that ponits to that fixed IP, so that shouldn't change either
but in terms of setting up the server, I'm not sure what to put for the environmental variables
Why isn't there a "load previous server settings" or something is beyond me
once you learn it all, I think the perforce server instance is actually fairly simple on the outside. there is an executable p4d.exe, it runs, and it operates on files in that folder (the root folder). p4d.exe may change how it works depending on certain environment variables. a windows service can be used to start and stop p4d.exe. (actually maybe p4s.exe)
did you set P4PORT environment variable?
how do I just tell it to use this crap?
i always used 1666 so I shouldn't need to set it
when I try to start the server I never see the server appear in srv in windows
the server is probably already running as it's failing to bind port 1666
How can I find it then?
if you want to run from p4d via cmd line make sure to stop the service first
or P4PORT is set to that whole big address and should possibly only be set to 1666, or something else/similar. I'm not sure.
That could be it too
it will be called p4s.exe but it might be running as a different user
\
I'm admin on this machine so I'm not sure how it could be somewhere else
How can I KNOW that the perforce service was actually installed????
fuck you perforce....fuck you soooo much
What would the NAME of the service be called, if it is running?????????
I've not used Perforce on windows for years, but I think it's called Perforce something
doesn't it ask you what the name should be when you install it?
I can't really remember
what can't connect?
my other computer, or even this one
if I open up the visual client
I don't even get the option to configure the depot/streams
I don't think Perforce actually likes its users
I tried this and I get that bullshit - how do I reset that stuff?
User name: Blakestr
Client name: DESKTOP-0UPBT6J
Client host: DESKTOP-0UPBT6J
Client unknown.
Current directory: d:\Perforce
Peer address: 127.0.0.1:55022
Client address: 127.0.0.1
Server address: DESKTOP-0UPBT6J:1667
Server root: .
Server date: 2021/05/25 17:28:11 -0400 Eastern Daylight Time
Server uptime: 00:07:07
Server version: P4D/NTX64/2019.1/1865205 (2019/10/11)
Server license: none
Case Handling: insensitive
wow, the windows reinstall gave my computer a new name - same windows key though
try it with 1666
here?
p4 -p 1666 info
so you ran p4d and it said starting... but did you close the window after? your ultimate goal will be to run it as a service so it's in the background I think (I too am only familiar with linux, where you run p4d as a daemon, bit different than windows)
Unknown action '-n'
Perforce Service Manager Utility:
SVCINST action [-d] [-n name] [-e exe] [-a]
-d enables debug messages, (use as first flag)
actions - info, create, start, stop, remove
info
-n name Specify the name of the service.
create
-n name Specify the name of the service.
-e exe Specify the executable for the service, required.
-a The service is to be autostart on boot, optional.
start
-n name Specify the name of the service.
stop
-n name Specify the name of the service.
remove
-n name Specify the name of the service.``` Syntax is the way that nerds hate on non-nerds
clearly
I just now closed it because like you said, better to have it as a service
WHERE?
I don't think I'm being illogical assuming the window service should be called "perforce" nor unreasonable when I'm pissed that I can't find ANYTHING in the windows services, despite it saying the service already exists. No it does not Perforce. No it does not.
Found it, (windows doesn't refresh the service window easily) opened up a new instance an then tried to start the service and I'm not allow to start it because reasons
This is why Perforce sucks ass - https://weblog.masukomi.org/2007/08/31/dear-perforce-fuck-you/ this is a 13 year old article talking about how non-intuitive the program is
Your complaints have little to do with perforce. And the complaints in that post have nothing to do with your issues. This is generic server administration stuff that you aren't familiar with, which is frustrating but you're taking your anger out on the wrong thing.
Since it seems to be having trouble starting the service, I'd start by using svcinst to remove the perforce service and then re-add it
i'd hold on that. check permissions
Ah, yeah - that first.
unfortunately i wouldn't have any more guidance than that lol
maybe e.g. "The first Error 5: Access Denied error was resolved by giving permissions to the output directory to the NETWORK SERVICE account."
(a lot)
Stop and Delete Service
ServiceName=Perforce
Service already stopped
Deleting service

I deleted it, exited the services window, started it with the same command but it won't let me actual start the service in windows services still
I'd check permissions on the p4s/p4d executables. Best guess is what hojo said - they're missing permissions for the service account.
You should be able to see what the service is trying to run with if you go into the service's properties
the log on tab
it's probably the default "Local System account"
but it's worth making sure
ye, so you need to go to your server's folder and make sure the entire folder and all files in it have permissions for the NETWORK SERVICE account
which one is the network servic account?
it's literally called NETWORK SERVICE
it's possible that it might be LOCAL SERVICE or LOCAL SYSTEM too, not sure.
no... right click the folder -> properties -> security -> Add
enter "NETWORK SERVICE", Ok. Probably give it full control. Apply.
remove that entry, try LOCAL SYSTEM instead.
same problem
one sec
Every group or user listed here has Full Control ticked and applied
Sorry, try LOCAL SERVICE
make a new group?
no
Honestly if you can't figure this out at this point, it seems like permissions on that folder are screwed up and you may want to remove your perforce install and start over. This time instead of trying to install p4d/p4s to a separate directory, see if you can get the blank perforce server running and then change P4ROOT to aim at your old install.
I am going to miss having source control then
This opaqueness and inexpliability and inability to interate on any progress drains me so much
I know this would happen - I didn't want to touch the perforce server that I had running because it was working fine
I don't think anyone should be recommending to run a perforce service yourself if you don't have experience with system administration, tbh.
Look into git if setting up perforce is too much.
I had set it up before with less trouble than this
Why don't the p4 docs have anything about when the service refuses to startup?
, there is a permissions issue relating to the files in your P4ROOT folder or you are are trying to re-use P4NAME (Windows) and the serverID of the other Helix server that is already authenticating against that very same LDAP.
a permissions issue seems likely but it doesn't say anthing about fixing it
Because it has nothing to do with perforce
This is an issue with windows trying to start the service
Perforce isn't giving you that error, windows is.
unless you mean that new thing you posted, in which case I don't know where that came from so I can't answer.
you just recommended me try a competitor to perforce because of how frustrating it was - it would behoove Perforce to include support docs, even if windows is to blame
Perforce expects someone with experience in systems administration to be setting up their service, they don't really cater to hobbyists.
And honestly their pricing structure is setup such that they seem not to care about indies either.
Well this might just be the last straw for me - thank you for taking the time to try to help though, I do appreciate it, @woven sluice as well, thanks to you too - sorry for venting
It's all good, I totally understand the frustration. I definitely wouldn't go without source control though, look into git (but maybe after you've had some time away from trying to set things up haha)
i hated learning linux but i did not mind setting up perforce on it lol. run it as daemon, set it up to run on boot, done ๐
what if i just run it as a server and not a service then?
I don't restart this machine often and can remote into it if I need to manually start the server again - I'm working alone so it's not like I'll be messing up someone else's workflow
where are the server settings installed at on perforce? so I can edit them without having to type them into the stupid command line
I can't see anything about it now
the boot settings aren't stored anywhere or are only stored as system environment variables AFAIK
port, root folder, those settings
when I isntalled perforce 90 minutes ago it had me enter some stuff
Perforce server error:
Listen blakestr.ddns.net:1666 failed.
TCP listen on blakestr.ddns.net:1666 failed.
bind: 97.104.60.186:1666: WSAEADDRNOTAVAIL``` this crap - where can I EDIT IT? (not in command line, it has to EXIST somewhere)
system environment variables
there's like 5
it might simply not be set then and is generating defaults
or maybe hte windows install does use registry somewhere
search for that ip in registry? idk, thinking out loud
Okay THIS is the thing I need to set - what do I put here?
I never connect to a Helix Core server from this machine
this is the HOST
is this right?
just 1666 if you're installing this on the machine running the server
machineip:1666 if you're installing this on another machine on your network
And user name?
Before I was using Blakestr I thought but maybe I don't have to put that one this machine?
well... your chosen user name. whatever it was. for client/admin access with p4.exe / p4v / p4admin
Perforce server error:
Listen 1666 failed.
TCP listen on 1666 failed.
The specified class was not found.```
I don't remebmer ever having tyo do this? do i need to do this?
"initalize personal server?"
this is where installed it
Where it has been running fine for 6 months
Until I committed the sin of reinstalling windows
You used a personal server originally?
Not sure, I don't think so
That's different than hosting a normal perforce server.
Ok, just making sure.
try specifying -p 1666 to p4d
before I just would open p4admin and then it would work
You probably just setup the server with whatever defaults it had. Which would be fine now, but it wouldn't use the data you already had.
christ jesus I think we got it
so, does p4 admin automatically start the server? I NEVER used the command line like you showed me
It does not
It would have started automatically as a service
p4admin is just for managing a running server
i might have done it, let's try the service again this time
svcinst -create "Perforce" -p 1666? what's the syntax again?
the -p was for p4d, wouldn't help here
svcinst create -n Perforce -e C:\some\path\to\p4s.exe -a
Setting the port (which is what -p does) is done separately from this, and is unrelated to the access denied issue you were seeing
p4 set -S Perforce P4PORT=1666 would be what you run after svcinst.
also might need to run p4 set -S Perforce P4ROOT=C:\some\path\to\your\server\directory
service is running at least
so the service isn't setup - the server from command line worked, but not this service ...
D:\Perforce>p4d -p 1666
Perforce Server starting... works instantly now
Did you run the p4 set commands?
and then restart the service from the services panel?
what server directory had nothing in it
D:\Perforce contains your old server root?
It looks like D:\Perforce is
I figured Perforce because all the DB files are there
but why is it giving me the wrong user
when I start server from command line, works fine - but when I start from a service, user can't connect - (I know it's working from command line, I connected from another computer and the CMD prmpt even logged when I mistyped the password)
You did p4 set -S Perforce P4ROOT=D:\Perforce?
D:\>p4 set -S Perforce P4ROOT = D:\Perforce
D:\>p4 set -S Perforce P4ROOT=D:\Perforce
D:\>
goddamnit
lol
apparently I put evil spaces in there
this is why Unreal/EPIC deserves all the money - they did their best to get RID of syntax (aka blueprint)
Well there went 2 hours of my life I'll never get back but It's done so do you guys have a venmo or something so I could buy you a drink?
no but i'll accept a discord emoji drink
Anyone else have a problem with github breaking their ue4 project?
any way to keep P4 plugin enabled but stop what its doing every time i save an asset? saving takes an extra 2-3 seconds every time with the plugin enabled
Please tag me when you get this as well - I'm curious too
Also, though it's rare for me to do it - there are times I would like to disconnect from source control - can't remember how to in unreal
just click the source control button, set it to disabled in the popup
Holy crap, UE5 actually has support for more than the default changelist in perforce. And shows files that aren't uassets. It's still pretty bare bones, but you don't have to use P4V to organize changes anymore.
Damn, it even supports shelves.
you know you're a nerd when that makes you excited a little bit (i'm excited a little bit)
๐
Anything that improves workflows for non-technical people makes me happy, especially when it potentially means there's one less tool to make them learn (P4V in this case).
So, I'm not able to connect remotely over the internet to my Perforce server (I was before but then I had to set it up again) - My dynamic DNS is targeting the correct IP and the port was left to default (1666) - it's saying WSAETIMEOUT as the error code
what am I missing here? I can remote into the machine that is hosting using google chrome remote desktop - and it shows me this as the server's IP (looks like a mac address)
I can connect the same user on there using the same login info so it's not the wrong password or anything
How can I target a specific machine on an ip address (i thought that was what the port was for, but the IP to the router, then the IP to the machine, then through the port
It was weird - windows changed the name of the machine even though I'm using the same activation key (i did a clean format, fixed the reasons I needed to reinstall windows in the first place ) My router is reserving this machine's address and it still is using the same local IP (i'm assuming because the router didn't see a change because it uses the mac address of connecting machines to assign their IP)
I'm guessing my router is the culprit then - if perforce can connect on the same network
**Solution was windows firewall - forgot to modify it after i reinstalled windows **
This self-help session was brought to you by the movie "Galaxy Quest" starring Tim Allen, Alan Rickman, and Sigourney Weever - Never Give Up, Never Surrender
How are remote teams dealing with shared DDCs? Is there any hosted services folks are relying on?
I thought that wasn't advised - did something change about this . If you have a large project and want to distribute pre-built DDC data, you should generate a DDC Pak.
That's about distributing DDC data, not using a shared DDC
they're saying you shouldn't use a DDC pak to prime someone's local DDC if you're on a large project as it's probably a waste of time.
Thanks, that's why I asked because I wasn't sure if I understood it
Hello.
I'm looking for a sync solution over network that:
* Works with Google Team Drive (Shared Drive)
* Has Two-way Sync, that is, if I change files they get automatically uploaded to the drive so that a friend using them gets automatically the last version too.
* Selective Sync, so we can choose which part of the hierarchy to sync and not trigger the sync of the whole drive.
insync seems to do it, but I was looking for alternatives.
Thanks
@tiny steeple this isn't for anything directly UE related is it? I'm only asking because you're asking in a UE channel, someone's going to have to make sure that you're not going to shoot yourself in the foot (as none of that would work for a UE project)
as for your actual question, sorry I'm not aware of anything, but I might question if you really need both cloud sharing and google drive integration. Seems like some redundancy. Might be a lot easier to solve your problems if you simplify your wants. I've used Resilio Sync, Sync.com, Box.com for different things, happy with each for what they are.
I worked without being connected to source control and now none of my files will save - I've checked out the file and I've confirmed in windows explorer the read only flag is not set...what else should I check?
@woven sluice can you point me in the right direction? this must be a common problem but i'm not finding anything on google
this was green, but when i clicked it, it said it was not enabled (though it was somehow connected?) it works now,
@woven sluice thanks for the tips!
looking through old answers but haven't yet found anything good.
I am wondering how well git works with ue4 projects. How badly do repos baloon in size if git keeps a history of all the .uassets. And how well does the workflow in a team work?
If this is for UE4, use source control (git or perforce), if itโs not then check out Nextcloud.
You would use git lfs which means that binary assets aren't stored in git history themselves, but separately on the server.
Trying to use git with UE4 without LFS would be an incredibly bad experience.
Based on reading here from time to time the consensus seems to be that it works, but requires a bit of understanding/education of the team members. The integration into the editor isn't as good with git as with perforce so people seems to use external tools for syncing, committing, file locking and such. Make sure you use LFS to keep the working copies as small as they can be, the server will keep all history as usual.
has anyone ever tried using RegisterStateBranches to implement locking across branches or streams? curious if it actually works as (un)advertised
I have no idea, but that seems like it'd be a bad idea. Working in one branch would lock out others? Ugh.
Better to use a workflow where content doesn't integrate upstream except when absolutely required. Release branches shouldn't lock out main, and main should stomp release branches.
I use perforce for my projects. But I wanted to make an open source project and perforce doesnt work for that.
Git seems to be the only real choice but it seems...sketchy. From what I read LFS is charged per connection
That's definitely not true
Every git provider that supports LFS that I've seen charges based on storage space
maybe the github pr I read was old news then, I didnt check the dates
Github charges for "data packs" which is $5 per 50GB of space and 50GB of bandwidth.
right, but for an open source project wouldnt I as the repository owner be charged?
so what if some idiot constantly nukes his repo and pulls again
thats obviously going to happen with internet strangers, especially since we are talking about gamers ๐
Then don't use LFS, assuming your project doesn't have that much in the way of assets.
Or do what Epic does and store large assets on a separate CDN and make a script to download them
it doesnt, its a very light art style with lowpoly art and textures that arent bigger than 128x128
Then you probably don't even need LFS
It's not a great workflow to deal with, as you can't use locking in that case
but you don't really have another good option if you're not willing to pay
I better asked than be sorry later. Especially since I didnt know how big github repos get if they keep history of so many binary files
I am willing to pay, but I am not willing to pay a fee that I can't control
Your other option is to find another provider that has different ways of billing for LFS. Last I checked Gitlab just has a hard limit on their storage, Azure DevOps doesn't charge for storage at all (they charge for users, but I'm not sure how that works with public projects). No idea what Bitbucket does.
ok
And for the record, LFS doesn't help with how much data is being stored - you're storing every copy of binaries regardless
It just means you don't need to download every copy at once if you want the full history of a repo.
I am guessing here that using git bash you can force delete history of certain files?
that way I could get rid of some stuff from time to time
if size does become a concern
You can... but it rewrites history. Which means anyone who has a clone of your repo will have to re-clone it.
alright then. I suppose I will just use github as is, and when size or price becomes a problem and I care enough about the project at that point I will pay someone that knows what they are doing to setup a different solution
thanks for the info siliex
Sorry I shouldn't have necessarily said locking across streams but rather in editor status symbols across streams. Seems like there's literally 0 people outside of Epic using it, 0 Google search results
I think you have to hard code the streams in a source engine build or something, trying to explore some options for rebuilding/expanding our team's devops and saw this in an old video
Ahh, so like it's supposed to show whether other people checked out the file in a different branch?
That... could actually be pretty useful.
As far as I can tell there's no reason it should require a source engine build... still need to hardcode the list in your own module (or I guess add them to a config variable, or write your own ui for it) but that function seems to be public.
The perforce SCC provider seems to have it implemented as well, so it should just be a matter of retrieving the active SCC provider and calling it.
yeah from what I saw in a 5 second clip out of an hour presentation it puts a unique yellow checkmark on assets checked out in other streams/branches and a red ! on assets that had become conflicted across streams/branches. I thought it seemed like it might Make Streams Great Again
(2 soon?)
yeah if I can just put it into a module this could be pretty cool... I'll try it when I have time, sometime between now and 2022
Hi guys, how can i check out file so others cant work on same file?
It depends on your source control program.
Git
I don't have any personal experience with that, but this looks like the info you need:
https://stackoverflow.com/questions/13662255/is-there-a-way-to-lock-individual-files-or-directories-on-fork-when-using-git
thx
I set up a home git lfs server for my project and it's just me working on it. Should I be doing things like pruning history of large files (say like more than a month back) to cut down on storage space requirements?
In my team there are two persons working with blueprints, the issue is that both of them sometimes modify the same blueprints and obviously it's an issue because version control will only take one version of the .uasset/blueprint and one is discarded, how is that handled with blueprints? it's easy with c++ but I can't think of how to solve this particular issue when two people work with the same blueprints
File locking
@jolly fog That sounds like they aren't communicating about what they are changing within the blueprints, and changes need to be done one at a time have you tried file locking?
Well, even if File Locking is a choice, my question is more oriented towards work flow, instead of they both having to redo changes of the blueprint that was discarded on the blueprint that was selected to go on version control, isn't there an alternative?
I wish there was a alternative but one must wait until the other one is finished with the BP and have pushed those changes to the repo or whatever source control you are using and the other pulls the new BP from the repo and then starts working on it unless i'm wrong here just suggesting that one works on that BP at a time. I know that it is a slower workflow unless someone has another solution just a suggestion happy developing. @jolly fog
The "alternative" is to manually diff them in the editor, take screenshots, and manually merge - if the assets are of a type this make sense to do so with
So... I am getting a new machine in the next week, and I would like to move over my project, along, potentially with perforce. Has anyone:
- Had success doing this
- Had issues pulling in the project to a new install of unreal, with potentially different install locations (drive letters, etc) for related plugins
- Have a good process for moving a local perforce workspace into the cloud, so that I can later pull it down?
I'm familiar with git cause of normall software engineering, so I could that route if there are hurdles here
reposize grows fairly quickly, but its not appreciably worse than perforce on the size front - it does cause a bit more load on userside tho, its still a helluva lot cheaper than perforce
Yes, I did this last fall. After installing p4 on the new machine, I was able to directly copy the Perforce/Server/Depot from the old machine to the new one and it worked pretty well.
What does 5 users on the perforce free plan mean exactly. It will only let 5 people log on to the server?
5 user accounts
I don't have much experience with source control, so sorry if i sound ignorant. Is it possible to distribute game files through perforce to more than 5 people on the free plan? I don't need more than 5 people changing the files, I just need to distribute them.
You can share a single account among multiple people if you don't care about different access control, or who changed what
or file locking
But still who changed what can be described with good workspace naming convention
@young thorn how much people you need to distribute it to?
8-10
including the 5
Then it's doable with the shared account as @cyan jay said. But be aware of 20 workspaces limit, which mean that if everyone would like to have more than one repo then you will be balancing on the edge of the free plan
Why are you distributing the project to 8-10 people when none of them are changing things?
What's your workflow?
Biggest thing you would lose would be access control and security type things. You can still easily tell who changed what (make everyone include their name in the workspace name) and you can still enjoy file locking (file checkouts are per workspace, not per user). If two people share an account then it's possible for them to mess with the other person's stuff.
Otherwise if it's just for extra testers to play it or something? Then set up a proper system and distribute on steam for them
Is it possible to have the UE4 editor save a perforce password so I don't have to type it in every time?
I got a droplet on digital ocean to host a perforce server, any idea how long it takes for them to email you the credentials?
Do you guys think Git is viable for a game jam with artists involved? It's worked fine for me with only programmers but I'm hearing I should be using Perforce but I've never set it up before
it depends on server policy, you'll have to do this on P4V Administration window
You are correct, thanks!
ok here's a fun one: I enabled parallel sync on my P4 server and I use Jenkins. I then learned that Jenkins' sweet integration with P4Java can't handle multiple thread stuff and everything goes to hell. I am now graced by such beautiful (and helpful) errors as this: https://i.gyazo.com/1684dd820b6143fabe3d726568f6b29d.png
since the only files that Jenkins touches are DLL files, I've already tried going hogwild and obliterating the Binaries folder, but to no avail, the exact same wild error appears
only mentioning it here for the 0.0001% chance that anyone here has seen this error before. lol ("Librarian filesize perforce" - for future search hits)
ok, I am making some headway by going manually into the server on the linux filesystem and copying older archive .gz files to replace the above missing version - then I'm using p4 sync -f filename to force that version into my workspace (or p4v Get Revision with force option), and now it appears to be letting me check it out, edit it (recompile), and resubmit it. https://i.gyazo.com/5d4952c46a05941c134719e1e27e02b6.png
some of the files didn't have archive versions so I just copied any other random .gz file in place 
It's odd that it seems to have corrupted your database - as much as a client fucks up it shouldn't be able to do that...
yeah. there is literally like one google search result on the entire internet that seems relevant to whatever the heck just happened to me
something like, perforce's databases or whatever recorded that the files were uploaded, but it wasn't actually saved on disk
all the submit metadata was there, except the actual file... 
that's 6 hours of my life i will never get back
You might be able to restore a previous checkpoint? But who knows how much data that'd lose...
And yeah the only advice I can find about that is to obliterate the file, possibly specifying the revision manually.
yeah, that didn't do jack lol
nearly done this hilarious workaround anyway and it's working fine
I guess you can just obliterate after you've done that and everything will be back to normal if you don't want fake gz files hanging around ยฏ_(ใ)_/ยฏ
how else could i landmine my depot for my future replacement after i'm fired
make a p4 trigger that obliterates random files and deletes checkpoints when your user is deleted, obviously

Wow that was a ride ๐.
I take it you know about 'p4 verify'?
This command checks the metadata matches the depot files on disk, in case any other issues have snuck thru. It can take a while tho...
I'm not sure verify can actually repair issues it finds though
No it cannot, that would be too easy
I think it'd basically just point out the same files and you'd have to manually restore from an archive unfortunately.
In a previous job we had p4 depot files on a NAS at one stage (bad idea!). We would occasionally get mismatch issues like this popping up, and it was always a case of manually fixing each one up depending on what the issue was.
Definitely a good idea to run p4 verify on a regular basis or as part of the backup process, if it can report errors of course.
I saw p4 verify, didn't even bother trying with it when I sort of saw what it did tbh
but yeah you're probably right about it being a good idea as part of housekeeping
now i just need to decide if i want to throw jenkins in the trash and switch to teamcity before it breaks my p4 again 
must say, VS is getting good at git
I'll try running with it for a week and see if I can ditch 3rd party source control apps
I've used Jenkins extensively until a few years ago. I use TeamCity now and it's superior in every way. It just works. Never a single problem. Highly recommend making the switch if it's suitable for your purposes (team size/cost being the main factor).
can confirm, TeamCity is bae
Also can confirm, teamcity is one of the very few CI systems that actually has good perforce support.
It's still a little dated (I'm spoiled by all the really nice git integrated CI systems these days) but nothing else really supports perforce that well.
I've still yet to figure out how to get it to support shelves in a good way, but that's more due to perforce not allowing you much control over how things get unshelved (can't I just stomp files without adding them to a changelist or triggering locks on content files???)
does anyone know the difference between
git clone
and
git clone --depth 1 and then unshallowing after?
cant seem to clone a school repository
they should both have the same end result afaik
alright thanks! I'm just concerned that there will be a major difference that can affect my exam. Thank you!
but if you want the full thing why not do the full clone to start off with
im having problems with full clone. the repository is about 85gb. and everytime i clone, about 4 hours into the cloning process, it gives me an error "EOF" xxxx byes expected
what does this do?
aside from reducing the download size?
ohh
and whats the difference from the full one? does it change the files?
so it downloads it like per session rather than one whole session?
does this run on the background or do I still need to have gitbash open?
alright. I will try it. Thanks!
it gives me an error filtering not recognized by server, ignoring
but the problem is that my professor provided the repo. it is GitLab CE
with my schools private url
https:// [somerandomletters and numbers] . schoolname.edu/
the git ui in VS is separate from the old team explorer stuff as of a version or two ago
both could revert changes though
the true test will be the upgrade to UE4.27 - I'm ditching SmartGit if I can pull it off w/ VS git
tbh I prefer a standalone gui or command line when working directly with a repo. For basic feature branching and committing VS's ui is fine
hm I've come to prefer doing everything in VS
if they'd have an integrated version of PIX I'd be using that
I mean, VS does have a graphics debugger. It's just nowhere near as good as PIX last time I checked.
yeah it fails to even start w/ ue4 in dx12
one limitation found so far: it can't stage by chunk or line, only the whole file
wtf is this long-winded discussion jesus just implement it already! :D
apparently it exists in VS code though
wild
you'd think they'd just yank it in VS as well then
aren't they two completely separate codebases?
vs code is... electron or w/e it's called isn't it
yeah
uhh how would I work around the compiler always wanting the Advanced Sessions plugin folder checked out from the Perforce server even though I don't even have it included in my build.cs file, I don't think having to always check out the entire plugin folder is the best solution.
hmm understandable
that's not an issue of perforce. It's probably rather a set up problem. I've never checked out any file I don't want to modfiy
@amber ridge its not a very mature project, I uploaded it on the server around 3 days ago and it was just a blank project with a single character and gamemode blueprint. I could compile just fine till now but just as I started building my item system and hit build it suddenly wants access to the plugin folder which is read-only.
TIL perforce was created in 1995
Well guys thanks for the advice I'll try to fix it
here I was thinking git was the old beast
or I'll just remove the plugin
I could only imagine that a problem if the intermediate folder is not ignored by perforce
could be, the actual project intermediate is ignored but I don't think the one inside the plugin itself is
even svn is younger than perforce ๐ (2000)
how would I add a filter to my p4 ignore which makes it
ignore all intermediate folders inside Plugins
Will this work?
why not just Intermediate/* ?
its already ignored
is your plugin not inside your project?
this should already ignore intermediate folder
but I'm not quite sure if this is because of precombiled binaries ๐ค
What does the compiler say, you aren't giving anyone any info, is it saying it can't write files? @young thorn did you only just add intermediate to your ignore file after already checking all those files in?
Show a screenshot of p4v inside your intermediate folder
And binaries
@woven sluice I have everything in the plugins folder checked out so I can't give the screenshot of the error but it went like 'couldn't touch header directories in {plugin intermediate folder here}'
Ok, well give the other screenshots anyway
howdy, i just setup my source control with github desktop and the editor plugin to compare methods, and while the plug in is rad, is there a way to manually change what branch i am in-editor? i dont' see any options anywhere for it. if i disconnect from source control plugin, swap the branch in github desktop, and reconnect, it finds and loads the new branch. that's fine and i can work with it, but i jsut wanted to check if i'm missing something?
people use the github plugin?
I tried it a long time ago and it was so barebones, borderline unusable
I much prefer just using a separate gui for everything (SourceTree in my case)
i mean it seems pretty good at a glance, shows icons for stuff that's changed, it's got a screen for showing blueprint changes, seems pretty fast.
granted i haven't spent much time doing source control and it's not something i focus on professionally, so i dunno i poked at it for like 5 minutes and it seems neat at some stuff and limited in others. shrug
@young thorn anyway, go look if the files in your Intermediate folder are being controlled by perforce. they should all just be plain white blank file icons. if they're not, you will need to either obliterate them using P4A or just delete them regularly and submit their deletion. I would personally recommend obliterating because they should have never been in your repo, but obliterating can be kind of a scary op when you're new.
changes to your ignore file are not retroactive to existing controlled files
i'll keep it in mind for later, atm it suits my limited needs. i just wanted to make sure there wasn't a branch swap optinion in the plugin i was missing, and i'm guessing not if it's fairly limited.
personally I would consider branch swapping a fairly major op worth closing the editor for tbh
since it will probably usually require recompiling, you'd often have to close anyway
@woven sluice The only intermediate folder in the perforce was the plugin one, I removed the plugin from the depo and its all working good now
UI bug? wow I've never seen that lol
how do you guys git an engine plugin from marketplace?
copy it to project's plugins?
Yes
is there anything beside git lfs prune and git gc for cleaning up git repos?
there's the BFG for deleting files entirely (including from history)
i think that's what its called
this thing: https://rtyley.github.io/bfg-repo-cleaner/
I have no idea how it interacts with LFS though.
um I'm just looking for the standard maintenance functions
My client is having an issue on Windows where this GitHub login prompt (I think it's spawned by Git Credential Manager) keeps spawning and won't go away, even if every other app is closed.
And even if he enters the correct credentials.
Anyone have insight on a potential cause for this?
What files do I have to include in my perforce repo, so that my designers won't have to build the project in order to open it?
any suggestions appreciated
Project Binaries folder and any plugin binaries folders.
including the pdb files?
I heard that it makes it harder to debug things but it'll work nonetheless
They're not required, but if you include them and the editor crashes it will generate callstack
I don't have an option to include them unfortunately, I am running on a cheapo hosting plan and storage is limited
Do you have typemap setup to only include 2 versions of DLL and pdb files?
(And note that changing your typemap, like changing your ignore file, does not apply retroactively to files already in your depot, you'd need to go manually change those files in p4v now)
man I'm such a dunce. been using streams wrong for a year, never noticed/learned about the "Ignored" panel in their settings... I've been manually using exclude to remove specific binaries folders from a stream instead of just putting Binaries/.. in the ignore panel
Why does this keep happening, without fail, on trying to commit & publish for the first time?
i'm not a git guy, but... how large is your largest file in this push? are you aware of the 100 mb limit? are you using LFS?
I've never touched this program in my life and I'm trying to share my project with a collaborator after having just set up the source control based on a video tutorial from 2018. ๐คท
When you say 100mb limit, do you mean my entire project file needs to be less than 100mb in order to share it?
(hoping someone who does GIT will show up but) no, github has a policy IIRC if any file is > 100 mb the push will fail
I think it's one of the common reasons why people occasionally show up here with odd nondescriptive errors like that
@north swan 
Yes, any file larger than 100 MB will lead you to LFS nightmare.
No, your entire project can go above 100 MB (UE4 source code alone goes up to 4 GB), but individual files cannot be larger than 100 MB.
You should not brute force with LFS, because it'll cost you more money, and often cause a lot of issues when doing something with the large files.
I honestly have no idea what I am even doing, lmao. If I am understanding correctly, I'm uploading my project to an online "locker" (github repository) that collaborators can access so we aren't like ... trading massive files every time someone changes something in the project.
I am not sure what you mean then, when you say there is 100mb limit for files, but that UE4 source itself is 4GB.
git is a version control system, you may want to find some introductory videos on that topic maybe
By the UE4 source code, i mean ALL thousands of UE4 source code files combined equated to around 4 GB. Every individual files are smaller than 100 MB, obviously.
and I think you will also "need" LFS anyway if you're collaborating (I think it's the only way to get file locking in git). plan to spend a few days learning
Well, I do not know what exactly fixed it, but I made a fresh project with only Horror Engine and that was able to publish and everything just fine
Thanks for the tips though! I will look into this as it seems it will be important for the road ahead in working with other people in a single project
Oof, this happened quite literally as soon as I made some simple changes and imported SFX into a new project. What gives?
I don't really understand how people are supposed to collaborate on anything when the amount of changes I can make is so heavily limited.
Like, the moment I add pretty much any outside content to my project, it's screwed. ๐คท I just
@jolly fog Now it just says I can't do that because I don't have git installed. Lmao which I know I do because setting it was necessary to run github desktop
Is there something better? I have never used anything like this and only started using it at a programmer's recommendation
I mean I already have git installed
๐คท
Not recognized as internal or external command, operable program or batch file
Does git need to be installed on C drive specifically?
lmao it's in a Program Files which cannot be recognized by this prompt because it has spaces
my god, what even is the point of this
Ugh I am awful at this. Lol. Ok. It is doing the same through the prompt now.
it's just hanging at writing 91% ๐คท same thing it always does before it fails
How can I check this?
On last line it says 573MB
I don't even know what that is :/
Which is why I came here because in case you haven't noticed ... I'm a bit out of my element here
lol
oh jfc I just want to share files with someone ...
I appreciate the help regardless mate
Oh my god. Lmao
How can I just ... delete the entire connection with Sourcetree and start over with a whole fresh new deal?
I've had an entire shift of sleep and I am still incredibly pissed off by this nonsense.
I've also lost two entire builds of my project so someone please ... make it make sense ๐คท
I know this is asking a lot, but can someone educate me or link me to resources on how would I go about setting up a workflow for my team to work off of perforce?
Details are:
Around 7 people on the team
Will have to package dedicated server
Will have a few code plugins
I am really struggling with getting everyone working together smoothly
I've been trying to get this setup for 3 days now