GitHubでdotfilesを管理する方法
コピペ用
which vim || sudo yum install -y vim || sudo apt install -y vim which git || sudo yum install -y git || sudo apt install -y git which rsync || sudo yum install -y rsync || sudo apt install -y rsync mkdir -p ~/git cd ~/git/ git clone https://github.com/teityura/dotfiles.git cd ~/git/dotfiles/ rsync -av ./. ~/ --exclude .git/ exec $SHELL -l
ローカルリポジトリの設定変更
cd ~/git/dotfiles git config --local user.name "teityura" git config --local user.email "teityura@gmail.com" # gitのバージョンが古く、--localオプションが無ければ # (推奨) gitのバージョンを上げる # (非推奨) .git/config を直接編集する # 普通の編集方法 vim .git/config # クールな編集方法 cat << EOS | ex .git/config 0a [user] name = teityura email = teityura@gmail.com . wq EOS
ホームディレクトリにコピー
cd ~/git/dotfiles rsync -av ./. ~/ --exclude .git/
その他
ローカルからリモートにプッシュ
# bashrc編集 vim ~/.bashrc # ローカルリポジトリに上書き cd git/dotfiles/ cp ~/.bashrc ./ # addしてcommitしてpush git add .bashrc git commit -m 'change .bashrc' git push -u origin master
リモートリポジトリの変更をローカルに反映
cd ~/git/dotfiles git pull
直前のコミットまで戻す
cd ~/git/dotfiles # 作業ツリーの変更をすべて戻す git checkout . # 特定ファイルを戻す git checkout# 特定のディレクトリ以下をすべて元に戻す git checkout
(非推奨)間違ってプッシュしたコミットを闇に消し去る
どうしても取り消さなければならない事情がある場合に
git log git log --oneline git reset --hard HEAD^ git log git log --oneline # vim .hoge なんらかの変更 git add -A git commit -m 'なんらかの変更' git push -f origin master
cf. ていちゅらのdotfiles
https://github.com/teityura/dotfiles
cf. ていちゅらのGithub
https://github.com/teityura
コメント