{"id":20979335,"url":"https://github.com/srombauts/uegitplugin","last_synced_at":"2025-12-17T08:47:39.083Z","repository":{"id":15708632,"uuid":"18446615","full_name":"SRombauts/UEGitPlugin","owner":"SRombauts","description":"Unreal Engine 5 Git LFS 2 Source Control Plugin (beta)","archived":false,"fork":false,"pushed_at":"2024-01-30T13:36:30.000Z","size":7263,"stargazers_count":869,"open_issues_count":55,"forks_count":165,"subscribers_count":66,"default_branch":"master","last_synced_at":"2025-09-16T15:56:24.808Z","etag":null,"topics":["git-lfs","git-plugin","unreal-engine"],"latest_commit_sha":null,"homepage":"http://srombauts.github.io/UEGitPlugin","language":"C++","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/SRombauts.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE.txt","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":"2014-04-04T17:27:59.000Z","updated_at":"2025-09-15T07:32:49.000Z","dependencies_parsed_at":"2024-06-27T04:09:59.141Z","dependency_job_id":null,"html_url":"https://github.com/SRombauts/UEGitPlugin","commit_stats":null,"previous_names":["srombauts/ue4gitplugin"],"tags_count":35,"template":false,"template_full_name":null,"purl":"pkg:github/SRombauts/UEGitPlugin","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/SRombauts%2FUEGitPlugin","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/SRombauts%2FUEGitPlugin/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/SRombauts%2FUEGitPlugin/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/SRombauts%2FUEGitPlugin/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/SRombauts","download_url":"https://codeload.github.com/SRombauts/UEGitPlugin/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/SRombauts%2FUEGitPlugin/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":27780582,"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","status":"online","status_checked_at":"2025-12-17T02:00:08.291Z","response_time":55,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"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","git-plugin","unreal-engine"],"created_at":"2024-11-19T05:13:17.338Z","updated_at":"2025-12-17T08:47:39.043Z","avatar_url":"https://github.com/SRombauts.png","language":"C++","funding_links":[],"categories":[],"sub_categories":[],"readme":"Unreal Engine 5 Git Source Control Plugin\n-----------------------------------------\n\n[![release](https://img.shields.io/github/release/SRombauts/UE4GitPlugin.svg)](https://github.com/SRombauts/UE4GitPlugin/releases)\n[![Git Plugin issues](https://img.shields.io/github/issues/SRombauts/UE4GitPlugin.svg)](https://github.com/SRombauts/UE4GitPlugin/issues)\n[![Join the chat at https://gitter.im/SRombauts/UE4GitPlugin](https://badges.gitter.im/Join%20Chat.svg)](https://gitter.im/SRombauts/UE4GitPlugin)\nUEGitPlugin is a simple Git Source Control Plugin for **Unreal Engine 5.0, 5.1, 5.2 and 4.27**.\n\nDeveloped and contributed by Sébastien Rombauts 2014-2023 (sebastien.rombauts@gmail.com)\n\n 1. First version of the plugin has been **integrated by default in UE4.7 in \"beta version\"**.\n 2. This is a developement fork named \"**Git LFS 2**\" adding File Locks supported by Github.\n 3. ProjectBorealis has been busy fixing and improving this plugin to make it work robustly with LFS Locks.\n    **See [ProjectBorealis GitPlugin v3](https://github.com/ProjectBorealis/UEGitPlugin)**\n\n### Instructions\n\nYou need to install it into your Project **Plugins/** folder, and it will overwrite (replace) the default \"Git (beta version)\" Source Control Provider with the \"Git LFS 2\" plugin.\n\nHave a look at the [Git Plugin Tutorial on the Wiki](https://wiki.unrealengine.com/Git_source_control_%28Tutorial%29).  ([alternate link](https://michaeljcole.github.io/wiki.unrealengine.com/Git_source_control_%28Tutorial%29/))\n\nWritten and contributed by Sebastien Rombauts (sebastien.rombauts@gmail.com)\n\nSource Control Login window to create a new workspace/a new repository:\n![Source Control Login window - create a new repository](Screenshots/SourceControlLogin_Init.png)\n\nSource Control status tooltip, when hovering the Source Control icon in toolbar:\n![Source Control Status Tooltip](Screenshots/SourceControlStatusTooltip.png)\n\nSource Control top Menu, extended with a few commands specific to Git:\n![Source Control Status Tooltip](Screenshots/SourceControlMenu.png)\n\nSubmit Files to Source Control window, to commit assets:\n![Submit Files to Source Control](Screenshots/SubmitFiles.png)\n\nFile History window, to see the changelog of an asset:\n![History of a file](Screenshots/FileHistory.png)\n\nVisual Diffing of two revisions of a Blueprint:\n\u003cimg src=\"https://cdn2.unrealengine.com/blog/DiffTool-1009x542-719850393.png\" width=\"720\"\u003e\n\nMerge conflict of a Blueprint:\n\u003cimg src=\"https://cdn2.unrealengine.com/blog/47_release/image08-1731x884-262756803.png\" width=\"720\"\u003e\n\nStatus Icons:\n\n![New/Unsaved/Untracked](Screenshots/Icons/New.png)\n![Added](Screenshots/Icons/Added.png)\n![Unchanged](Screenshots/Icons/Unchanged.png)\n![Modified](Screenshots/Icons/Modified.png)\n![Moved/Renamed](Screenshots/Icons/Renamed.png)\n\n### Supported features\n- initialize a new Git local repository ('git init') to manage your UE4 Game Project\n  - can also create an appropriate .gitignore file as part of initialization\n  - can also create a .gitattributes file to enable Git LFS (Large File System) as part of initialization\n  - can also enable Git LFS 2.x File Locks as part of initialization\n  - can also make the initial commit, with custom multi-line message\n- display status icons to show modified/added/deleted/untracked files, not at head and conflicted\n- show history of a file\n- visual diff of a blueprint against depot or between previous versions of a file\n- revert modifications of a file (works best with \"Content Hot-Reload\" experimental option of UE4.15, by default since 4.16)\n- add, delete, rename a file\n- checkin/commit a file (cannot handle atomically more than 50 files)\n- migrate an asset between two projects if both are using Git\n- solve a merge conflict on a blueprint\n- show current branch name in status text\n- Configure remote origin URL ('git remote add origin url')\n- Sync to Pull (rebase) the current branch if there is no local modified files\n- Push the current branch\n- Git LFS (Github, Gitlab, Bitbucket), git-annex, git-fat and git-media are working with Git 2.10+\n- Git LFS 2 File Locks\n- Git console command for the Editor\n- Windows, Mac and Linux\n\n### What *cannot* be done presently\n- Branch/Merge are not in the current Editor workflow\n- Amend a commit is not in the current Editor workflow\n- Revert All (using either \"Stash\" or \"reset --hard\")\n- Configure user name \u0026 email ('git config user.name' \u0026 git config user.email')\n- Authentication is not managed if needed for Sync (Pull)\n\n### Known issues\n- #34 \"outside repository\" fatal error\n- #37 Rebase workflow: conflicts not detected!\n- #41 UE-44637: Deleting an asset is unsuccessful if the asset is marked for add (since UE4.13)\n- #46 Merge Conflicts - Accept Target - causes engine to crash bug\n- #47 Git LFS conflict resolution not working\n- #49 Git LFS 2: False error in logs after a successful push\n- #51 Git LFS 2: cannot revert a modified/unchecked-out asset\n- #53 Git LFS 2: document the configuration and workflow\n- #54 Poor performances of 'lfs locks' on Windows command line\n- #55 Git LFS 2: Unlocking a renamed asset\n\n- missing localisation for git specific messages\n- displaying states of 'Engine' assets (also needs management of 'out of tree' files)\n- renaming a Blueprint in Editor leaves a redirector file, AND modify too much the asset to enable git to track its history through renaming\n\n### Getting started\n\nQuick demo of the Git Plugin on Unreal Engine 4.12 (preview)\n[![Git Plugin on Unreal Engine 4.12 (preview)](https://img.youtube.com/vi/rRhPl9vL58Q/0.jpg)](https://youtu.be/rRhPl9vL58Q)\n\n#### Install Git\n\nUnder Windows 64bits, you should install the standard standalone Git for Windows\n(now comming with Git LFS 2 with File Locking) with default parameters,\nusually in \"C:\\Program Files\\Git\\bin\\git.exe\".\n\nThen you have to configure your name and e-mail that will appear in each of your commits:\n\n```\ngit config --global user.name \"Sébastien Rombauts\"\ngit config --global user.email sebastien.rombauts@gmail.com\n```\n\n#### Install this Git Plugin (dev) into your Game Project\n\nUnreal Engine comes with a stable version of this plugin, so no need to install it.\n\nThis alternate \"Git development plugin\" needs to be installed into a subfolder or your Game Project \"Plugins\" directory\n(that is, you cannot install it into the Engine Plugins directory):\n\n```\n\u003cYourGameProject\u003e/Plugins\n```\n\nYou will obviously only be able to use the plugin within this project.\n\nSee also the [Plugins official Documentation](https://docs.unrealengine.com/latest/INT/Programming/Plugins/index.html)\n\n#### Activate Git Source Control for your Game Project\n\nLoad your Game Project in Unreal Engine, then open:\n\n```\nFile-\u003eConnect To Source Control... -\u003e Git\n```\n\n##### Project already managed by Git\n\nIf your project is already under Git (it contains a \".git\" subfolder), just click on \"Accept Settings\". This connect the Editor to your local Git repository (\"Depot\").\n\n##### Project not already under Git\n\nOtherwise, the Git Plugin is able to create (initialize) a new local Git Repository with your project Assets and Sources files:\n\n\u003cimg src=\"Screenshots/SourceControlLogin_Init.png\" width=\"720\"\u003e\n\nClick \"Initialize project with Git\" that will add all relevant files to source control and make the initial commit with the customizable message.\nWhen everything is done, click on \"Accept Settings\".\n\n#### Using the Git Source Control Provider in the Unreal Engine Editor\n\nThe plugin mostly interacts with you local Git repository (\"Depot\"), not much with the remote server (usually \"origin\").\n\nIt displays Git status icons on top of assets in the Asset Browser:\n- No icon means that the file is under source control and unchanged since last commit, or ignored.\n- A red mark is for \"modified\" assets, that is the one that needs to be committed (so not the same as \"Check-out\" in Perforce/SVN/Plastic SCM).\n- A red cross is for \"added\" assets, that also needs to be committed\n- A blue lightning means \"renamed\".\n- A yellow exclamation point is for files in conflict after a merge, or is not at head (latest revision on the current remote branch).\n- A yellow question mark is for files not in source control.\n\nTODO:\n- specifics of rename and redirectors, and \"Fix Up Redirector in Folder\" command\n- history / visual diff\n- CheckIn = Commit\n- CheckOut = Commit+Push+unlock (when using LFS 2)\n\nSee also the [Source Control official Documentation](https://docs.unrealengine.com/latest/INT/Engine/UI/SourceControl/index.html)\n\n### License\n\nCopyright (c) 2014-2020 Sébastien Rombauts (sebastien.rombauts@gmail.com)\n\nDistributed under the MIT License (MIT) (See accompanying file LICENSE.txt\nor copy at http://opensource.org/licenses/MIT)\n\n## How to contribute\n### GitHub website\nThe most efficient way to help and contribute to this wrapper project is to\nuse the tools provided by GitHub:\n- please fill bug reports and feature requests here: https://github.com/SRombauts/UE4GitPlugin/issues\n- fork the repository, make some small changes and submit them with independent pull-requests\n\n### Contact\n- You can use the Unreal Engine forums.\n- You can also email me directly, I will answer any questions and requests.\n\n### Coding Style Guidelines\nThe source code follow the Unreal Engine official [Coding Standard](https://docs.unrealengine.com/latest/INT/Programming/Development/CodingStandard/index.html):\n- CamelCase naming convention, with a prefix letter to differentiate classes ('F'), interfaces ('I'), templates ('T')\n- files (.cpp/.h) are named like the class they contains\n- Doxygen comments, documentation is located with declaration, on headers\n- Use portable common features of C++11 like nullptr, auto, range based for, override keyword\n- Braces on their own line\n- Tabs to indent code, with a width of 4 characters\n\n## See also\n\n- [Git Source Control Tutorial on the Wikis](https://wiki.unrealengine.com/Git_source_control_(Tutorial))\n- [UE4 Git Plugin website](http://srombauts.github.com/UE4GitPlugin)\n\n- [ue4-hg-plugin for Mercurial (and bigfiles)](https://github.com/enlight/ue4-hg-plugin)\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fsrombauts%2Fuegitplugin","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fsrombauts%2Fuegitplugin","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fsrombauts%2Fuegitplugin/lists"}