{"id":18087882,"url":"https://github.com/scm-manager/scm-manager","last_synced_at":"2025-04-06T07:12:53.202Z","repository":{"id":37094335,"uuid":"245964662","full_name":"scm-manager/scm-manager","owner":"scm-manager","description":"The easiest way to share and manage your Git, Mercurial and Subversion repositories over http.","archived":false,"fork":false,"pushed_at":"2024-10-29T09:23:08.000Z","size":157623,"stargazers_count":136,"open_issues_count":56,"forks_count":29,"subscribers_count":13,"default_branch":"develop","last_synced_at":"2024-10-29T11:39:41.915Z","etag":null,"topics":["cloudogu","git","hg","java","mercurial","scm","scm-manager","subversion","svn"],"latest_commit_sha":null,"homepage":"https://scm-manager.org","language":"Java","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"agpl-3.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/scm-manager.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":null,"funding":null,"license":"LICENSE-HEADER.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":"2020-03-09T06:57:28.000Z","updated_at":"2024-10-29T09:23:11.000Z","dependencies_parsed_at":"2023-02-14T22:45:44.545Z","dependency_job_id":"81f30cd0-3fbd-4924-ba81-f72c0a413689","html_url":"https://github.com/scm-manager/scm-manager","commit_stats":{"total_commits":11073,"total_committers":50,"mean_commits":221.46,"dds":0.4827959902465456,"last_synced_commit":"a185cc7d16333bcb6b01fb6e5544104f0b8103be"},"previous_names":[],"tags_count":189,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/scm-manager%2Fscm-manager","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/scm-manager%2Fscm-manager/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/scm-manager%2Fscm-manager/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/scm-manager%2Fscm-manager/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/scm-manager","download_url":"https://codeload.github.com/scm-manager/scm-manager/tar.gz/refs/heads/develop","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":247445671,"owners_count":20939958,"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":["cloudogu","git","hg","java","mercurial","scm","scm-manager","subversion","svn"],"created_at":"2024-10-31T17:09:16.760Z","updated_at":"2025-04-06T07:12:53.163Z","avatar_url":"https://github.com/scm-manager.png","language":"Java","funding_links":[],"categories":[],"sub_categories":[],"readme":"\u003cp align=\"center\"\u003e\n  \u003ca href=\"https://scm-manager.org/\"\u003e\n    \u003cimg alt=\"SCM-Manager\" src=\"https://download.scm-manager.org/images/logo/scm-manager_logo.png\" width=\"500\" /\u003e\n  \u003c/a\u003e\n\u003c/p\u003e\n\nThe easiest way to share and manage your Git, Mercurial and Subversion\nrepositories.\n\n- Very easy installation\n- No need to hack configuration files, SCM-Manager is completely\n  configurable from its Web-Interface\n- No Apache and no database installation required\n- Central user, group and permission management\n- Out of the box support for Git, Mercurial and Subversion\n- Full RESTFul Web Service API (JSON and XML)\n- Rich User Interface\n- Simple Plugin API\n- Useful plugins available\n- Licensed under AGPL-3.0-only\n\nThis branch (`develop`) is for the development of SCM-Manager. If you are interested in the development of version\n1.x, please checkout the branch `support/1.x`.\n\n## News\n\nAll news regarding SCM-Manager will be published in our [blog](https://scm-manager.org/blog/).\n\n## Support / Community\n [Contact the SCM-Manager community support](https://scm-manager.org/support/)\n\n## Documentation\n\nYou can find the complete documentation on our [homepage](https://scm-manager.org/docs/).\n\n## Development\n\nThe build of SCM-Manager requires the following installed packages:\n\n* Git\n* JDK 11\n* Mercurial (required for tests)\n* Docker (required for the docker package)\n\nThe build of SCM-Manager requires Java 11. \n\n### Tasks\n\nSCM-Manager uses [Gradle](https://gradle.org/) for the build.\nThe build itself is organized in tasks, the tasks can be executed with the gradle wrapper:\n\n```bash\n# on *nix\n./gradlew taskname\n\n# on windows\ngradlew.bat taskname\n```\n\nThis following tables describes some high level tasks,\nwhich should cover most of the daily work.\n\n| Name | Description                                                                                                        |\n| ---- |--------------------------------------------------------------------------------------------------------------------|\n| run | Starts an SCM-Manager with enabled livereload for the ui                                                           |\n| build | Executes all checks, tests and builds the smp inclusive [javadoc](https://scm-manager.org/javadoc/) and source jar |\n| distribution | Builds all distribution packages of scm-packaging                                                                  |\n| check | Executes all registered checks and tests                                                                           |\n| test | Run all unit tests                                                                                                 |\n| integrationTest | Run all integration tests of scm-it                                                                                |\n| clean | Deletes the build directory                                                                                        |\n\nThe next table defines a few more tasks which are more relevant for CI servers.\n\n| Name | Description |\n| ---- | ----------- |\n| publish | Publishes all artifacts and packages (required properties, see section 'Properties for publishing') |\n| sonarqube | Executes a SonarQube analysis |\n| setVersion | Sets the version to a new version |\n| setVersionToNextSnapshot | Sets the version to the next snapshot version |\n\nThere many more tasks, which are executed as part of the high level tasks,\nand it should rarely be necessary to call them individually.\nTo see the full list of available tasks, execute the following command:\n\n```bash\n# on *nix\n./gradlew tasks\n\n# on windows\ngradlew.bat tasks\n```\n\n### Dependencies\n\nDependencies and their versions are configured in the `gradle/dependencies.gradle`.\nVersions of dependencies can be specified as exact version or as a [range](https://docs.gradle.org/current/userguide/single_versions.html) of versions.\nIn order to keep the build consistent and reproducible, we use [gradle dependency locking](https://docs.gradle.org/current/userguide/dependency_locking.html).\nWhenever a dependency was added, changed or removed the lock files must be refreshed e.g.:\n\n```bash\n# on *nix\n./gradlew resolveAndLockAll --write-locks\n\n# on windows\ngradlew.bat resolveAndLockAll --write-locks\n```\n\n### Artifacts and reports\n\nArtifacts and reports which are created from the tasks are stored in the build directory of each subproject.\n\n### Debugging\n\nIf you want to debug the `run` task of SCM-Manager.\nYou can provide the `--debug-jvm` option, which starts the SCM-Manager jvm in debug mode.\nThen you can attach a debugger on port 5005.\nThe port can be changed by using the `--debug-port` e.g.: `--debug-port=5006`.\nIf you want to wait until a debugger is attached, before SCM-Manager starts you can use the `--debug-wait` option.\n\n### Distribution\n\nSCM-Manager provides various modules to deploy SCM-Manager on differnt platforms (e.g. Docker, Helm, RPM, DEB, Windows).\nThose modules are not build by default. \nTo build the distribution modules specify the `enablePackaging` property e.g.:\n\n```bash\n# on *nix\n./gradlew -PenablePackaging distribution\n\n# on windows\ngradlew.bat -PenablePackaging distribution\n```\n\nThe command above will refresh the lock files of all sub projects and all configurations.\n\n### Properties for publishing\n\nThe publishing process requires the following properties for authentication and signing.\nThose properties should be stored in `~/.gradle/gradle.properties`.\n\n| Property | Description |\n| -------- | ----------- |\n| packagesScmManagerUsername | Username for [packages.scm-manager.org](https://packages.scm-manager.org) |\n| packagesScmManagerPassword | Password for [packages.scm-manager.org](https://packages.scm-manager.org) |\n| dockerUsername | Username for [Docker Hub](https://hub.docker.com/) |\n| dockerPassword | Password or Api Token for [Docker Hub](https://hub.docker.com/) |\n| gitHubApiToken | Api Token for [GitHub](https://github.com/) |\n| npmEmail | Email of [NPM](https://www.npmjs.com/) account |\n| npmToken | Access Token for [NPM](https://www.npmjs.com/) account |\n| signing.keyId | Id of gpg secret key for signing |\n| signing.password | Passphrase of gpg secret key |\n| signing.secretKeyRingFile | Path to gpg secret key ring file |\n\n## Need help?\n\nLooking for more guidance? Full documentation lives on our [homepage](https://scm-manager.org/docs/) or the\ndedicated pages for our [plugins](https://scm-manager.org/plugins/). Do you have further ideas or need support?\n\n- **Community Support** - Contact the SCM-Manager support team for questions about SCM-Manager, to report bugs or to\n    request features through the official channels. [Find more about this here](https://scm-manager.org/support/).\n\n- **Enterprise Support** - Do you require support with the integration of SCM-Manager into your processes, with the\n    customization of the tool or simply a service level agreement (SLA)? **Contact our development partner Cloudogu!\n    Their team is looking forward to discussing your individual requirements with you and will be more than happy to\n    give you a quote.** [Request Enterprise Support](https://platform.cloudogu.com/en/support/).\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fscm-manager%2Fscm-manager","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fscm-manager%2Fscm-manager","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fscm-manager%2Fscm-manager/lists"}