{"id":13493027,"url":"https://github.com/dbrady/ssh-config","last_synced_at":"2025-03-28T11:31:26.189Z","repository":{"id":851683,"uuid":"581754","full_name":"dbrady/ssh-config","owner":"dbrady","description":"A Tool to help manage your .ssh/config file.","archived":false,"fork":false,"pushed_at":"2020-12-29T20:14:28.000Z","size":31,"stargazers_count":126,"open_issues_count":0,"forks_count":18,"subscribers_count":6,"default_branch":"master","last_synced_at":"2024-05-01T12:50:45.785Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":"","language":"Ruby","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/dbrady.png","metadata":{"files":{"readme":"README.rdoc","changelog":"CHANGES","contributing":null,"funding":null,"license":"MIT-LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2010-03-27T03:39:02.000Z","updated_at":"2024-04-15T19:18:29.000Z","dependencies_parsed_at":"2022-07-15T04:16:57.808Z","dependency_job_id":null,"html_url":"https://github.com/dbrady/ssh-config","commit_stats":null,"previous_names":[],"tags_count":2,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dbrady%2Fssh-config","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dbrady%2Fssh-config/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dbrady%2Fssh-config/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dbrady%2Fssh-config/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/dbrady","download_url":"https://codeload.github.com/dbrady/ssh-config/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":246020905,"owners_count":20710840,"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-07-31T19:01:11.523Z","updated_at":"2025-03-28T11:31:25.919Z","avatar_url":"https://github.com/dbrady.png","language":"Ruby","readme":"= ssh-config: A Tool for Managing ssh Config Files\n\n== Overview\n\nIt's not THAT much trouble to update your .ssh/config file every time\na host changes, but when it starts happening often enough, even that\nhassle starts to add up. This is a quick tool I wrote to help handle\nthem.\n\nIt takes great care to not trash your config file, so you can continue\nto edit your config files by hand before and after running the tool.\n\nssh-config will make a backup of your ~/.ssh/config file as\n~/.ssh/config~.\n\nProbably the most useful command is \"copy\", which intelligently copies\nan existing host section.\n\n== Commands\n\n=== set \u003chost\u003e \u003ckey\u003e \u003cvalue\u003e\n\nAdds or updates the value for a given host.\n\n=== unset \u003chost\u003e \u003ckey\u003e\n\nRemoves a key value for a given host. NOTE: If all values are removed\nfrom a section, the section is NOT removed; use rm \u003chost\u003e for that.\n\n=== rm \u003chost\u003e\n\nRemoves an entire host section.\n\n=== copy \u003cold_host\u003e \u003cnew_host\u003e [\u003ckey\u003e \u003cvalue\u003e [...]]\n\nCopies the entire section named \u003cold_host\u003e to a new section called\n\u003cnew_host\u003e. If old_host has a Hostname section, ssh-config will try to\nupdate it to reflect the new_host name. For example, if you had a\nsection like\n\n  Host rails01\n    Hostname rails01.example.com\n\nAnd you did ssh-config copy rails01 rails02, the new section would\nlook like this:\n\n  Host rails02\n    Hostname rails02.example.com\n\nYou can manually override any setting, and/or set new ones by\nappending the new key/value pairs at the end. Given the rails01\nsection above, \"ssh-config copy rails01 rails02 Hostname\nrails-02.example.com User dbrady\" would emit\n\n  Host rails02\n    Hostname rails-02.example.com\n    User dbrady\n\nNote: If you just want another short name for a host, use alias instead\n\n=== dump\n\nDumps the entire file.\n\n=== show \u003chost\u003e [\u003chost\u003e ...]\n\nDumps one section. (Similar to ssh-what.) \u003chost\u003e may be the main name\nfor a host or an alias.\n\n=== search \u003cpattern\u003e\n\nShows all sections that have any line (key OR value) that matches\npattern. (Similar to ssh-what.)\n\n=== list\n\nLists all section names (just the Host line)\n\n=== alias \u003chost\u003e \u003calias\u003e [\u003calias\u003e ...]\n\nAdds one or more aliases to a host definition (to show up on the Host line).\n\n=== unalias [\u003chost\u003e] \u003calias\u003e [\u003calias\u003e ...]\n\nWith 2 or more arguments, looks up host by \u003chost\u003e (must be the first\nname on the Host line), and removes any \u003calias\u003ees from the list of\nalternate names.  With only 1 argument, looks for an entry by that\nalias (must NOT be the first name on the Host line), and removes the\nalias from the entry, if found.","funding_links":[],"categories":["Ruby","Apps"],"sub_categories":["`.ssh/config`"],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdbrady%2Fssh-config","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fdbrady%2Fssh-config","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdbrady%2Fssh-config/lists"}