「なんも分からん」と叫びながらポートフォリオ開発を足掻いた記録① ～環境構築編～

## 目的

- 転職
- フロントエンドの開発に集中して生きたい
- 編集した箇所が目に見えて変わっていくの楽しい！
- 現職ではいろいろと叶わないので没頭できるところに転職しよう！
- とはいえ初心者に二年分の毛が生えた程度なので手を動かそう
- いつかの誰かを救うかもしれないので悪戦苦闘した過程の記録を残しておこう

## 開発環境
- Windows11
- WSL2(Ubuntu)
- VScode

## 方針

1. VScodeでReactの開発環境を作る
    - ツール選定基準
        - 使い慣れてる
        - 実際の開発環境でもメジャー
1. ローカルで動かす
1. GitHubのパブリックリポジトリで上げていく
    - 転職サイトで成果物として公開できるように
    - ふんわり知識のGitHubを実際に使ってみる
    - ※現職でのメインのバージョン管理がSubversionなので主流方法のGitの勉強を兼ねる

## 工程

1. Gitの準備
2. 開発環境の準備
3. Reactの公式チュートリアル
    - https://ja.legacy.reactjs.org/tutorial/tutorial.html
    - 中途半端な知識なので基礎から勉強する
4. ポートフォリオ用の自己開発

## この記事で触れるもの

工程の1と2

## 実施内容

1. Git環境を構築
    1. Gitインストール
        - GitHubでの管理に必要だから
    1. Git管理にGUIツールをインストール
        - CUIでもいいが視覚化した方が楽
        - GitKrakenとSourcetreeを比較してGitKrakenを採用
        - 新規着手だからこそ使い慣れたら楽なものをやってみる
        1. https://www.gitkraken.com/ → 「Download GitKraken Client Free」からDL
        1. exeファイルを実行したらサインイン（GitHubアカウントは作っていたのでそれを使用）
        1. サインイン後、GitKrakenを起動したらユーザー名とメアド入力欄が表示されるので任意の情報を入力
        - インストール作業はここまで
    1. GitHubでリポジトリを作る
        - とりあえずReactチュートリアル用
        - 採用担当者に確認されていいようにpublic設定
    1. ローカルにリポジトリをClone
        - 前項のリポジトリを操作できるようにローカルに連携
    1. ブランチを作る
        - masterブランチがないんじゃが
        - もう分からんのでGitKraken上でリモートリポジトリ作りなおす
        - Github上で作ったリモートリポジトリを削除
    1. リポジトリを作り直す
        1. GitKraken上からリポジトリ作成→GitHubで作る
        - 秒で作成。ちゃんとmasterブランチもある
        - 慣れてないのにブラウザとGUIをごちゃまぜにしたのが敗因と推測
    1. ブランチを作る
        - 無事にmasterがあるので作業ブランチを作る
    1. 更新してみる
        1. 「README.md」の中身を更新する
        1. GitKraken上から反映する
        1. GitHub上でプルリクエストをレビュー（一人でやっているのでセルフレビュー）
        1. masterにマージする
        1. GitKrakenのmasterブランチをpull(更新)する
    1. 追加・削除してみる
        - commit後、pullリクエストの作成を忘れて詰まりかけた
1. VScodeの設定
    1. 拡張機能を入れまくる
        - 参考： [React開発効率を3倍にするVS Code拡張機能&環境設定](https://qiita.com/newt0/items/b7810fb38c339ec5e4a7)
1. 仮想環境で開発準備を整える
    - この辺でやっぱMac買っておけばよかったと後悔
    1. これ([WSL2 + Ubuntu + VSCodeでの開発環境構築](https://qiita.com/zaburo/items/27b5b819fae2bde97a3b))を見ながら四苦八苦
    2. Ubuntu 20.04.6 LTS をMicrosoftStoreから取得
    3. ユーザー作成
    4. NVMインストール

        ``` linux
        $ curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.39.5/install.sh | bash
        ```

    5. 最新のNode.js（安定版）をインストール

        ``` linux
        $ nvm install --lts
        ```

    6. npmをインストールする

        ``` linux
        $ sudo apt-get update
        ```

    7. reactのインストール

       ``` linux
       $ sudo npm -g install create-react-app
       ```

2. 試しにプロジェクトを作ってみる
   1. プロジェクト作成

       ``` linux
       $ create-react-app sunaba001
       ```

   3. プロジェクトに移動して起動

       ``` linux
       $ cd sunaba001
       $ nmp start
       ```




## 参考にしたもの

### React関連
- [React初案件獲得までの流れ(学習・案件探し・面接・契約まで)](https://qiita.com/newt0/items/975a379de904858dd0f9)
- [React 公式チュートリアル](https://ja.legacy.reactjs.org/tutorial/tutorial.html)
- [りあクト！ TypeScriptで始めるつらくないReact開発 第4版【① 言語・環境編】](https://oukayuka.booth.pm/items/2368045)

### Git関連

- [【GitHub超初心者入門】この前初めてGitHubを使い始めたエンジニア見習いが書くGitHubの使い方と実践～とりあえず一緒に動かしてみようぜ！～](https://qiita.com/nnahito/items/565f8755e70c51532459)
- [【超入門】初心者のためのGitとGitHubの使い方](https://tech-blog.rakus.co.jp/entry/20200529/git)
- [『GitKraken』と『Sourcetree』を比較してみた](https://spc-jpn.co.jp/blog/8899/)
- [2021年 Git GUI「GitKraken」の導入と少しの使い方[令和最新版]](https://zenn.dev/hihumikan/articles/5d7d7ca7e1c738)
- [GitKrakenの日本語化（v6.4.1）](https://qiita.com/cabbage_lettuce/items/416aac21f8624e3ac3cc)

### 環境構築関連

- [node.jsとnpmとnvmwをインストールしよう。node.jsの環境を用意する（Windows編）](https://photo-tea.com/p/17/hexo-start-kit-tools-4-win/)
- [nvmを使ってNode.jsをインストールする](https://qiita.com/pyon_kiti_jp/items/da5080e9c7454e935aeb)
- [Ubuntuにreactをインストールして動作確認する](https://noauto-nolife.com/post/ubuntu-react-install/)
- [create-react-appコマンドを利用して、reactをインストールする方法](https://qiita.com/mk185/items/d40e539caad025bdc987)