timetable-app

Unnamed repository; edit this file 'description' to name the repository.
Log | Files | Refs | README | LICENSE

README.md (3843B)


      1 # 岸高時間割アプリ
      2 
      3 ## 開発環境の構築
      4 
      5 Windows では WSL (Windows Subsystem for Linux) を使用すると楽です。コントロールパネル → プログラム → Windows の機能の有効化または無効化 → Linux 用 Windows サブシステム を有効に設定し、再起動。Microsoft Store から [Ubuntu 22.04.3 LTS](https://www.microsoft.com/store/productId/9PN20MSR04DW?ocid=pdpshare) をインストールしましょう。
      6 
      7 インストールが完了したら指示に従って初期設定を行ってください。
      8 
      9 まずは Node.js をインストールします。
     10 
     11 ```
     12 # Node.js のバージョン管理ツール n のインストール
     13 curl -fsSL https://raw.githubusercontent.com/tj/n/master/bin/n | bash -s lts
     14 
     15 # Node.js LTS のインストール
     16 sudo n lts
     17 ```
     18 
     19 次に GitHub から自分の端末にリポジトリをクローンする下準備として、GitHub CLI を導入します。
     20 
     21 ```
     22 # GitHub CLI のインストール
     23 sudo apt install gh
     24 
     25 # GitHub CLI で GitHub にログイン
     26 gh auth login
     27 ```
     28 
     29 GitHub のサイト上で、`kishikou-it/timetable-app` を自分のリポジトリとしてフォークする。完了したら、「Code」のボタンから GitHub CLI でクローンするコマンドが用意されているのでコピーし、ターミナルで実行する。
     30 
     31 ```
     32 # リポジトリをクローン
     33 gh repo clone xxxx/timetable-app
     34 
     35 # クローンしたディレクトリに移動
     36 cd timetable-app
     37 ```
     38 
     39 \*1 apt 中にsudo dpkg --configure -a を実行せよと出るがlib系で止まったときは、`ls -al /usr/sbin/ |grep telinit` と `sudo mv /usr/sbin/telinit /usr/sbin/telinit.bak2` と `sudo ln -s /usr/bin/true /usr/sbin/telinit` を実行。参考→ https://github.com/microsoft/WSL/discussions/11097
     40 
     41 ## 開発方法
     42 
     43 基本的な流れは以下のとおりです。
     44 
     45 0. 既存 Issue から着手できそうなものを探すか、自分で Issue を立て、開発内容を説明する
     46 1. リモートの upstream (kishikou-it/timetable-app) の情報を更新
     47 2. upstream/dev からトピックブランチを分岐
     48 3. トピックブランチ上で開発
     49 4. トピックブランチを自身のフォークであるリモートの origin (xxxx/timetable-app) にプッシュ
     50 5. 自身のフォークにプッシュしたトピックブランチから dev ブランチへの Pull Request を作成
     51 
     52 1~3 の具体的な操作は以下です。
     53 
     54 まずは `timetable-app` ディレクトリを開いてください。
     55 
     56 ```
     57 # dev ブランチに切り替え
     58 git switch dev
     59 
     60 # プログラムを最新バージョンに更新
     61 git fetch upstream
     62 git pull upstream dev
     63 
     64 # パッケージマネージャとパッケージを更新
     65 corepack enable pnpm
     66 pnpm install
     67 
     68 # トピックブランチを作成
     69 git branch feat/xxxx
     70 
     71 # トピックブランチに切り替え
     72 git checkout feat/xxxx
     73 
     74 # 開発サーバー起動
     75 pnpm dev
     76 ```
     77 
     78 これで開発準備は完了です。なお、コミットは適当な粒度で行ってください。以下の例に倣うのがおすすめです。
     79 
     80 ```
     81 - 部品Aを実装
     82 - 部品Bを実装
     83 - 部品Cを実装
     84 - 部品A~Cを組み合わせて機能Xを実装
     85 - バグ修正・微調整
     86 ```
     87 
     88 開発完了後の 4 の操作は以下のとおりです。
     89 
     90 ```
     91 # ブランチを自分のフォークリポジトリにプッシュ
     92 git push origin
     93 ```
     94 
     95 GitHub のサイト上で Pull Request を作成します。Description には変更内容の説明を記入してください。
     96 
     97 ## GitHub 運用方針
     98 
     99 Pull Request のマージは、すべてのチェックをパスし、1人以上のレビュー承認が必要です。
    100 
    101 トピックブランチ→ dev ブランチのマージは squash merge で行います。dev ブランチ→ main ブランチのマージは create a merge commit で行います。