-
Notifications
You must be signed in to change notification settings - Fork 2
/
Copy pathbackup.sh
executable file
·55 lines (44 loc) · 1.16 KB
/
backup.sh
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
54
55
#! /bin/bash
DIR=$HOME/dotfiles
export git=/usr/bin/git
if [ -f ".name" ]; then
backName=$(cat .name)
else
backName=$(whoami)
fi
backup_folder_path="$HOME/dotfiles/macos/$backName"
if [ -d "$backup_folder_path" ]; then
echo "文件夹 $backup_folder_path 已存在"
else
mkdir "$backup_folder_path"
echo "文件夹 $backup_folder_path 已创建"
fi
# backup my config
backup() {
echo "Backup ~/.zshrc to $backup_folder_path/zshrc"
cp ~/.zshrc $backup_folder_path/zshrc
echo "Backup brew bundle to $backup_folder_path/Brewfile"
# 暂时不列出 --whalebrew --vscode
brew bundle dump --describe --force --no-upgrade --brews --casks --taps --mas --file="$backup_folder_path/Brewfile"
# echo "Backup brew to ~/dotfiles/brew/backup"
# sh -c $HOME/dotfiles/brew/backup.sh
# code --list-extensions > ~/dotfiles/_rc/exts.txt
}
# > Backup to Github
backup_to_github() {
msg='Backup on: '$(date)
# echo $msg
cd $DIR
if [ -n "$(git status -s)" ]; then
git pull --rebase
git add $DIR/macos
git commit -m "$msg"
git push --set-upstream origin main
git push
fi
}
# 备份
backup
# 备份到 github 要最后运行
backup_to_github
exit 0