SublimeText3の設定をGitで管理する


前提

  1. Gitがインストールされていること
  2. GitHub等のGitホスティングサービスのアカウントを持っていること

手順

  1. 既にSublimeTextを使用中の場合は、C:\Users\UserName\AppData\Roaming\Sublime Text 3\Packages\Userの中身を別のディレクトリへ退避し、SublimeTextをアンインストールする
  2. SublimeTextをインストールする
  3. C:\Users\UserName\AppData\Roaming\Sublime Text 3\Packages\Userで以下のコマンドを実行し、ローカルリポジトリを作成。

    git init
    
  4. ローカルリポジトリに最初のcommit(空commitにする)
    参考: Gitの最初のコミットは空コミットにしよう - Qiita

    git commit --allow-empty -m "first commit"
    
  5. .gitignoreファイルの作成
    参考: Windowsエクスプローラーでドットファイルを作成する - Qiita

    作成例
    *.errors.log
    1self.sublime-settings
    encoding_cache.json
    oscrypto-ca-bundle.crt
    Package Control.last-run
    Package Control.merged-ca-bundle
    Package Control.system-ca-bundle
    Package Control.user-ca-bundle
    c2u_tmp/
    ColorPicker/
    Color Highlighter/themes/
    Package Control.cache/
    
  6. ローカルリポジトリにcommit

    git add .
    git commit -m "second commit"
    
  7. Gitホスティングサービス上でリモートリポジトリを作成

  8. リモートリポジトリを登録

    githubの場合
    git remote add origin [email protected]:username/reponame.git
    
    Bitbucketの場合
    git remote add origin https://[email protected]/username/reponame.git
    
  9. ローカルリポジトリからリモートリポジトリへpush

    git push -u origin master
    
  10. 1で退避したファイルを、C:\Users\UserName\AppData\Roaming\Sublime Text 3\Packages\Userに上書きする

バージョン管理の対象ファイル

Default (Windows).sublime-keymap

Preferences > Key Bindings から開ける、キーバインドの設定ファイル

Package Control.sublime-settings

Package ControlからインストールしたPackageの一覧が記録されるファイル
SublimeTextは、起動時にこのファイルを読み込み、最新バージョンのPackageをダウンロードするようになっています

Preferences.sublime-settings

Preferences > Settings から開ける、SublimeText全体の設定ファイル

{Package名}.sublime-settings

Preferences > Package Settings から開ける、Packageごとの設定ファイル

{言語名}.sublime-settings

Preferences > Syntax Specific から開ける、言語ごとの設定ファイル

その他ファイル

  • *.sublime-build (自作のbuild設定)
  • *.sublime-snippetsnippet (自作のsnippet)
  • *.tmTheme (カラースキーム)
  • *.sublime-macro (自作のマクロ)
  • その他自作のファイル

リンク

Syncing - Package Control
mokmokjp/sublime_settings - GitHub