Difference between revisions of "Power User Tools"
(→Adding new repo) |
|||
Line 1: | Line 1: | ||
− | =Managing configs with <code>vcsh | + | =Managing configs with <code>vcsh</code>= |
<code>vcsh</code> [https://github.com/RichiH/vcsh] is a utility that allows you to create multiple git repositories to store configuration files in your home directory. | <code>vcsh</code> [https://github.com/RichiH/vcsh] is a utility that allows you to create multiple git repositories to store configuration files in your home directory. | ||
Line 29: | Line 29: | ||
> vcsh zsh push --set-upstream origin master # push to the origin and setup tracking | > vcsh zsh push --set-upstream origin master # push to the origin and setup tracking | ||
− | + | =Reverse SSH= | |
− | |||
− | |||
− | |||
− | + | The <code>ssh</code> command has a <code>-R</code> option that can be used to allow ssh access to a computer that does not have a public, static IP address (such as a computer behind a NAT at home) using another | |
− | + | computer that does have a public IP Adrees. | |
− | |||
− |
Revision as of 18:50, 3 May 2017
Managing configs with vcsh
vcsh
[1] is a utility that allows you to create multiple git repositories to store configuration files in your home directory.
It solves the problem of having to use symlinks, and is a very nice tool. It works well with another tool named mr
[2] that allows
you to synchronize all of your config repos with a single command.
Common Tasks
Adding new repo
Let say you want to add a repo for tracking your zsh configuration.
First, create a gitignore file for the repo so you can just do git add .
> vim ~/.gitignore.d/zsh ...
Add the following lines
/* !/.zsh
Now create the repository and push to a remote
> vcsh init zsh # create the repo > vcsh zsh add . # add all files not masked by ~/.gitignore.d/zsh > vcsh zsh commit # commit files > vcsh zsh remote add origin ssh://user@host/repo/with/write/access # create remote repo > vcsh zsh push --set-upstream origin master # push to the origin and setup tracking
Reverse SSH
The ssh
command has a -R
option that can be used to allow ssh access to a computer that does not have a public, static IP address (such as a computer behind a NAT at home) using another
computer that does have a public IP Adrees.