Biết rằng các quy trình windows chỉnh sửa thư mục chính cho các tệp được hiển thị trong WSL hiện không được hỗ trợ (sự cố đồng bộ hóa siêu dữ liệu VolFS, hãy google nó)
Nếu bạn đang đề cập đến vấn đề này hoặc một dẫn xuất của nó, thì lưu ý rằng vấn đề đã được giải quyết từ lâu (như đã lưu ý trong bài đăng trên blog của Microsoft đó) với việc tạo phương thức truy cập DrvF cho WSL. Từ Git Bash, bạn sẽ sử dụng:
cd //wsl\$/Ubuntu-18.04
# Thay thế tên distro thích hợp nếu cần
Cá nhân tôi chắc chắn không khuyên bạn nên "di chuyển" thư mục chính (tức là cố gắng sử dụng thư mục của một trong hai hệ thống làm thư mục chính của hệ thống kia). Bạn có thể gặp phải các vấn đề về quyền/quyền sở hữu, các UID/GID khác nhau, v.v. "Đồng bộ hóa" cả hai thay vào đó sẽ là một chiến lược tốt hơn nhiều, IMHO.
Tuy nhiên, câu hỏi này đã từng xuất hiện trong quá khứ và khuyến nghị chung là sử dụng kho lưu trữ git để lưu trữ/đồng bộ hóa các tệp cấu hình được chia sẻ của bạn giữa các "máy chủ" (WSL/Ubuntu và Git Bash trong trường hợp này). Có một số tiện ích được thiết kế để thực hiện việc này dễ dàng hơn, với một danh sách đẹp đây. Cá nhân tôi chưa sử dụng bất kỳ cái nào trong số chúng, nhưng tôi đã đọc những điều hay về GNU Stow.
Lưu ý: Từ hồ sơ của bạn, có vẻ như bạn có nhiều kiến thức chuyên môn về git hơn tôi, nhưng đối với tôi, có vẻ như (nếu muốn) bạn có thể tạo một hook để bất cứ khi nào bạn đẩy một thay đổi vào repo cấu hình trên Git Bash bên cạnh, nó sẽ tự động chạy một cái gì đó như:
wsl -e sh -c "git --git-dir=$HOME/.dotfiles pull
Điều này sử dụng wsl
trong Windows để gọi một lệnh trong phiên bản Ubuntu của bạn. Tuy nhiên, bạn cần một số cách để chỉ chạy hook khi bạn đã cam kết từ Git Bash. Hoặc bạn có thể viết kịch bản sao cho nó được gọi là git
trong Git Bash nếu cam kết được thực hiện trong WSL/Ubuntu và ngược lại.
Hoặc đó có thể là quá mức cần thiết/quá kiến trúc ;-)