{"id":18013037,"url":"https://github.com/sim642/shy","last_synced_at":"2025-04-04T14:20:39.922Z","repository":{"id":91296977,"uuid":"53264961","full_name":"sim642/shy","owner":"sim642","description":"Version Control System made as UT OOP course project.","archived":false,"fork":false,"pushed_at":"2016-09-20T11:16:33.000Z","size":494,"stargazers_count":3,"open_issues_count":7,"forks_count":0,"subscribers_count":4,"default_branch":"develop","last_synced_at":"2025-02-09T23:49:45.428Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"Java","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/sim642.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,"publiccode":null,"codemeta":null}},"created_at":"2016-03-06T16:39:49.000Z","updated_at":"2016-03-27T20:07:48.000Z","dependencies_parsed_at":null,"dependency_job_id":"72f82471-e260-4ad1-8eef-9bd0ac5c5f64","html_url":"https://github.com/sim642/shy","commit_stats":null,"previous_names":[],"tags_count":4,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sim642%2Fshy","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sim642%2Fshy/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sim642%2Fshy/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sim642%2Fshy/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/sim642","download_url":"https://codeload.github.com/sim642/shy/tar.gz/refs/heads/develop","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":247190243,"owners_count":20898706,"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-10-30T03:19:42.465Z","updated_at":"2025-04-04T14:20:39.894Z","avatar_url":"https://github.com/sim642.png","language":"Java","funding_links":[],"categories":[],"sub_categories":[],"readme":"# shy\n\n[![Travis](https://img.shields.io/travis/sim642/shy/develop.svg)](https://travis-ci.org/sim642/shy)\n[![Codecov](https://img.shields.io/codecov/c/github/sim642/shy/develop.svg)](https://codecov.io/github/sim642/shy)\n\nVersion Control System made as UT OOP course project.\n\n#### Contributors\n* Tiit Oja\n* Simmo Saan\n* Gromet Spaal\n\n## Usage\n### Downloading\n* `git clone --recursive https://github.com/sim642/shy.git`  \n  Clones git repository with its submodules.\n\n### Building\n* `mvn package`  \n  Builds and packages shy into a single `.jar` file with all of its dependencies.\n\n### Setup\n#### Linux\n* `sudo ./shy-setup.sh`  \n  Creates a symlink into `/usr/local/bin/` to make `shy` command globally accessible.\n  Creates a symlink into `/etc/bash_completion.d/` to provide bash tab-completion for `shy`.\n\n#### Windows\n* `shy-setup` in \"Command Prompt (Run as Administrator)\"  \n  Adds the directory to `PATH` to make `shy` command globally accessible.\n\n### Getting help\nshy has extensive help available directly from the command line. Simply run `shy help` followed by the subcommand name\nfor which the help should be shown, e.g. `shy help add`. If a command has subcommands, they will be listed in the help\nand their help can also be viewed, e.g. `shy help author name`.\n\n### Author information setup\n`shy gauthor` command can be used to set author's details globally which will be stored in a config file under home directory.\n`shy author` sets repository's author details for a specific repository.\n\n### Initialization\n#### New repository\nRun `shy init` in any directory to initialize a shy repository in that directory.\n\n#### Existing repository\nRun `shy clone` with a supported URI argument to clone a shy repository.\nCurrently only SSH URIs are supported, e.g. `ssh://shy@example.com/home/shy/test`.\n\n\nAll of the following commands can be run in that directory or any of its subdirectories.\n\nIt is highly recommended to set up your information (name, email) with `shy author` as that will be shown as the author\nof the commits made.\n\n### Committing\nUse `shy add` to add files and directories from working directory to the commit currently being created.\nUse `shy remove` to remove files and directories from the commit currently being created.\nOnce everything necessary is added, run `shy commit` with a suitable commit message to create the commit.\n\n### Branching\nRun `shy branch add` to create a new branch at the latest commit. All branches can be listed with `shy branch list` and\nexcess ones deleted with `shy branch remove`.\n\n### Tagging\nRun `shy tag add` to create a new tag at the latest commit with given message. All tags can be listed with `shy tag list` and\nexcess ones deleted with `shy tag remove`.\n\n### Viewing history\nUse `shy log` to see the commit history for any branch or commit. Optionally it's possible to give a second argument\nto filter out only some commits.\n\n### Viewing differences\nIt's possible to display the differences of any two files in the working directory using `shy diff`.\nThe same command can also be used to compare any two branches and commits entirely.\n\n### Checking out\nAny branch and commit can be checked out using `shy checkout`.\n**NB! Any uncommited files may be overwritten.**\n\n### Merging\nUse `shy merge` with a branch name as argument to merge that branch into the currently checked out one.\nConflicting changes will be renamed to respectively `.OLD` and `.REV` files to indicate the old file from\ncurrent branch and the file from the merged branch.\nMerged changes will be automatically added but not commited to allow for pre-commit testing and changes, thus\n`shy commit` has to be executed separately.\n**NB! Merging may completely fail and make unexpected changes.**\n\n### Pushing and pulling\nUse `shy pull` to get updates from a remote repository and `shy push` to send your updates to a remote repository.\nRemote repositories (remotes) can be managed via `shy remote` commands.\nUnless specified the default remote \"origin\", which is set up automatically when cloning, is used for pushin and pulling.\n**NB! Any uncommited files may be overwritten.**\n\n### Searching content\nThe `shy search` command can be used to recursively search content in a specific commit.\n\n### Ignoring files\nA `.shyignore` file can be created to ignore files which match the glob patterns specified in the ignore file.","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fsim642%2Fshy","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fsim642%2Fshy","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fsim642%2Fshy/lists"}