ぽよメモ

レガシーシステム考古学専攻

dotfilesをgithubに投げる

最近ずっと.vimrcとかをいじってたんですがどうにも色々な機器でいちいち手動設定するの面倒だったので、githubにまとめて投げて今度からはgit cloneして終わりにさせたいと思いました。 というわけで、まずはgithubのアカウントを作ります。まぁSign upするだけですが…次にdotfilesというリポジトリを作ります。名前はなんでもいいです。 ターミナルに戻り、gitアカウントを登録します。

git config --global user.name "登録したユーザ名"
git config --global user.mail "登録したメールアドレス"

この操作は一回だけしておけば後は自動的にこの情報が使われます。 ターミナルに戻り、ローカルでの操作を行います。

cd ~/
mkdir dotfiles
mv .vimrc dotfiles
mv .bashrc dotfiles
mv .vim dotfiles

こんな感じで流用したい環境設定ファイルを放り込んでいきます。 ※注意 この時mvを使っているので、ファイルは移動し元あった場所から消えます。つまりvimなどの設定が飛びます。その後がやりづらくなるのでcpなどを使ったほうが良い気がします。ディレクトリの場合、シンボリックリンクに強制置き換えできないためOperation not permittedが出るようです。ファイルの場合は問題無いですが、ディレクトリの場合はmvで移動する or 名前を変えてバックアップにするほうが良いようです 次にシンボリックリンクを張ります。dotfilesLink.shとか適当な名前付けて、

#!/bin/sh
ln -sf ~/dotfiles/.vimrc ~/.vimrc
ln -sf ~/dotfiles/.bashrc ~/.bashrc
ln -sf ~/dotfiles/.vim ~/.vim

こんな感じにして保存します。

export PATH=$PATH:/home/ユーザ名/dotfiles #PATHの追加
chmod a+x dotfilesLink.sh #実行権限の付与
dotfilesLink.sh

実行するとシンボリックリンクが張られます。 ここまで終わったら後はgitにpushするだけです。

cd ~/dotfiles
git init #必要な.gitフォルダの作成
git add . #.を使うとディレクトリ以下のすべてのファイルを選択
git commit -m 'first commit'
git remote add https://github.com/ユーザ名/dotfiles.git
git push origin master #ユーザ名とパスワードの入力が要求されます

これでローカルのdotfilesがgithubにアップロードされました。 dotfilesの中身を更新したらまたpushする必要があります。

#新規ファイルが有るとき
git add .
git commit -m "anything"
git push origin master
#新規ファイルが無いとき
git commit -a -m "anything"
git push origin master

こんな感じで。 後は他のコンピュータでgit cloneすれば良いです。更新した情報はgit pullで取得できます。詳しいことはcommitとpushしかできない人のためのgithubの使い方まとめを読んでください。