1
0
mirror of https://github.com/TheLocehiliosan/yadm synced 2026-03-02 03:49:29 +00:00
Commit Graph

303 Commits

Author SHA1 Message Date
Ross Smith II
539ffd3ffc Make symlinks relative 2019-11-13 08:17:06 -08:00
Tim Byrne
5aa1a7be75 Release 2.0.1
Update version number and update documentation

* Fix bug with worktree permissions (#174)
2019-11-12 07:49:26 -06:00
Ross Smith II
8633083716 Don't glob into parent dirs 2019-11-12 06:50:54 -06:00
Tim Byrne
de73c9f4b4 Release 2.0.0
Update version number and update documentation

* Support XDG base directory specification
* Redesign alternate processing
* Add built-in default template processor
* Allow storing alternates in yadm dir (#90)
* Add support for j2cli template processor
* Ignore encrypted files (#69)
* Support DISTRO in alternates (#72)
* Support `source` in templates (#163)
* Change yadm.cygwin-copy to yadm.alt-copy
* Support `-b <branch>` when cloning (#133)
* Support includes for j2-based templates (#114)
* Remove stale/invalid linked alternates (#65)
* Add support for Mingw/Msys (#102)
* Allow `-l` to pass thru to the `yadm config` command
* Improve processing of `yadm/encrypt`
* Fix bugs in legacy alternate processing
* Fix bug with hidden private files
* Improve support for older versions of Git
* Add upgrade command
2019-11-07 21:38:53 -06:00
Tim Byrne
f2b2d505a2 Reinitialize submodules during upgrade 2019-11-05 16:36:05 -06:00
Tim Byrne
a217537b26 Fix URL for upgrade help 2019-11-04 17:31:55 -06:00
Tim Byrne
5a802c8afd Allow -l to pass thru to the yadm config command 2019-11-03 14:21:59 -06:00
Tim Byrne
f5287f1588 Properly format supported configs 2019-11-03 14:17:10 -06:00
Tim Byrne
fc53cfd1f8 Remove --local
`--local` isn't supported by versions of Git older than 1.8. But it
should be the default if the `--local` is omitted.
2019-11-03 13:35:44 -06:00
Tim Byrne
616baaeac6 Rename default template processor 2019-10-30 17:29:17 -05:00
Tim Byrne
b62a4c77a6 Create an upgrade command
This command will assist users with migration from 1.x.x to 2.0.0.
2019-10-23 17:08:04 -05:00
Tim Byrne
0c9468c9b5 Ignore encrypted files (#69)
Append the contents of .config/yadm/encrypt to the repo's git ignore
list. This is to help prevent accidentally committing unencrypted
sensitive data.
2019-10-17 08:22:17 -05:00
Tim Byrne
f3249e00b5 Ensure base directories for alternates before creation 2019-10-12 18:22:02 -05:00
Tim Byrne
6d5467951a Properly handle missing "." in alternate conditions 2019-10-12 09:59:03 -05:00
Tim Byrne
4ea3ed9e2a Allow storing alternates elsewhere (#90)
This change allows alternates to be stored in "$YADM_DIR/alt". The
correct path within the work tree will be symlinked.

Storing alternates within the work tree is still allowed. Both locations
will be considered when choosing an appropriate alternate file.
2019-10-12 09:59:02 -05:00
Tim Byrne
aeb6a54ad7 Add source to templates (#163)
A new variable is exposed to templates, which holds the filename of the
template source. The primary use case is to be able to include a warning
message within the template. For example:

  # Do not edit. This file auto-generated from {{ yadm.source }}.
2019-10-11 07:23:52 -05:00
Tim Byrne
3a192db420 Remove symlinks before processing a template 2019-10-11 07:20:03 -05:00
Tim Byrne
574945f010 Change yadm.cygwin-copy to yadm.alt-copy
This removes the constraint of only allowing the copy option on Cygwin
systems. Now any system can configure this option.
2019-10-09 18:47:42 -05:00
Tim Byrne
b2ef6d2e09 Merge pull request #102 from rasa/rasa-add-mingw-msys-support 2019-10-09 07:48:56 -05:00
Tim Byrne
f3bde37f78 Support -b <branch> when cloning (#133) 2019-10-08 17:28:53 -05:00
Tim Byrne
6a3199ceea Support DISTRO in alternates (#72) 2019-10-06 16:35:47 -05:00
Tim Byrne
444622a658 Support else statements in builtin templates 2019-10-05 11:43:48 -05:00
Tim Byrne
e999929818 Change builtin templates to resemble jinja 2019-10-02 15:16:41 -05:00
Tim Byrne
b411f9d74f Split out processing of stale links 2019-10-02 15:16:10 -05:00
Tim Byrne
0438e383e5 Unify the way alternate file strings are matched 2019-10-02 15:16:10 -05:00
Tim Byrne
3ba17f41fd Fix a known bug with hidden private files 2019-10-02 15:16:10 -05:00
Tim Byrne
cfda485b34 Implement future alternate processing 2019-10-02 15:16:02 -05:00
Tim Byrne
f3ae31f1c2 Separate alternate linking code from other operations 2019-09-27 08:40:32 -05:00
Tim Byrne
e4e956fe21 Split discovery of alternates test data into a testable function 2019-09-27 08:40:32 -05:00
Tim Byrne
c29292d02b Split out processing of alt (past/future) 2019-09-27 08:40:31 -05:00
Tim Byrne
289b8e0c6c Remove unnecessary continuation backslashes 2019-09-27 08:40:31 -05:00
Tim Byrne
cec8778578 Align continuation backslashes 2019-09-27 08:40:31 -05:00
Tim Byrne
48fc6b0db7 Support XDG base directory specification
https://standards.freedesktop.org/basedir-spec/basedir-spec-latest.html
2019-09-27 08:40:31 -05:00
Tim Byrne
f0ad40376d Create YADM_HOOKS variable for hooks dir 2019-08-06 08:19:01 -05:00
Tim Byrne
a399c35e4e Add quoting 2019-07-29 08:00:09 -05:00
Daniel Wagenknecht
b404a87a89 Replace direkt calls to git with $GIT_PROGRAM
Some calls to git ignored the yadm.gpg-program configuration option
and called the first git found in $PATH instead. Make them adhere to
the configured git program by replacing the call with $GIT_PROGRAM.
2019-07-16 21:45:14 +02:00
Tim Byrne
4613c1d0c4 Merge pull request #114 from bb010g/patch-1 2019-04-12 07:57:35 -05:00
Tim Byrne
d245f633bf Remove invalid linked alternates (#65) 2019-04-10 09:23:34 -05:00
Tim Byrne
a2cc970dd6 Remove unnecessary Git invocations
`git ls-files` was being called multiple times during the processing of
alternates. This is now run once, and kept in an array.
2019-04-09 07:53:27 -05:00
Tim Byrne
2375a0955b Standardize sort order
Prevent localizations from interfering with sorting order.
2019-04-05 08:58:30 -05:00
Tim Byrne
0c6be5e398 Fix bug with alternate linked directories
Previously the tracked files were sorted, and then the files and their
parent directories were considered for possible alternates. Depending on
the length of directories and names of files, inconsistencies would
occur because the directory separator (/) would be part of the sorting.

To fix this, a unique list of tracked files and their parent directories
are sorted into a single list which is processed.
2019-04-05 08:58:30 -05:00
Tim Byrne
2aa1710214 Remove superfluous ; in comments 2019-03-24 17:22:11 -05:00
Tim Byrne
58edf313aa Process .yadm/encrypt in sorted order 2019-03-24 17:05:11 -05:00
addshore
ec65801d9b Run hooks on MINGW* systems
MINGW* systems don't have a +x flag.
Everything is executable if it exists (as far as I know).

This, while trying to run hooks on MINGW* systems just check
for the existence of the file instead of -x
2019-03-15 17:31:48 +00:00
Tim Byrne
402b57880d Update GPLv3 LICENSE information
This does NOT change the licensing.
2019-03-14 18:25:02 -05:00
Stig Palmquist
d075438308 support multiple keys in yadm.gpg-recipient 2019-01-20 20:26:18 +01:00
Brayden Banks
0b9f537909 Allow for more complex Jinja templates
By calling envtpl with a filename, Jinja can perform includes, which is useful for more general machine configuration.
2018-06-11 19:31:10 -07:00
Ross Smith II
54f7cbcebe Fix OS name match for Cygwin/Msys 2018-03-05 07:02:46 -08:00
Ross Smith II
315ad0873e Fix OS check to match (Cygwin|Msys)* 2018-03-04 06:34:08 -08:00
Ross Smith II
adfedf4b64 Add Mingw/Msys support 2018-03-03 20:02:45 -08:00