{"id":17480233,"url":"https://github.com/iamnewton/clone-all","last_synced_at":"2025-04-22T12:41:12.310Z","repository":{"id":16301219,"uuid":"19049949","full_name":"iamnewton/clone-all","owner":"iamnewton","description":"Clones every repository or gist from a Github user, optionally to a specified directory","archived":false,"fork":false,"pushed_at":"2020-03-16T01:51:16.000Z","size":54,"stargazers_count":5,"open_issues_count":8,"forks_count":0,"subscribers_count":2,"default_branch":"master","last_synced_at":"2025-03-29T15:11:50.111Z","etag":null,"topics":["bash","clone","github","script","shell"],"latest_commit_sha":null,"homepage":"https://iamnewton.github.io/clone-all/","language":"Shell","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"gpl-3.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/iamnewton.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":".github/CONTRIBUTING.md","funding":".github/FUNDING.yml","license":"LICENSE","code_of_conduct":".github/CODE_OF_CONDUCT.md","threat_model":null,"audit":null,"citation":null,"codeowners":".github/CODEOWNERS","security":null,"support":null},"funding":{"github":"iamnewton","patreon":"iamnewton"}},"created_at":"2014-04-22T23:21:47.000Z","updated_at":"2022-03-31T02:34:40.000Z","dependencies_parsed_at":"2022-09-14T22:54:09.738Z","dependency_job_id":null,"html_url":"https://github.com/iamnewton/clone-all","commit_stats":null,"previous_names":[],"tags_count":1,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/iamnewton%2Fclone-all","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/iamnewton%2Fclone-all/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/iamnewton%2Fclone-all/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/iamnewton%2Fclone-all/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/iamnewton","download_url":"https://codeload.github.com/iamnewton/clone-all/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":250242840,"owners_count":21398207,"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":["bash","clone","github","script","shell"],"created_at":"2024-10-18T21:43:03.951Z","updated_at":"2025-04-22T12:41:12.291Z","avatar_url":"https://github.com/iamnewton.png","language":"Shell","funding_links":["https://github.com/sponsors/iamnewton","https://patreon.com/iamnewton"],"categories":[],"sub_categories":[],"readme":"# clone-all(1)\n\nClones every repository or gist from a Github user, optionally to a specified directory.\n\nclone-all(1) is perfect to help you set up a new computer, back up your Github account, or if you just want to grab all of a users public repositories.  It also goes great with an [OS X setup script][osxdefaults] or [dotfiles setup][dotfiles].\n\n## Requirements\n\n* [Git][git] and [Github account][github]\n* [Homebrew][homebrew] (for package installation of the following)\n* [jq][jq] (for JSON to bash manipulation)\n* [roundup][roundup] (for testing)\n\n## How to install\n\nclone-all(1) is a [shell script][bin], so installation is simple.  [Download][download], extract and copy the script in the `bin` directory over to the `/usr/local/bin` directory and make sure it's in your `$PATH`.  The man page, `man clone-all`, can be installed by copying over the `clone-all.1` file to `/usr/share/man/man1`.\n\n## One-line installation\n\n```bash\n$ bash -c \"$(curl -fsSL raw.github.com/iamnewton/clone-all/go/install)\"\n```\n\nN.B. - using the one-line installation will download and install all of the dependencies, including the man page.\n\n## Usage\n\n```bash\n$ clone-all [options] \u003cgithub_username\u003e [\u003cpath\u003e]\n```\n\n### Options\n\n| Flag                 | Meaning                                                        |\n| :--------------------| :------------------------------------------------------------- |\n| `-h, --help`         | Print out help text                                            |\n| `-f, --feed \u003cvalue\u003e` | `\u003cvalue\u003e` can be either `gists` or `repos`, default is `repos` |\n| `-v, --version`      | Print out version                                              |\n\nN.B. - Default `\u003cpath\u003e` is `$HOME/Downloads`.\n\n## Acknowledgements\n\nInspiration and code was taken from many sources, but mostly from StackOverflow:\n\n* [Handling positional parameters](http://wiki.bash-hackers.org/scripting/posparams)\n* [How to get the latest tag name in current branch in Git?](http://stackoverflow.com/questions/1404796/how-to-get-the-latest-tag-name-in-current-branch-in-git)\n* [How to add a progress bar to a shell script?](http://stackoverflow.com/a/16348366)\n* [How to increment a variable in bash?](http://askubuntu.com/a/385531)\n* [Other Comparison Operators](http://www.tldp.org/LDP/abs/html/comparison-ops.html)\n* [The Basics of Using the Sed Stream Editor to Manipulate Text in Linux](https://www.digitalocean.com/community/articles/the-basics-of-using-the-sed-stream-editor-to-manipulate-text-in-linux)\n* [sed, a stream editor](http://www.gnu.org/software/sed/manual/sed.html)\n* [bash: replace an entire line in a text file](http://stackoverflow.com/questions/11145270/bash-replace-an-entire-line-in-a-text-file)\n* [In bash, how do I convert a space-delimited string into an array?](http://stackoverflow.com/questions/9293887/in-bash-how-do-i-convert-a-space-delimited-string-into-an-array)\n* [Returning Values from Bash Functions](http://www.linuxjournal.com/content/return-values-bash-functions)\n* [Github API pagination via curl](https://gist.github.com/michfield/4525251)\n* [How to check if a program exists from a bash script?](http://stackoverflow.com/a/677212)\n\n[bin]: https://github.com/iamnewton/clone-all/blob/master/clone-all\n[dotfiles]: https://github.com/iamnewton/dotfiles\n[download]: https://github.com/iamnewton/clone-all/archive/master.zip\n[github]: https://github.com/join\n[git]: http://git-scm.com\n[homebrew]: http://brew.sh\n[jq]: https://stedolan.github.io/jq/\n[osxdefaults]: https://github.com/iamnewton/osxdefaults\n[roundup]: https://github.com/bmizerany/roundup\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fiamnewton%2Fclone-all","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fiamnewton%2Fclone-all","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fiamnewton%2Fclone-all/lists"}