link to git
Project description
This tool stores files in a git repository and creates links instead automatically. Files are kept in the same structure as they were before but can be categorized for easy accessibility.
using ltg
A typical folder will look a bit like this:
$ ls -ARl ~/.ltg .ltg/: total 84K drwxr-xr-x 2 user users 4.0K Jun 4 20:04 general drwxr-xr-x 2 user users 4.0K Jun 4 20:04 vim drwxr-xr-x 8 user users 4.0K Jun 5 21:53 .git -rw-r--r-- 1 user users 43 Jun 4 20:06 .gitmodule .ltg/general total 12K drwxr-xr-x 2 user users 4.0K Jun 4 13:11 .gitconfig drwxr-xr-x 3 user users 4.0K Jun 4 13:22 .i3 -rw-r--r-- 1 user users 3.9K Jun 4 12:14 .bash_prompt -rw-r--r-- 1 user users 5.6K Jun 5 01:26 .bashrc .ltg/vim total 4.0K drwxr-xr-x 3 user users 4.0K Jun 4 13:22 .vim ...
Getting there is really simple. To add a new file, call store:
$ ltg store ~/.xinitrc ~/.Xdefaults ~/.bashrc $ ltg store --category vim ~/.vim
it will now be added to your dotfile folder (by default ~/.ltg), a git repository should be set up and the files have been added to the index.
To link the files or recreate lost links you can use link:
$ ltg link -f
ltg will then automatically create links to all stored files instead of the original.
To automatically store and link files, use add:
$ ltg add -c vim .vim
To update changed files run:
$ ltg git -- add ~/dotfiles/bash/.bashrc
or simply:
$ ltg git -- add -A
The git command forwards commands directly to git (with baked in directories), meaning you can run:
$ ltg git -- remote add origin git@bitbucket.com:user/dotfiles.git ... $ ltg git -- pull --recurse-submodules origin master ... $ ltg link $ ltg add -c bash ~/.bashrc $ ltg git -- push ...
There is a handy command group available to simplify pulling and pushing, sync:
$ ltg sync down $ ltg sync up
will first pull remote changes (via rebase) and then push local changes in a single commit.
TODO
unlinking
removing
atomatic commit messages
simplify git integration
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
File details
Details for the file ltg-0.2.2.tar.gz
.
File metadata
- Download URL: ltg-0.2.2.tar.gz
- Upload date:
- Size: 9.3 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | b2bc1dae9131da2308cd267d0af069bebb5988c6bfcd87fcf3774e3042979ced |
|
MD5 | 838c404f42aa83c1460c2f05bbc7c91d |
|
BLAKE2b-256 | 60a7dcd518db9bbac8561d8d1a828149eb228f044865eba47d6da46461d740a7 |