16
13

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 5 years have passed since last update.

自由ライセンスで記事を公開してみようAdvent Calendar 2017

Day 4

ドットファイル(設定ファイル)を直接Gitで管理する —— リンクを作成したりは面倒

Last updated at Posted at 2017-12-04

📁 📁 📁 📁

Gitに慣れてくると、ホームディレクトリ以下の設定ファイルたち、いわゆるドットファイルもGitで管理したくなります。
よく紹介されている方法は、ドットファイルを置く専用のディレクトリを用意して、そのディレクトリをGitの管理下に置き、そこからホームディレクトリ以下にシンボリックリンクを張る方法です。

しかし、これは面倒なので私はホームディレクトリを直接Gitの管理下に置いています。
乱暴かも知れませんが、とりあえず今まで問題を感じたことはありませんので、方法を簡単に紹介します。

初期化

当然、ホームディレクトリで行なうことになります。

cd
git init

~/.git/ が作られます。
このリポジトリの設定である ~/.git/config と、全体の設定である ~/.gitconfig を混同しないよう注意します。

除外

まず、~/.gitignore で全てのファイルを除外します。

~/.gitignore
*

こうしないと、ホームディレクトリ以下のファイルが全て Untracked file として報告されてしまいます。
Gitで管理したいファイルだけ対象になるような ~/.gitignore を作ってもいいのですが、面倒なので * でよいでしょう。

ファイルを管理対象に加える

git add で好きなファイルを指定します。
全てが .gitignore で除外されていますので、-f, --force オプションが必要です。

cd
git add -f .vimrc

管理しているファイルの一覧

現在どのファイルがGitで管理されているかが解りにくいですが、git ls-files で確認できます。

cd
# 全て
git ls-files
# ディレクトリを指定
git ls-files .config/

新しい環境で

例えばリモートリポジトリを使用しているならば、そこからホームディレクトリに直接もって来れますね。

cd
git clone https://example.com/foo/home.git ./

GitHubなどの公開リポジトリでドットファイルを公開している方々もいますが、ちょっと恐いですね。
私は色々と熟練するまでは止めて置きます。

この記事のライセンス

クリエイティブ・コモンズ・ライセンス
この記事はCC BY 4.0(クリエイティブ・コモンズ 表示 4.0 国際 ライセンス)の元で公開します。

16
13
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
16
13

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?