{"id":17962737,"url":"https://github.com/dohooo/degitlab","last_synced_at":"2025-03-25T04:32:25.670Z","repository":{"id":57746990,"uuid":"521596067","full_name":"dohooo/degitlab","owner":"dohooo","description":"🫥 Copy repository without the git information for self-managed gitlab, very fast.","archived":false,"fork":false,"pushed_at":"2022-11-27T02:54:13.000Z","size":222,"stargazers_count":7,"open_issues_count":0,"forks_count":1,"subscribers_count":2,"default_branch":"main","last_synced_at":"2024-10-14T04:35:08.414Z","etag":null,"topics":["degit","gitlab","nodejs","self-managed"],"latest_commit_sha":null,"homepage":"","language":"TypeScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/dohooo.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":"CONTRIBUTING.md","funding":".github/FUNDING.yml","license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null},"funding":{"github":["dohooo"]}},"created_at":"2022-08-05T10:28:10.000Z","updated_at":"2024-09-11T00:43:05.000Z","dependencies_parsed_at":"2023-01-22T02:08:28.985Z","dependency_job_id":null,"html_url":"https://github.com/dohooo/degitlab","commit_stats":null,"previous_names":[],"tags_count":6,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dohooo%2Fdegitlab","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dohooo%2Fdegitlab/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dohooo%2Fdegitlab/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dohooo%2Fdegitlab/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/dohooo","download_url":"https://codeload.github.com/dohooo/degitlab/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":222035692,"owners_count":16919925,"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":["degit","gitlab","nodejs","self-managed"],"created_at":"2024-10-29T11:20:27.446Z","updated_at":"2024-10-29T11:20:28.148Z","avatar_url":"https://github.com/dohooo.png","language":"TypeScript","funding_links":["https://github.com/sponsors/dohooo"],"categories":[],"sub_categories":[],"readme":"English | [简体中文](./README.zh-CN.md)\n\n\u003cp align='center'\u003e[ WIP 🔴 ]\u003c/p\u003e\n\n# degitlab\n\n\u003e 🫥 **degitlab** -\u003e **de-git-lab**  \n\u003e Copy repository without the git information for self-managed gitlab, very fast.  \n\n### Why?\n\nIn self-managed GitLab, I made some code templates, such as ts-starter, which is a code template based on TS. It contains the development specification configuration of the team and some specific configurations for internal use in the company. In order to share it with other colleagues, I cannot place it in Github. So I put it in self-managed GitLab, and I can do it when I need to run `degitlab -n ts-starter -o ./ts-project`.  \n\nFor another example, I created a repository containing various IDE configurations, also based on our team's specifications, and if I use VSCode, I can run `degitlab -n ide -o .vscode -f .vscode`, and If I use another IDE, I can also use `-f` to filter any configuration folder in the project. This tool has greatly improved project standardization and development efficiency.\n\n### How?\n\nWhen you run `degitlab -n some-group/some-repo -o ./`, it will find the latest commit on the remote and download the associated tar file to `./` if it doesn't already exist locally. (This is much quicker than using `git clone`, because you're not downloading the entire git history.)\n\n### Configuration\n\nSince self-managed git usually come with authentication, so we need to add personal access token.  \n*You don't need to set it if you have already logged in locally.*\n```\n# ~/.gitconfig\n\n[core]\n  degitlabPAT = \u003cpersonal access token\u003e\n  degitlabHost = \u003chost\u003e\n```\n\n### Usage\n\n\n```\n// Use the project name to clone the project and automatically filter the .git directory.\ndegitlab -n degitlab\n\n// Specify the path to clone, default is current directory.\ndegitlab -n degitlab -o ./dist\n\n// Filter the directory.\ndegitlab -n degitlab -o ./dist -f /src/index.ts\n\n// Filter the multiple directories.\ndegitlab -n degitlab -o ./dist -f /src/index.ts -f /src/index2.ts\n\n// Help.\ndegitlab -h\n```\n\n## Sponsors\n\n\u003cp align=\"center\"\u003e\n  \u003cimg src='https://github.com/dohooo/sponsors/blob/master/sponsors.png?raw=true'/\u003e\n\u003c/p\u003e\n\n## License\n\n[MIT](./LICENSE) License © 2022 [Dohooo](https://github.com/dohooo)\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdohooo%2Fdegitlab","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fdohooo%2Fdegitlab","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdohooo%2Fdegitlab/lists"}