🤨

個人開発をする際のWSL上のディレクトリ構成とGit管理

に公開

WSLを使う場合のおススメのファイル置き場

  • WSLを使う場合は、ファイルは

    1. Windows側(Cドライブとか)
    2. Ubuntu側(WSLの/home)

    の2通り置き方がある

    → より一般的なやり方は、2.Ubuntu側(WSLの/home)

  • Ubuntu側に置くべき理由は、以下の3つ

    1. パフォーマンスが速い
      Windows側 (/mnt/c/Users/...) にあるファイルを使うと、I/O が遅くなる。
      大きなプロジェクトや Docker を使う場合は顕著に遅くなる

    2. Linux 用のツールとの相性が良い
      例: chmod, ln -s など、Linux固有のコマンドを安心して使える。
      Windows側のファイルに対してはうまく動かないことがある

    3. 実運用に近い
      将来的に EC2 や Docker 上で動かすなら、Linux ファイルシステムに慣れておいた方が自然

  • ただし Windows側に置くメリットもある

    1. エクスプローラーで扱いやすい
      すぐにドラッグ&ドロップで触れる。

    2. Windowsアプリとの連携が楽
      例: Word/Excelや、画像ファイルを直接編集したい場合。

    3. 会社の環境によっては必須
      Windows側のOneDriveやTeamsと同期したいとき。

  • まとめ 💡

    • コードやプロジェクト → Ubuntuの/home側
    • ドキュメントやデータ共有 → WindowsのC:\Users...側

→ 今回は個人開発なので、Ubuntuの/home側にスクリプトなどを置き、Github上で管理することにした

個人開発する際のおススメのディレクトリ構成(Ubuntuの/home側)

  • プロジェクトごとにGit管理する(以下イメージ)
/home/ユーザー名/projects/
├── webapp-sample/       # プロジェクト1
   ├── src/             # ソースコード
   ├── tests/           # テストコード
   ├── Dockerfile
   ├── docker-compose.yml
   ├── .gitignore
   └── README.md
   (← このフォルダ自体が Git リポジトリ)

├── infra-study/         # プロジェクト2
   ├── ansible/
   ├── vagrant/
   ├── .gitignore
   └── README.md
   (← このフォルダ自体が Git リポジトリ)

└── jellyfish-timer/     # プロジェクト3(例:クラゲ瞑想タイマー)
    ├── public/
    ├── src/
    ├── package.json
    ├── .gitignore
    └── README.md
    ( このフォルダ自体が Git リポジトリ)

おススメのディレクトリ構成を実現するGit管理の仕方

  • まず、Github上でリポジトリを作成する
  • 次に、以下コマンドを1行ずつ実行することで、プロジェクトフォルダを作成する
cd ~/projects
git clone https://github.com/ユーザ名/リポジトリ名.git

Discussion