}
env_sync_data() {
- [ \! -L "$BASEDIR/.config" -a -f "$BASEDIR/.config" ] && mv "$BASEDIR/.config" "$ENVDIR"
+ [ \! -L "$BASEDIR/.config" ] && [ -f "$BASEDIR/.config" ] && mv "$BASEDIR/.config" "$ENVDIR"
git add .
git add -u
}
env_diff() {
env_init
env_sync_data
- git diff --cached --color
+ git diff --cached --color=auto
env_link_config
}
env_init
[ -L "$BASEDIR/.config" ] && rm -f "$BASEDIR/.config"
[ -L "$BASEDIR/files" ] && rm -f "$BASEDIR/files"
- [ -f "$ENVDIR/.config" ] || ( cd "$ENVDIR/files" && find | grep -vE '^\.$' > /dev/null )
+ [ -f "$ENVDIR/.config" ] || ( cd "$ENVDIR/files" && find . | grep -vE '^\.$' > /dev/null )
env_sync_data
if ask_bool 1 "Do you want to keep your current config and files"; then
mkdir -p "$BASEDIR/files"
env_init 1
branch="$(git branch | grep '^\* ' | awk '{print $2}')"
- if [ -n "$branch" -a "$branch" != "master" ]; then
+ if [ -n "$branch" ] && [ "$branch" != "master" ]; then
env_ask_sync
if ask_bool 0 "Do you want to clone the current environment?"; then
from="$branch"
rm -f "$BASEDIR/.config" "$BASEDIR/files"
fi
git checkout -b "$1" "$from"
- if [ -f "$BASEDIR/.config" -o -d "$BASEDIR/files" ]; then
+ if [ -f "$BASEDIR/.config" ] || [ -d "$BASEDIR/files" ]; then
if ask_bool 1 "Do you want to start your configuration repository with the current configuration?"; then
- [ -d "$BASEDIR/files" -a \! -L "$BASEDIR/files" ] && {
+ if [ -d "$BASEDIR/files" ] && [ \! -L "$BASEDIR/files" ]; then
mkdir -p "$ENVDIR/files"
shopt -s dotglob
mv "$BASEDIR/files/"* "$ENVDIR/files/" 2>/dev/null
shopt -u dotglob
rmdir "$BASEDIR/files"
- }
+ fi
env_sync
else
rm -rf "$BASEDIR/.config" "$BASEDIR/files"