parent
9fb50ad9b4
commit
0ab3dbf7e5
@ -0,0 +1,43 @@
|
|||||||
|
# ------------------------------------------------------------------------------
|
||||||
|
# FILE: upgrade-oh-my-zsh.plugin.zsh
|
||||||
|
# DESCRIPTION: oh-my-zsh plugin file.
|
||||||
|
# AUTHOR: Jonathan Dahan <jonathan@jedahan.com>
|
||||||
|
# VERSION: 0.3.0
|
||||||
|
# ------------------------------------------------------------------------------
|
||||||
|
|
||||||
|
# This plugin adds upgrade_zsh(), a relatively safe manual upgrade.
|
||||||
|
# It also has two dangerous options that are off by default.
|
||||||
|
#
|
||||||
|
# zstyle ':omz:plugin:upgrade' auto-commit 'yes'
|
||||||
|
# auto-commit will commit whatever upstream changes there are without review
|
||||||
|
# This will still favor local changes when conflict arive
|
||||||
|
#
|
||||||
|
# zstyle ':omz:plugin:upgrade' auto-upgrade 'yes'
|
||||||
|
# auto-upgrade will check for updates 6 hours from the last successful upgrade
|
||||||
|
|
||||||
|
function upgrade_zsh() {
|
||||||
|
current_path=`pwd`
|
||||||
|
cd ~/.oh-my-zsh
|
||||||
|
|
||||||
|
zstyle -t ':omz:plugin:upgrade' auto-commit || nocommit='--no-commit'
|
||||||
|
|
||||||
|
if git pull $nocommit --strategy=recursive -X ours origin master; then
|
||||||
|
printf '\033[0;34m%s\033[0m\n' 'Hooray! oh-my-zsh is up-to-date :)'
|
||||||
|
touch ~/.zsh-upgrade
|
||||||
|
else
|
||||||
|
printf '\033[0;31m%s\033[0m\n' 'Oh no! There was an error upgrading oh-my-zsh :('
|
||||||
|
fi
|
||||||
|
|
||||||
|
cd $current_path
|
||||||
|
}
|
||||||
|
|
||||||
|
if zstyle -t ':omz:plugin:upgrade' auto-upgrade; then
|
||||||
|
if [ -f ~/.zsh-upgrade ]; then
|
||||||
|
# upgrade if ~/.zsh-update was modified over 6 hours ago
|
||||||
|
if [ ~/.zsh-upgrade(Nmh+6) ]; then
|
||||||
|
upgrade_zsh
|
||||||
|
fi
|
||||||
|
else
|
||||||
|
upgrade_zsh
|
||||||
|
fi
|
||||||
|
fi
|
Loading…
Reference in new issue