- 投稿日:2020-03-19T23:25:19+09:00
GitHubでコントリビュートするときにするGitリモート設定の覚え書き
GitHubでコントリビュートするときにフォークしたリポジトリを最新のmasterに合わせるやり方を忘れるので覚え書きとして書いておきます。
フォーク元のリポジトリで作業するとき
一般的な方式です。
# フォークしたリポジトリをものをローカルに落とす git clone git@github.com:lighttiger2505/session.vim.git # 親のリポジトリを上流としてリモート登録 git remote add upstream https://github.com/dareka/sugoino.git # 親のリポジトリの変更を取得 git fetch upstream # フォークのmasterに親リポジトリの変更をマージ git merge upstream/masterフォーク先のリポジトリで作業するとき
親リポジトリのパスを変えたくないときに使います。Golangはパスが依存していたりするのでこうします。go modを使えば良い気がするけど、未だによくわかってない。
# 親のリポジトリをローカルに落とす git clone https://github.com/dareka/sugoino.git # フォークしたリポジトリを下流としてリモート登録 git remote add downstream git@github.com:lighttiger2505/typo.git # フォークしたリポジトリをチェックアウト git checkout downstream/master # 親リポジトリの変更を取得 git fetch origin # フォークのmasterに親リポジトリの変更をマージ git merge upstream/master
- 投稿日:2020-03-19T18:45:54+09:00
【Angular x Firebase】0から環境構築とプロジェクト作成からFirebase連携までの手順
1. 環境構築
エディターはインストール済みである前提で進めます。オススメはVSCodeです。
後述するコマンドは
- macなら「ターミナル」
- windowsなら「コマンドプロント」
を起動してコピペして叩いてください。
1-1. NVMをインストール
Angularを使う際にはNode.jsのインストールが必要です。
そのためにまず、バージョン管理を行うためのライブラリであるNVM (Node Version Manager)をインストールします。curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.35.3/install.sh | bash
v0.35.3
とありますが、バージョンはすぐに上がるのでこちらからコピペしてください。
https://github.com/nvm-sh/nvm#installing-and-updating1-2. Node.jsをインストール
こちらは勝手に最新版をインストールしてくれます。
パッケージ管理のNPM (Node Package Manager)もセットで付いてきます。nvm install node
https://github.com/nvm-sh/nvm#usage
1-3. AngularCLIのインストール
-g
を付けることでグローバルインストールといって、プロジェクトによらずその環境全体で使えるようになります。npm install -g @angular/cli1-4. FirebaseCLIのインストール
npm install -g firebase-toolshttps://firebase.google.com/docs/cli#install_the_firebase_cli
1-5. Gitのインストール
Gitを使うとソースコードのバージョン管理が出来ます。
ここからダウンロードしてフローに従ってインストールしてください。
https://git-scm.com/2. プロジェクト作成
2-1. GitHubでリポジトリを作成
GitHubでソースコードをリモート管理します。
アカウント作成がまだの方はアカウントを作成後、リポジトリを作成します。
https://github.com/new2-2. Angularプロジェクトを作成
ng new プロジェクト名2-3. GitHubと紐付けして初期Push
エディターでプロジェクトを開きます。
# プロジェクトのあるパスに移動した後に code.
先程作成したGitHubリポジトリとプロジェクトを紐付けします。
URLはGitHubでリポジトリを開くと表示されるものをコピペします。git remote add origin リポジトリのURL
HTTPS
が選択されている方はこちらを参考にSSH接続に変更してください。Angularの環境構築とプロジェクト作成はこれで完了です。
3. Firebase連携
3-1. Firebaseプロジェクトを作成
こちらから作成できます。
https://console.firebase.google.com作成が終わったら、使いたい機能を有効化していきます。
その際、ロケーションを選択することになります。(選択後は変更不可なので注意)
東京の場合はasia-northeast1
です。3-2. Firebaseの初期化
プロジェクト側で叩きます。
firebase login firebase init3-3. AngularFireのインストール
ng add @angular/fire@nextこのページのQuickstartの指示に従って、以下2点を行います。
https://github.com/angular/angularfire/blob/master/docs/install-and-setup.md
/src/environments/environment.ts
にFirebaseの認証情報を追加app.module.ts
でAngularFireModuleとプロジェクトで使用するModuleをインポート以上ですべて完了です。
- 投稿日:2020-03-19T13:37:26+09:00
コード品質を改善できるツール
Visual Studio Code (VSCode)の良いプラグイン
Region folding
Better comments
PHP DocBlocker
PHPDocBlockerの記述を容易にしてくれる。例えば、「/**」と入力して[Tab]キーを押せば、そのスケルトンを自動生成してくれる。また、「@」で始まるタグ名の補完も可能だ(PHP IntelliSenseではこれはサポートされていない)
Text Maker (High light)
Rainbow brackets
GitLens
GitBlame
Git History
Gitのコメントの良い方法
Conventional Commitsの仕様は、コミットメッセージのための軽量の規約です。 明示的なコミット履歴を作成するための簡単なルールを提供します、この規則に従うことで自動化ツールの導入を簡単にします。 この規約はSemVerと組み合わせることで、コミットメッセージへ機能、修正、重大な変更を入れることで、さらに詳細な説明を可能にします。
- Conventional commit (https://www.conventionalcommits.org/ja/)
コード品質をチェック
- PHP-CS-Fixer
- PHPMD (日本語) PHPMD バグにつながりそうな怪しい ソースコードをチェックして教えてくれる phpmd。 コーディング時に必ず使うようにしておくとミスやバグが減るので是非使いましょう
ボーナス
- 投稿日:2020-03-19T10:15:38+09:00
folkしたレポジトリの更新とupstreamについて
Gitでfolkしたブランチを最新の状態に更新する方法と、それを調べたとき出てきたupstreamという概念についてのメモ。
1. folkしたレポジトリを最新の状態に更新する
Github上でレポジトリをfolkしたあとの話。
$ git clone git@github.com:アカウント名/folkしたレポジトリ.git #とりあえずfolkしたレポジトリをclone $ cd folkしたレポジトリ $ git branch #ブランチを確認 * master $ git remote -v #リモートの状態を確認 origin https://github.com/アカウント名/folkしたレポジトリ.git (fetch) #自分のアカウントにあるレポジトリが指定されている origin https://github.com/アカウント名/folkしたレポジトリ.git (push) $ git remote add upstream git://github.com/folk元のレポジトリ.git #本家をupstreamとして追加 $ git remote -v #リモートの状態を確認 origin https://github.com/アカウント名/folkしたレポジトリ.git (fetch) #自分のアカウントにあるレポジトリが指定されている origin https://github.com/アカウント名/folkしたレポジトリ.git (push) upstream https://github.com/folk元のレポジトリ.git (fetch) #本家のレポジトリが指定されている upstream https://github.com/folk元のレポジトリ.git (push) $ git checkout master $ git fetch upstream #upstreamに対してfetch $ git git merge upstream/master #upstreamのmasterからマージ2. upstreamって何よ?
- Gitでの慣例として、自分のリポジトリは「origin」、フォーク元は「upstream」とする。
- origin に対しては read / write ができるが、upstream に対しては read だけができる。
- 投稿日:2020-03-19T00:24:43+09:00
【heroku】laravelをherokuでデプロイ(github 連携、MySQL使ってる)【heroku #とは】
heroku git でデプロイしてDBを使う方法はたくさん出てくるのですが、
herokuとgit hubを連携してデプロイするのに結構苦労したのでまとめ間違ってたら教えてください、、、、
前提
- githubにデプロイしたいアプリケーションがあること
- herokuのアカウントがある
herokuに新しくappを作る
herokuにログインして、
右上のnewからcreate new appを選択します。そしたら、名前を入力する画面が出てくるので、好きな名前を入力してcreat appをポチッ!!!!!!
そうするとappができます。
githubと連携する
create appのボタンを押すとそのまま下の画面に行くと思うので、
DeployタブのDeployment methodのところにあるgithubを選択します。
そうすると、下の方に連携するgithubのレポジトリを選択する画面みたいなのが出てくるので、
連携するレポジトリを選びます。
(githubの連携がはじめての時はアカウント連携みたいなのがある)clearDBをくっつける
上のResourcesタブに移動してadd-onsから検索でcleardbを見つけて追加します。
無料のやつか有料のやつかみたいなの聞かれるんで無料のやつでいいと思います。
あと、クレカ登録してないとaddon追加できないので、クレカも登録しておくよー!
環境変数追加
必要な環境変数を追加します。
settingsタブを押して、Config Varsから環境変数を追加します。環境変数は、laravelだと .env 、Railsだと.bash_profileに書いてあるやつです。
私laravelしかわからないのでlaravelで必要な環境変数は
- APP_KEY
- APP_ENV
- LANG
- TZ
こんな感じだと思います。
S3とか使ってたらもっと増えるけどLANGは使用する言語なので、ja_JP.UTF-8
TZはタイムゾーンなのでAsia/Tokyo後は.envをみて入れてね
あと、CLEARDB_DATABASE_URLという環境変数が入ってたと思うのですが、
これはさっきcleardbを追加した時に自動で入れてくれたものです。なので右側はほったらかしで、左だけ
CLEARDB_DATABASE_URLからDATABASE_URLに変更する
(laravelの方の環境変数がDATABASE_URLなので)migrateする
herokuにログイン
そうしたら、ターミナルでデプロイするレポジトリに移動して
$ heroku login
でherokuにログインします。
herokuのappと連携
ローカルのレポジトリと、さっき作ったherokuのappを紐付けます。
$ heroku git:remote --app APPNAME
これでOK
migrateを実行
$ heroku run php artisan migrate
migrationを実行して、マイグレーションファイルが全て実行されたことを確認
デプロイする
Deployタブから下のほうに行くと
Deploy Branchボタンがあるのでポチッと押すとデプロイされます多分みれる!!!!!!!
heroku gitじゃなくてgithub連携すると、piplinesが使えるからいいのかな、
(heroku gitでも使えるのかな)何か抜けてたら教えてください、、、、、