{"id":17332587,"url":"https://github.com/jtolio/git-treesame-commit","last_synced_at":"2025-04-14T17:30:41.793Z","repository":{"id":137712522,"uuid":"139266534","full_name":"jtolio/git-treesame-commit","owner":"jtolio","description":"Create new Git commits that match the file tree of any arbitrary commit.","archived":false,"fork":false,"pushed_at":"2024-03-08T21:26:04.000Z","size":7,"stargazers_count":44,"open_issues_count":3,"forks_count":0,"subscribers_count":5,"default_branch":"master","last_synced_at":"2024-03-08T22:30:08.094Z","etag":null,"topics":["git"],"latest_commit_sha":null,"homepage":"","language":"Python","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/jtolio.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}},"created_at":"2018-06-30T17:14:51.000Z","updated_at":"2024-03-08T21:26:08.000Z","dependencies_parsed_at":"2024-03-08T22:29:32.050Z","dependency_job_id":"88f0a09b-2f47-460b-a585-d0095ce7d81c","html_url":"https://github.com/jtolio/git-treesame-commit","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/jtolio%2Fgit-treesame-commit","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jtolio%2Fgit-treesame-commit/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jtolio%2Fgit-treesame-commit/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jtolio%2Fgit-treesame-commit/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/jtolio","download_url":"https://codeload.github.com/jtolio/git-treesame-commit/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":219843550,"owners_count":16556504,"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"],"created_at":"2024-10-15T14:58:14.797Z","updated_at":"2024-10-15T14:58:16.489Z","avatar_url":"https://github.com/jtolio.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"# git-treesame-commit\n\nUtility to make new commits that are\n[treesame](https://git-scm.com/docs/git-log#_history_simplification)\nwith others.\n\nEvery commit has a _treehash_, or, a specific identifier that represents\nthe state of the file tree. Two commits that have the exact same file\ntree and thus the exact same treehash are called _treesame_.\n\nThis tool allows you to create a new commit on your current branch that\nis treesame with any arbitrary commit anywhere else. It's basically like\nbeing able to cherry-pick the entire state of a file tree.\n\nThis tool has transformed how quickly I am able to figure out and\ndebug git situations and I can't understand how this isn't built in to\ngit already.\n\n```\nusage: git-treesame-commit [-h] [-a] [-p] [-m MESSAGE] commit\n\nMake treesame commits\n\npositional arguments:\n  commit                the commit to match\n\noptional arguments:\n  -h, --help            show this help message and exit\n  -a, --keep-author     if set, keep the commit's original author\n  -p, --both-parents    if set, commit will have both parents listed\n  -m MESSAGE, --message MESSAGE\n                        the new commit message\n```\n\n### License\n\n```\nMIT License\n\nCopyright (c) 2018 JT Olio\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n```\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fjtolio%2Fgit-treesame-commit","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fjtolio%2Fgit-treesame-commit","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fjtolio%2Fgit-treesame-commit/lists"}