blob: 722f90e1c4088a604fdcd31792ecebd9e0585a35 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
|
# task-git.sh
`task-git.sh` is a wrapper around Taskwarrior's `task` that places the task
database in version control, and generates commits each time the `task` database
is altered.
## Usage
1. Navigate to your Taskwarrior data directory (usually in `~/.task`) and type `git init`. If you plan to push to a remote, go ahead and add your remote now. Don't forget the following command: `git branch --set-upstream-to=origin/<branche> master`.
2. Add symlink to task-git.sh as /usr/bin/task-git
`ln -s /path/to/task-git/task-git.sh /usr/bin/task-git`
3. Run `chmod +x /path/to/task-git/task-git.sh`.
4. Use `task-git` instead of `task` when you want the Taskwarrior database files to be automatically committed to version control after each operation.
5. Edit /etc/bash_completion.d/task to add this line to the end of the file so `task-git` will <TAB>-complete the same as `task`
`complete -o nospace -F _task task-git`
For zsh, just put this following line before your alias list:
```
autoload -U compinit
compinit
compdef _task task-git
```
It is recommended to use the Taskwarrior database only on one machine, as you will be resolving conflicts if using the same task database on multiple machines.
In the case where the repository is already present, symply clone it in the ~/.task folder that should not exist locally.
## License
task-git.sh
Copyright (C) 2013 Kosta Harlan
Copyright (C) 2015 Timothy Hallett (on modifications)
Copyright (C) 2017 Corentin Breton (on modifications)
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation, either version 3 of the License, or
(at your option) any later version.
This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.
You should have received a copy of the GNU General Public License
along with this program. If not, see <http://www.gnu.org/licenses/>.
|