20200319のGitに関する記事は5件です。

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
  • このエントリーをはてなブックマークに追加
  • Qiitaで続きを読む

【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-updating

1-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/cli

https://cli.angular.io/

1-4. FirebaseCLIのインストール

npm install -g firebase-tools

https://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/new

2-2. Angularプロジェクトを作成

ng new プロジェクト名

2-3. GitHubと紐付けして初期Push

エディターでプロジェクトを開きます。

# プロジェクトのあるパスに移動した後に
code.

先程作成したGitHubリポジトリとプロジェクトを紐付けします。
URLはGitHubでリポジトリを開くと表示されるものをコピペします。

git remote add origin リポジトリのURL

SS 2020-03-19 17.27.32.png

HTTPS が選択されている方はこちらを参考にSSH接続に変更してください。

Angularの環境構築とプロジェクト作成はこれで完了です。

3. Firebase連携

3-1. Firebaseプロジェクトを作成

こちらから作成できます。
https://console.firebase.google.com

作成が終わったら、使いたい機能を有効化していきます。
その際、ロケーションを選択することになります。(選択後は変更不可なので注意)
東京の場合は asia-northeast1です。

3-2. Firebaseの初期化

プロジェクト側で叩きます。

firebase login
firebase init

3-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をインポート

以上ですべて完了です。

  • このエントリーをはてなブックマークに追加
  • Qiitaで続きを読む

コード品質を改善できるツール

Visual Studio Code (VSCode)の良いプラグイン

Region folding

Region folding

Better comments

Better comments

PHP DocBlocker

PHPDocBlockerの記述を容易にしてくれる。例えば、「/**」と入力して[Tab]キーを押せば、そのスケルトンを自動生成してくれる。また、「@」で始まるタグ名の補完も可能だ(PHP IntelliSenseではこれはサポートされていない)

PHP DocBlocker

Text Maker (High light)

Rainbow brackets

GitLens

GitBlame

Git History

Gitのコメントの良い方法

Conventional Commitsの仕様は、コミットメッセージのための軽量の規約です。 明示的なコミット履歴を作成するための簡単なルールを提供します、この規則に従うことで自動化ツールの導入を簡単にします。 この規約はSemVerと組み合わせることで、コミットメッセージへ機能、修正、重大な変更を入れることで、さらに詳細な説明を可能にします。
- Conventional commit (https://www.conventionalcommits.org/ja/)
Conventional commit

コード品質をチェック

  • PHP-CS-Fixer
  • PHPMD (日本語) PHPMD バグにつながりそうな怪しい ソースコードをチェックして教えてくれる phpmd。 コーディング時に必ず使うようにしておくとミスやバグが減るので是非使いましょう Screen Shot 2020-03-19 at 13.41.56.png

ボーナス

  • Octotree GitHubのエクスペリエンスを次のレベルに引き上げるブラウザー拡張機能。 このリポジトリには、Octotree Coreのソースコードが含まれています。 ローカルでビルドおよび実行して、無料版のすべての機能にアクセスできます。 または、当社のウェブサイトからフルバージョンをダウンロードできます。 Octotreeは、Chrome、Firefox、Opera、およびSafariをサポートしています。 octotree
  • このエントリーをはてなブックマークに追加
  • Qiitaで続きを読む

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 だけができる。

参考:Flight rules for Git

  • このエントリーをはてなブックマークに追加
  • Qiitaで続きを読む

【heroku】laravelをherokuでデプロイ(github 連携、MySQL使ってる)【heroku #とは】

heroku git でデプロイしてDBを使う方法はたくさん出てくるのですが、
herokuとgit hubを連携してデプロイするのに結構苦労したのでまとめ

間違ってたら教えてください、、、、

前提

  • githubにデプロイしたいアプリケーションがあること
  • herokuのアカウントがある

herokuに新しくappを作る

herokuにログインして、
右上のnewからcreate new appを選択します。

スクリーンショット 2020-03-18 23.36.35.png

そしたら、名前を入力する画面が出てくるので、好きな名前を入力してcreat appをポチッ!!!!!!

そうするとappができます。

githubと連携する

create appのボタンを押すとそのまま下の画面に行くと思うので、
DeployタブのDeployment methodのところにあるgithubを選択します。
スクリーンショット 2020-03-18 23.39.09.png

そうすると、下の方に連携する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ボタンがあるのでポチッと押すとデプロイされます

スクリーンショット 2020-03-19 0.20.44.png

多分みれる!!!!!!!

heroku gitじゃなくてgithub連携すると、piplinesが使えるからいいのかな、
(heroku gitでも使えるのかな)

何か抜けてたら教えてください、、、、、

  • このエントリーをはてなブックマークに追加
  • Qiitaで続きを読む