Linux設定ファイルをgitで管理する

Linuxで設定ファイルを書き換えていると…

gitで管理するようにしてみてはどうかな?と思ってやってみた

gitのインストール

$ apt-get -y install git

インストールされているgitのバージョンを確認する

$ git --version
git version 2.1.4

gitのもろもろの設定

  • エディタの設定
$ git config --global core.editor nano

エディタには今まで使う頻度が高かったnanoにしてみた
デフォルトでnanoになっていることが多いらしいが一応

  • ページャーの設定
$ git config --global core.pager "w3m -no-mouse "

ページャーにはw3mをつかってみた
マウスモードをOffにしているのは、ターミナルアプリで接続時にマウスで文字選択できなくなるため

  1. [Space]でページスクロールできる
  2. マウスモードをOffしていてもターミナルアプリで接続時にホイール回転でのスクロールはできた
  3. [Shift]+[Q]で終了
  • 日本語のファイル名を化けさせない
$ git config --global core.quotepath false

Linuxの設定ファイルに日本語のファイル名が使われることは無いはずだが一応書いておいた

  • 色の設定もろもろ

    git config --global color.ui true
    git config --global color.diff auto
    git config --global color.status auto
    git config --global color.branch auto
    
  • もろもろの設定値の確認

    $ git config --list
    core.editor=nano
    core.pager=w3m -no-mouse
    core.quotepath=false
    color.ui=true
    color.diff=auto
    color.status=auto
    color.branch=auto
    

実際にやってみた

設定ファイルを管理するリポジトリを作成する

$ cd [設定ファイルの在り処]
$ git init

設定ファイルを編集する前にオリジナルを残しておく

$ git add [設定ファイル]
$ git commit -m "デフォルトの状態"

設定ファイルを書き換える

いままで通りの書き換え作業を行う

変更したファイルの差分を表示する

$ git diff

変更前に戻したくなった

$ git checkout [設定ファイル]

変更をコミットする

$ git add [設定ファイル]
$ git commit -m "○○のため設定を変更した"

コミットの履歴をみる

$ git log

コミットの詳細をみる

git show [Commit ID]

Commit IDはgit logで確認できる

変更されたファイルの一覧を表示する

$ git status

コミットした後に漏れを見つけて、それも追加したい

$ git add [設定ファイル]
$ git commit --amend --no-edit