1
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

[Windows] Git の設定を SourceTree と VS Code WSL 時でも共通化する

Posted at

Windows の Sourcetree に Git サービスの Bitbucket や GitHub のアカウントを連携後、
WSL のファイルを Sourcetree と VS Code の双方で Git 管理できる様にするメモです。

Sourcetree で WSL 上のファイルを管理対象に

WSL 上のファイルを Sourcetree で Git 管理対象にしようとすると以下のエラー画面が表示されました。

'git log' がコード 128 で終了しました: fatal: detected dubious ownership in repository at '//wsl.localhost/Ubuntu/home/[user-name]/projects/[project-name]'
To add an exception for this directory, call:

	git config --global --add safe.directory '%(prefix)///wsl.localhost/Ubuntu/home/[user-name]/projects/[project-name]'
 (\\wsl.localhost\Ubuntu\home\[user-name]\projects\[project-name])

[user-name] 以降は作業者のディレクトリ構成のとおり。

Sourcetree でターミナルを起動 (Shift + Alt + T) して素直に記載のコマンドを実行します。

$ git config --global --add safe.directory '%(prefix)///wsl.localhost/Ubuntu/home/[user-name]/projects/[project-name]'

# 設定の確認
$ cat ~/.gitconfig
...
[safe]
	bareRepository = explicit
	directory = %(prefix)///wsl.localhost/Ubuntu/home/[user-name]/projects/[project-name]

これで Sourcetree で対象のディレクトリを Git 管理できるようになりました。
(手抜きに親ディレクトリ projects を対象にした場合、エラーは消えませんでした)

VS Code に設定を引き継ぐ

VS Code でコミットしようとするとユーザー情報が未設定のエラーが表示されます。

Make sure you configure your "user.name" and "user.email" in git.

ただ、Sourcetree では問題なくコミットできます。

どうも Sourcetree は C:\Users\[user-name] 配下、VS Code は ///wsl.localhost/Ubuntu/home/[user-name] 配下の .gitconfig を参照するようで、設定ファイルが異なるようです。

この辺、Sourcetree で自動生成された設定に任せたい・共通化したいので、
VS Code のターミナルで Sourcetree と同じ .gitconfig を参照するように以下のコマンドを実行します。

$ git config --global --add include.path "/mnt/c/Users/[user-name]/.gitconfig"

# 設定の確認
$ cat ~/.gitconfig
[include]
        path = /mnt/c/Users/[user-name]/.gitconfig

WSL 上から C ドライブのファイルを参照させる場合、
C:/Users/[user-name]/.gitconfig ではなく mnt/c でマウントしたファイルを参照させる必要があるみたいです。

これで VS Code と Sourcetree で共通の設定を利用できるようになりました。

1
0
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
1
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?