{"id":13435425,"url":"https://github.com/MOZGIII/ue5-gitignore","last_synced_at":"2025-03-18T11:31:11.254Z","repository":{"id":36902786,"uuid":"41209805","full_name":"MOZGIII/ue5-gitignore","owner":"MOZGIII","description":"A git setup example with git-lfs for Unreal Engine 5 (and 4) projects.","archived":false,"fork":false,"pushed_at":"2024-08-27T23:07:04.000Z","size":15,"stargazers_count":556,"open_issues_count":0,"forks_count":149,"subscribers_count":27,"default_branch":"master","last_synced_at":"2024-09-10T16:15:54.713Z","etag":null,"topics":["git-lfs","gitignore","ue4","ue5","unreal","unreal-engine","unreal-engine-4","unreal-engine-5","unrealengine"],"latest_commit_sha":null,"homepage":"","language":null,"has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/MOZGIII.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2015-08-22T14:06:04.000Z","updated_at":"2024-09-09T08:06:43.000Z","dependencies_parsed_at":"2024-05-02T03:36:00.023Z","dependency_job_id":"f4571a64-ba42-4ec3-8693-f6bd9d735ec6","html_url":"https://github.com/MOZGIII/ue5-gitignore","commit_stats":null,"previous_names":["mozgiii/ue4-gitignore"],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/MOZGIII%2Fue5-gitignore","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/MOZGIII%2Fue5-gitignore/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/MOZGIII%2Fue5-gitignore/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/MOZGIII%2Fue5-gitignore/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/MOZGIII","download_url":"https://codeload.github.com/MOZGIII/ue5-gitignore/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":244210956,"owners_count":20416557,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["git-lfs","gitignore","ue4","ue5","unreal","unreal-engine","unreal-engine-4","unreal-engine-5","unrealengine"],"created_at":"2024-07-31T03:00:35.600Z","updated_at":"2025-03-18T11:31:08.218Z","avatar_url":"https://github.com/MOZGIII.png","language":null,"funding_links":[],"categories":["Resources"],"sub_categories":["Coding"],"readme":"# ue5-gitignore\n\nA correct `git` setup example _with [`git-lfs`](https://git-lfs.github.com/)_ for Unreal Engine 5 (and 4) projects.\n\n## Version Management Design and Conventions\n\nThis template implies some conventions to be used correctly, which are discussed below. You should be able copy and paste them into your project's `README.md` if you want to.\n\n\u003e If you are using `git` with Unreal Engine, you might want to also\n\u003e enable [One File Per Actor](https://docs.unrealengine.com/5.0/en-US/one-file-per-actor-in-unreal-engine/)\n\u003e feature, as it provides a more atomic level versioning flow.\n\n### Repo Structure\n\nRepository structure is fixed, and it only has a few toplevel directories. Every other directory or file is ignored.\n\n- `/Source`\n- `/Config`\n- `/Plugins`\n- `/Content`\n- `/RawContent`\n\n`git-lfs` management rules are mostly defined for file types, and not _paths_, however there can entire paths marked to be managed by `git-lfs`. Without a special note, expect only type-based rules apply to a directory.\n\n#### `/Source`\n\nC++ source code is stored under the `/Source` path. As with most other directories, this directory is managed by standard git (and not `git-lfs`). That means no blobs. Do not put here any `.dll`s, `.exe`s, `.zip`s and other binaries. Only text files are allowed.\nGenerated text files can reside in the local `/Source` dir, but should be ignored by git with additional entries in `.gitignore`.\n\n#### `/Config`\n\nEngine and game config files.\n\n#### `/Plugins`\n\nGame plugins. Every plugin lives in a subdirectory of the `/Plugins` dir. A plugin internal directory structure is not strictly documented, so there are no assumptions on how a plugin is structured.\nIt may be useful to use git submodules to manage plugins in a more robust manner.\nIt is expected that each plugin will have it's own `.gitignore` file in it's subdirectory, as well other required specific git tweaks.\n\n#### `/Content`\n\nGame assets in Unreal Engine formats, `.uasset` and `.umap`. Only those two file types are allowed, everything else is ignored.\n\n#### `/RawContent`\n\n**This directory is managed entirely by `git-lfs`.**\n\n`/RawContent` is a directory where you store assets in their source formats, in contrast to `/Content`, where assets are stored in the engine format (after the import). Having an asset in a source format is useful when you're still making updates to it. It may be a good idea to also have separate repos for managing work-in-progress assets (maybe in smaller collections or even idividually).\n\n## How to use\n\n1. Set up `git` and `git-lfs`.\n2. Copy `.gitignore` and `.gitattributes` to your project.\n\n## Caveats\n\nTake special care when working with plugins. Plugin structure is not very well defined, so you will be able to mess the git repo up with big files if you commit them to a plugin directory.\n\n## Contributing\n\n### Rules\n\nThis repo uses UNIX-style line endings and UTF-8.\nMake sure every line in a text file is ended with a newline (especially the last line in a file, git should notify you if you've lost it). This is due to how lines are [defined](http://pubs.opengroup.org/onlinepubs/9699919799/basedefs/V1_chap03.html#tag_03_206). Feel free to search the web for more info on why to end every file with an \"empty line\".\n\n### How to contribute\n\n1. Fork it\n2. Create your feature branch (`git checkout -b my-new-feature`)\n3. Commit your changes (`git commit -am 'Add some feature'`)\n4. Push to the branch (`git push origin my-new-feature`)\n5. Create new Pull Request\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2FMOZGIII%2Fue5-gitignore","html_url":"https://awesome.ecosyste.ms/projects/github.com%2FMOZGIII%2Fue5-gitignore","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2FMOZGIII%2Fue5-gitignore/lists"}