{"id":13732481,"url":"https://github.com/doitian/unity-git-hooks","last_synced_at":"2025-04-07T07:13:37.951Z","repository":{"id":15470751,"uuid":"18204096","full_name":"doitian/unity-git-hooks","owner":"doitian","description":"Git hooks for Unity3D project","archived":false,"fork":false,"pushed_at":"2023-05-10T18:13:58.000Z","size":10,"stargazers_count":320,"open_issues_count":1,"forks_count":30,"subscribers_count":16,"default_branch":"master","last_synced_at":"2025-03-31T06:02:38.609Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"Shell","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/doitian.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}},"created_at":"2014-03-28T07:16:05.000Z","updated_at":"2025-02-06T15:41:47.000Z","dependencies_parsed_at":"2024-01-12T18:31:13.908Z","dependency_job_id":"232c0b69-8804-4cd5-9c7f-45a4d6b199ac","html_url":"https://github.com/doitian/unity-git-hooks","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/doitian%2Funity-git-hooks","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/doitian%2Funity-git-hooks/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/doitian%2Funity-git-hooks/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/doitian%2Funity-git-hooks/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/doitian","download_url":"https://codeload.github.com/doitian/unity-git-hooks/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":247608153,"owners_count":20965952,"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":[],"created_at":"2024-08-03T02:01:58.529Z","updated_at":"2025-04-07T07:13:37.929Z","avatar_url":"https://github.com/doitian.png","language":"Shell","readme":"# Unity Git Hooks\n\nGit hooks for Unity project.\n\nTo manage a Unity project, the Assets meta file should also been added to\nrepository. But sometimes the meta files and the corresponding asset files\nand directories are inconsistent, then meta files will lead to conflicts when\na team is collaborating on the same code base.\n\n## Features\n\n- Stop committing if meta files and asset files and directories are\n  inconsistent. If an asset file is added, its meta file and meta files of all\n  its containing directories should also been added. If a asset file is\n  deleted, its meta file and meta files of all its empty containing\n  directories should also been deleted. When meta files are added/deleted,\n  asset files and directories should also been consistent.\n- Delete empty asset directories after checkout and merge. Unity keep\n  generating meta file for empty asset directory, but git does not trace\n  directory.\n\n## Usage\n\nCopy files `post-checkout` `post-merge` and `pre-commit` to .git/hooks in your\ngit repository. If you also have hooks defined in these files, append them to\nexisting files.\n\nIt is assumed that Assets directory is located in the root directory of the repository. You doesn't need set path to \"Assets\" folder manually if you \"Assets\" folder has position in the same folder as \".git\". Example:\n```\n.\n+-- ProjectName\n|   +-- .git\n|   +-- Assets\n```\nOtherwise you need set full path relative `.git`. Following example tells the scripts that the assets directory is client/Assets Example:\n```\n.\n+-- ProjectName\n|   +-- .git\n|   +-- client\n|   |   +-- Assets\n```\n```\ngit config unity3d.assets-dir client/Assets\n```\n","funding_links":[],"categories":["Shell","Git"],"sub_categories":[],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdoitian%2Funity-git-hooks","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fdoitian%2Funity-git-hooks","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdoitian%2Funity-git-hooks/lists"}