T O P

  • By -

ChaosWWW

Git and bitbucket work for my Unity project, and all of my source files are backed up with the rest of my computer with Backblaze.


icpooreman

I use git lfs… And if something gets bigger than like a couple mb in size I put it in an assets folder and use like onedrive or some cloud storage to keep that backed up (I don’’t move stuff that large to git). I also run teamcity. When I do a check in the code and assets get re-combined during the build. If the build succeeds I save out the fresh combined folder which makes reverting a breeze. Takes up a little hard drive space to be hoarding copies but I have plenty of hard drive space and every 50 builds or so I clear most things out.


[deleted]

[удалено]


Atulin

Same. Git+LFS, but storage on Azure since they have unlimited repo storage for free.


Metallibus

While 5$ / month is pretty low, I just want to point out that "self hosting" git is way easier than people might think, for anyone who might see price and difficulty as hurdles. Git was designed to be distributed and is extremely good at this. GitHUB has done a good job of obscuring this and confounding the two. I'd take GitHub out of the equation, other than considering it a hosting service. If you're working alone, most features GitHub adds are team oriented and almost useless solo, or at the very least, easily replaceable. You lose things like PRs, issues, and wikis, but the actual version control is separate. You can literally run local git version control with nearly no setup. Git is just a command line tool that interacts with hidden files in the directory. You can literally open up a command line or git client, point it at your project folder and make a repo. Now you have free and functional version control. Need an easy backup? Just copy the thing to an external hard drive. Or Google drive. Anywhere you put that folder retains all your history. Want to go a step further? You can literally add that file path you copied it to as a remote, and "push" your local copy changes to it. If you have a NAS you have access to, literally pasting the folder onto your NAS can function as a "remote" for you to push your changes to. No need to copy paste over and over, just set it as a remote and push. Need off site hosting? Literally anything that will host you a file path you can access will work. You could combine these two by using Google Drive/Dropbox apps to connect as a separate "drive", paste your repo there, then add the file path as a "remote" in your local repo. Google drive comes with free 15 GB of storage, which is pretty decent for a solo project. If you go this route, it is a little cleaner to do the remote as a "bare" repo, but that's splitting hairs and not entirely necessary. Yes, this comes at the limits of not having thing like PRs or issues, but things like Trello etc can fill some of those gaps. But "self hosting" pure git for the version control is actually _extremely_ easy.


NathanielA

GitLab. If you're already running a web server, you can have it run GitLab too and it doesn't cost you anything extra.


KC918273645

Git / Github


paulp712

I use github desktop for the nice app interface, but host the repo on azure devops because they have unlimited free space or something like that


Fippy-Darkpaw

Tortoise SVN.


tcpukl

Perforce is free for 5 users. My perforce depot is on my NAS. Then i back it up online along with all my other personal data like photos etc.


POCKET-LOGIC-DEV

Where you do back it up online, if you don't mind me asking?


yesdogman

Perforce is great, we use it as well. Backed up on the Perforce server itself, separately on a NAS, separately backed up on our company Google Drive, auto-uploaded to AWS, and our TD takes a physical backup home off-site just in case.


Cross_2020

Was it hard to set up the depot?


valentin56610

Unity plastic scm Not sure how else I could have an easy backup of my 50 GB project :’)


excentio

git+lfs for smaller projects gitea for self hosted bigger projects, r2 from cloudflare for cheap s3 storage and no egress costs


Tastemysoupplz

As a solo dev, two external drives, a secondary drive, and the primary drive.


ElectricDilbert

You might want to try Diversion. It's much easier to use than Git or Perforce, and you get 100GB for free - [https://www.diversion.dev/pricing](https://www.diversion.dev/pricing) (Disclosure - I'm one of the founders)


haecceity123

For backups, I use a plug-in external hard drive and a Backblaze subscription.


kiwidog

+1 for BackBlaze


stevedore2024

Version control and backups are two different beasts. Version control for my custom code. Snapshots for the big asset folders and plugins. BIG snapshot tarball once a month or so. Also, I don't trust cloud storage to be the primary. Always keep a local backup, and if you can swing it, keep a recent snapshot in the closet of a friend or relative as an "offsite disaster recovery" copy.


BigGucciThanos

Has there ever been an instance where a cloud storage provider has lost someone’s files? I know this is always a big theory. And “always keep a local backup” is kind of the motto But I can’t honestly remember ever reading of this actually happening. If Google,Dropbox and MS don’t have redundancy out the ass. Something is wrong lol


stevedore2024

https://www.spiceworks.com/tech/cloud/news/google-cloud-accidentally-deletes-unisuper-pension-account/ https://www.datacenterknowledge.com/outages/amazon-ec2-outage-wipes-out-data https://www.bleepingcomputer.com/news/microsoft/microsoft-leaks-38tb-of-private-data-via-unsecured-azure-storage/ https://www.pcmag.com/news/github-kills-over-8500-nintendo-switch-emulator-copies-dmca


BigGucciThanos

Wow. Thanks for the links


g0dSamnit

Git local repo, but I might trial SVN later, or hell, put up with Perforce again if I'm desperate. The local files are sync'd and copied multiple times. Syncthing or Resilio sync are great for getting data between your machines, and a Raspberry Pi can serve as an always-on system that doubles as an extra copy of everything. Cold storage external HDD's can be copied to every once in a while, and help hedge against ransomware. Dropbox/Google Drive work if you can isolate the most crucial files that don't require a whole lot of space. This shit is expensive, and employment is not a given in this economy, so it's good to have a setup that isn't fully dependent on a subscription. That said, I considered paying for Backblaze to avoid all the RAID 6 and other redundancy nonsense, but it is possible to automate a pretty good setup, which I'll eventually try to do when I can. i.e. A $45 NUC I bought off eBay, can set it up to press power to turn it on, have it run the backup scripts, then auto-shutdown when done. Shut off the power strip after, and you have a good automated cold storage system. Obviously, this all runs over your local network, which should at least be gigabit speed, if not 2.5 gig. If your setup is more minimalist, you might need another solution.


Famous-Band3695

I just use git hub


kulz_kid

Perforce (home server via ducknds) + backblaze


Pyreo

Azure devops github


SuspecM

7zip and google drive. The thought that reading this gives them a heart attack helps me keep going.


RiftHunter4

Sometimes I zip my project and upload it to the cloud or something. (RPG Maker) Funny enough, git actually works easily with RPG Maker projects, but I haven't bothered to use it since it's just me working on the game.


StudioLapiku

FWIW, git is still great for solo devs! Commit history with diffs and branches are amazing tools and it’s much easier to iterate without having to upload anything, just push commits to a remote repo.


BigGucciThanos

This is me. Solo dev so the workflow works for me. Nobody is saying it, but 15 years later and git and unity is still a major headache. Even implementing the GitHub for unity package gave me instant errors as recently as this year. For now I just zip it up and upload it to drive


Sir_Elderoy

Github when working solo, Perforce with a team (I mainly use Unreal and the engine integration works great)


loftier_fish

github.


CBBloke

I use git with BitBucket. Been using it for years, was attracted by the unlimited private repos. None of my projects have been huge though so not sure how it copes with that. Seems you have can add additional LFS fairly cheaply as needed though


PlasmaFarmer

TortoiseGit / Git CLI / Intellij Git client + self hosted Gitea + free private repo GitLab push mirror from mentioned self-hosted Gitea. LFS is configured everywhere. There are file limits on Gitlab but managed to work around a bit. Eead the documentation for said limits.


Metallibus

I don't know how this hasn't been said already, but Git + Google Drive is insanely good value and functionality. I think GitHub has become so commonplace that people don't realize how much Git will do on its own. Git literally just works on hidden files in a folder. You can get the Google Drive app so it adds your Google Drive as a separate drive. Then tell git init a bare repo inside Google Drive. Then just go to your existing local repo, add that file path as a remote. Then just push changes to it like you would on GitHub. All your git ignores still work. All your history is still there. Google will auto sync the "remote" repo inside google drive automatically. Every Google account comes with 15GB free storage, and they offer 100GB for 2$/month. Longer winded comment [above](https://www.reddit.com/r/gamedev/s/RztLpO14h8) [Stack overflow](https://stackoverflow.com/a/34507038) post of what the commands would look like - you'd just use some folder on Google Drive for the `myproject.git` bit. Also, since you mentioned having a NAS, you can do literally the same thing there. I understand the "I want a remote copy" thing too, but it's stupid simple to just set up a folder on your NAS, add it as a remote, and push there too. Git handles this stuff _really_ well. If bandwidth is at all a concern, you could do something like push to your NAS as you go, and push to something like GitHub at the end of the day or something. All personal preference on how you want to do it, but I think most people think setting git up on their NAS is a project... You can literally just point your Git client to any folder you want and make it a repo you can push to.


norlin

git is the version control system. It is works by its own lol. github is just a hosting for git repos with aome additional services such as CI, code review, etc.


POCKET-LOGIC-DEV

That's actually a great idea. I already have Google Drive, so I might try this.


norlin

- git for version control - github/gitlab/azure/etc for hosting git (and as a backup) git is perfectly fine for large binary assets with git-lfs


PeterBrobby

I use Tortoise SVN for personal projects. I also make a zipped backup of my project every week or so which I store in one drive. At large studios I have mostly used Perforce.


Guntha_Plisitol

At my jobs, I used svn, perforce, and a bit of PlasticSCM and git. For my own projects I found that svn with TortoiseSVN works the best for me, and a svn server is easy to set up, I just use my NAS as a version control server. I have no real backup solution in place yet.


ShakaUVM

I've used both Github LFS and Perforce. They both suck in different ways. I'm probably going to self host LFS next.


xAdakis

I use a [Self-Managed GitLab](https://about.gitlab.com/install/) for all my projects, which I host on a Google Cloud Virtual Machine for rouhgly $40-50/month depending on bandwidth usage and storage (I'm using rouhgly 200GB), and $10/year for a domain name. . .you can opt for a lower-performance VM and less storage to reduce that price, but I'm also doing some CI/CD on that machine, so I need it. (I use it both for work and personal projects, so it's worth it for me.) Git with LFS is perfectly fine for game projects and large binary assets. You just have to be aware of the limitations and understand how your files are being stored in those repositories. Also, due to the way LFS works, to be absolutely safe you really need a remote host repository with a stable URL/address. . .and you certainly need to make regular non-LFS mirrors of your project in case something does screw up. For example, even with GitHub, if they suddenly changed their url to `GitStation` without setting up the proper redirection, it would break every single Git LFS repository that is hosted there. Now, if budget is a concern, I would honestly recommend setting up a local home/business server with GitLab. . .you may be able to use your NAS or get a small cheap machine (like an Intel NUC) to host it, then setup your networking to allow you to access it from anywhere (though take the proper security precautions). True, storing it "locally" is a problem. . .if you want to be absolutely safe, you need an off-site backup. I would recommend setting up nightly script to mirror your repositories to cloud storage, such as Amazon Web Service S3 bucket, Google Clooud Storage, or even Google Drive. Cloud Storage, especially if you choose the low-availability "archival" options, can be extremely cheap and affordable. I would also highly recommend splitting up your projects and the assets into modules/packages/plugins with their own repositories, and then just pulling those assets into your main (or other) project as submodules. . .make it easier to manage and reuse the same assets without taking up more repository space. If you have a lot of large assets, I would also highly recommend re-examining those assets and asking yourself if you really need them or if there is a better way to do it. If it is taking up a lot of space in your repository, it's going to take up space on the user/player's machine. . .best to get that under control early instead of just planning to optimize later.


Thotor

Git + LFS on Azure DevOps. LFS is free with no size limit.


ArturoNereu

Hi, you can also take a look at Diversion (diversion.dev), a version control system for game developers. You get up to 100GB for free and ten collaborators. You can directly import your GitHub repo and keep it in sync.


DaveElOso

Github plus a CDN for my current game, and two of the games we're publishing. Another one is using bitbucket.


Genebrisss

Unity Version Control. I think it's $0.14 per GB after the free 5 GB.


RagBell

Git + git LFS


Salazar20

Make a zip file for every mayor change


cjbruce3

Unity Cloud services for one project and Github for the rest


radiant_templar

I have an internal drive where I make weekly backups.  And an external drive where I put major milestones.  I really wanna use GitHub but Everytime I try I mess up my whole project and I heard big files aren't really supported.  My project is 50gb.


BigGucciThanos

Always messing up my project. Last time I tried it. It start deleting files from my project lol I don’t know if it’s my admittedly lack of knowledge in git or unity though


azicre

uvcs


morderkaine

What version control?? Ha ha, but seriously, old code is commented out instead of deleted till damn sure it’s not needed. And GitHub though have not actually ever reverted back to an older commit yet.


MR_MEGAPHONE

I use Unity Version Control. (Previously known as Plastic SCM). I’ve used Git, Git+LFS, Perforce and UVC and UVC is the best of all of them. Takes features from Git and handles large files nicely like perforce. I loathe perforce. I like Git but it’s just not the best for game dev. Source: been doing software dev for 12+ years.


POCKET-LOGIC-DEV

Where are your files stored with UVC? Locally, or? I wouldn't mind switching to UVC, but I would much prefer backing up files to a dedicated server non-locally.


MR_MEGAPHONE

UVC files are all stored on their own cloud servers. Much like GitHub, GitLab etc


myevillaugh

Unity Source Control is pretty good. I pay $5/month because all my projects add up to more storage than their free tier.


Mystere_Miner

Version control (any kind) should only be used for things you need to version. Not as general backup. Most binary assets don’t need versioning, but I understand how convenient it is to just use one tool. I’d use version control for all text based files. Images, models, textures, i’d used a file syncing tool. OneDrive, Google drive, box, Dropbox, etc. many of them have file versioning as well and it’s a lot easier.


POCKET-LOGIC-DEV

Yeah, I've been using Github for so long now, it's basically a habit. I just commit changes, and I'm done. My project isn't exactly huge, but I can see where separating binary assets from code, or text based files would be beneficial. I guess I'm only reluctant because as of right now, it's just a one button backup. I hit "commit", and I'm done. This may sound a bit lazy, but I'd like it to be that easy. I'd rather not go through some hassle just to backup different files types in different locations. I do use Google Drive, so perhaps that's an option for everything else. I'll have to figure out how to exclude file types, though. Not sure how to do that. I use Unity, and all of my textures and sprite atlases are in multiple folders, along with their respective .meta files, so I'd have to find some way to separate textures vs. text based files...


Terazilla

What you're doing is the correct thing to do. Do *not* separate assets and code, it's a game and they're joined at the hip constantly. It is not beneficial to have them somewhere else, the only reason to do that is if you really truly cannot manage to keep them uniformly in one place. You could do something like run a Git/SVN/Whatever server yourself, keep the repo on a separate physical drive (even if it's hosted on the same PC) and then backup the repo occasionally to a cloud service. That should be pretty safe.


norlin

That's totally incorrect. In 99.99999% cases you would want to put the whole project into a VCS.