Expoで作成したファイルをgitにpushするまで
目次(クリックで読みたい部分にジャンプできます)
背景
ReactNative Expo で作成したファイルをgitにpushするまでの過程を学んだので、備忘録として残します。
途中で、push成功しない場合があり、その時の対処方も記載していますので、pushできない方は、同じ状態ではないか確かめてみてください。
Expoでファイル作成
npm start
ファイルを作成済み。ここから、gitにpushしていく。
gitは、New repository · GitHubでpushしたいレポジトリを作成しておく。
以下が準備されていることを確認する。
- Expoでファイル作成済み。
- gitでRepositoryが作成されている。
gitにpushしていくまでの手順
gitの初期化
pushしたいファイルディレクトリまで移動して以下を実行。
git init
Expo の場合は、既に初期化が済んでいると思うので、以下の内容が出るはず。
Reinitialized existing Git repository in /Users/<ユーザー名>/<ファイルディレクトリ>/.git/
gitのステータスを確認(なくても良い)
同じディレクトリで以下を実行。
git status
このように、編集した場所が更新される。(Expoで初期コミットをしているから。)
ログを確認(なくても良い)
gitにどんな変更をしたかが書かれている。
git log
Expoでファイルを作成した場合は、以下のようにExpoファイルを作成したとログが出ている。(Authorの隣に、メアドは出てくる。画像では消してる。)
ファイルをアップデートする
変更したファイルをアップデートする。(全てをアップデートする場合は、「.」にする。一つのファイルのみの場合は、そのファイル名を指定する)
git add .
入力した後、git statuで確認すると、緑字で変更したファイルが表示される。
gitにコミットする
gitにコミットする(理由はよくわからない。)
git commit
gitにリモート接続する
①gitで作成したレポジトリからURLをコピーする
②コピーしたURLで以下をターミナルに入力
git remote add origin <コピーしたURL>
※もし、接続されていたら、「error: remote origin already exists.」が出るので、そのままでOK
gitにpushする
以下コマンド二つを実行。
git branch -M main
git push -u origin main
もし、以下のようになれば成功。ならない場合は、その後に紹介する状態になっていないか確認してみる。
↓成功
(pushできなかった場合)URLが間違っている場合
まずは、以下エラーとなっていないか確認してみる。
Username for 'https://github.com':
Password for 'https://github.com':
remote: No anonymous write access.
fatal: Authentication failed for 'https://github.com/<pushしたファイル>'
このエラーの原因は、https://からのURLになっているため。
以下手順でエラーの解消ができる。
.ssh接続できているか確認
確認方法→GitやGitHubでSSHに接続する方法をわかりやすく解説! | 侍エンジニアブログ (sejuku.net)
一度でも、SSHkeyを生成し、gitに貼り付けた記憶のある方はおそらく大丈夫。
元のファイルディレクトリで、接続先を確認
自分のpushしたいファイルディレクトリに戻る。
以下を実行。
git remote -v
origin https://github.com/<ファイル名> (fetch)
origin https://github.com/<ファイル名> (push)
このような感じで表示されれば、このエラーの原因は解消できる。
接続先を変更する
git remote set-url origin git@github.com:<ファイル名>
#<ファイル名>は、https://で記載してあったファイル名と同じ。
サイド接続先を確認。
git remote -v
git@githubから始まるURLになっていれば変更成功。
再度プッシュして成功するはず。
git push -u origin main
以上。