{"id":13681223,"url":"https://github.com/blackducksoftware/ohloh_scm","last_synced_at":"2025-04-30T03:30:47.172Z","repository":{"id":1161740,"uuid":"1050977","full_name":"blackducksoftware/ohloh_scm","owner":"blackducksoftware","description":"The Ohloh source control management library","archived":false,"fork":true,"pushed_at":"2025-03-03T14:50:04.000Z","size":1657,"stargazers_count":57,"open_issues_count":4,"forks_count":16,"subscribers_count":22,"default_branch":"main","last_synced_at":"2025-04-03T15:46:04.024Z","etag":null,"topics":["adapter","bazaar","bzr","cvs","git","hg","mecurial","ohloh","scm","subversion","svn"],"latest_commit_sha":null,"homepage":"http://www.ohloh.net","language":"Ruby","has_issues":false,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":"rcoder/ohloh_scm","license":"gpl-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/blackducksoftware.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}},"created_at":"2010-11-04T12:45:22.000Z","updated_at":"2025-03-03T14:50:07.000Z","dependencies_parsed_at":"2023-09-28T17:34:10.982Z","dependency_job_id":null,"html_url":"https://github.com/blackducksoftware/ohloh_scm","commit_stats":{"total_commits":399,"total_committers":34,"mean_commits":"11.735294117647058","dds":0.7769423558897244,"last_synced_commit":"7a0fd69cecf088ff4bfea3d6e195f4295ef76587"},"previous_names":[],"tags_count":15,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/blackducksoftware%2Fohloh_scm","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/blackducksoftware%2Fohloh_scm/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/blackducksoftware%2Fohloh_scm/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/blackducksoftware%2Fohloh_scm/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/blackducksoftware","download_url":"https://codeload.github.com/blackducksoftware/ohloh_scm/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":251635045,"owners_count":21619132,"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":["adapter","bazaar","bzr","cvs","git","hg","mecurial","ohloh","scm","subversion","svn"],"created_at":"2024-08-02T13:01:28.032Z","updated_at":"2025-04-30T03:30:46.324Z","avatar_url":"https://github.com/blackducksoftware.png","language":"Ruby","funding_links":[],"categories":["Ruby"],"sub_categories":[],"readme":"[![Ohloh SCM on OpenHub](https://www.openhub.net/p/ohloh_scm/widgets/project_partner_badge.gif)](https://www.openhub.net/p/ohloh_scm)\n![Coverity Scan Build](https://github.com/blackducksoftware/ohloh_scm/actions/workflows/coverity.yml/badge.svg?branch=main)\n![Build Status](https://github.com/blackducksoftware/ohloh_scm/actions/workflows/ci.yml/badge.svg?branch=main)\n\n# Ohloh SCM\n\nThe OpenHub source control management library\n\n## Overview\n\nOhloh SCM is an abstraction layer for source control management systems,\nallowing an application to interoperate with various SCMs using a\nsingle interface.\n\nIt was originally developed at OpenHub, and is used to generate\nthe reports at www.openhub.net.\n\n## Using Docker\n\nOne may use Docker to run Ohloh SCM and test changes.\n\n```sh\n$ git clone https://github.com/blackducksoftware/ohloh_scm\n$ cd ohloh_scm\n$ docker build -t ohloh_scm:foobar .\n\n# To run all tests, we need to start the ssh server and set UTF-8 locale for encoding tests.\n$ cmd='/etc/init.d/ssh start; LANG=en_US.UTF-8 rake test 2\u003e /dev/null'\n$ docker run --rm -P -v $(pwd):/home/app/ohloh_scm -ti ohloh_scm:foobar /bin/sh -c \"$cmd\"\n# This mounts the current folder into the docker container;\n#   hence any edits made in ohloh_scm on the host machine would reflect in the container.\n```\n\n## Development Setup\n\nBesides docker, one could setup OhlohScm locally on Ubuntu with the following commands:\n\n```sh\nsudo apt-get update\nsudo apt-get install -y build-essential software-properties-common\n\nsudo apt-add-repository -y ppa:brightbox/ruby-ng\nsudo apt-get update\nsudo apt-get install -y ruby2.5 ruby2.5-dev\n\nsudo apt-get install -y ragel libxml2-dev libpcre3 libpcre3-dev swig gperf\nsudo apt-get install -y git git-svn subversion cvs mercurial bzr\nsudo ln -s /usr/bin/cvs /usr/bin/cvsnt\n\nmkdir -p ~/.bazaar/plugins\ncd ~/.bazaar/plugins\nbzr branch lp:bzr-xmloutput ~/.bazaar/plugins/xmloutput\n\ngem install bundler\nbundle install\n\n# For running tests\nsudo apt-get install -y openssh-server expect locales\nsudo locale-gen en_US.UTF-8\n```\n\nOhlohScm is currently tested on the following versions:\nGit 2.17.1, SVN 1.9.7, CVSNT 2.5.04, Mercurial 4.5.3 and Bazaar 2.8.0\n\nOhlohScm has been tested with other linux distros and MacOSx. The installation instructions will differ.\nLet us know if you need help installing OhlohScm on other distros.\n\n## Running tests\n\n```sh\n$ rake test\n$ ./bin/run-test spec/ohloh_scm/version_spec.rb foobar # run a single test matching 'foobar' # Used as /.*foobar.*/.\n$ ./bin/run-tests version_spec.rb foobar_spec.rb      # run multiple tests.\n```\n\n## Auto check for rubocop compliance and test failures\n\nThis will prevent a git commit if the files being committed fail rubocop or their related tests.\n```sh\n$ git config core.hooksPath .git_hooks/\n```\n```sh\n# Skip hooks when committing temporary code that breaks rubocop/tests.\n$ git commit -m 'temp' --no-verify\n```\n\n## Contact OpenHub\n\nYou can reach OpenHub via email at:\n[info@openhub.net](mailto:info@openhub.net)\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fblackducksoftware%2Fohloh_scm","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fblackducksoftware%2Fohloh_scm","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fblackducksoftware%2Fohloh_scm/lists"}