- 投稿日:2020-05-25T23:05:38+09:00
Githubへの最初のpushまで(コマンド)
ローカルで作ったプロジェクトを最初にプッシュするまで
1、Githubでリポジトリの作成
2、初期化
cd で対象のフォルダ下まで移動して、下記
$ git init # 初期化しました。と表示されます。 Reinitialized existing Git repository in /Users/hogehoge3、待機用リポジトリに追加
同じく対象のフィルダ下で。
$ git add -A4、コミット
$ git commit -m "first commmit"5、プッシュ
同じく対象のフィルダ下で下記の通りプッシュ(URLの箇所は変更してください)
$ git remote add origin git@github.com:kaijuayako/sample.git $ git push -u origin master完了!
- 投稿日:2020-05-25T23:05:38+09:00
コマンドで、Githubへ最初のpushを行うまで
ローカルで作ったプロジェクトを最初にプッシュするまで
1、Githubでリポジトリの作成
2、初期化
cd で対象のフォルダ下まで移動して、下記
$ git init # 初期化しました。と表示されます。 Reinitialized existing Git repository in /Users/hogehoge3、待機用リポジトリに追加
同じく対象のフィルダ下で。
$ git add -A4、コミット
$ git commit -m "first commmit"5、プッシュ
同じく対象のフィルダ下で下記の通りプッシュ(URLの箇所は変更してください)
$ git remote add origin git@github.com:kaijuayako/sample.git $ git push -u origin master完了!
- 投稿日:2020-05-25T23:05:04+09:00
ルークよ git push --force を使わないでおくれ… git push --force-with-lease を使っておくれ…
まとめ
git push --force
ではなくgit push --force-with-lease
を使おう--force-with-lease
オプション付き push を alias 登録しておくと便利そもそも git push --force とは
git push --force
は強制pushのためのコマンド。いったんリモートにpushしたコミットを なかったことにする 場合に使われる。たとえば、次のような場合:
- 間違ってpushされたコミットを、リモートのlogから消し去る場合
- GitHub Actions動作確認用にpushされた実験的なコミットを、あとで消す場合
--force-with-lease を使おう
過ちを正すため、時には力も必要だが、大きすぎる力には危険が伴う。
git push --force
は、気づかないうちに他人のコミットを巻き込んでしまう可能性がある。自分が fetch したあとに、誰かがコミットを push している場合が、そうだ。そのとき、このコマンドは誰かのコミットを闇に葬ってしまうのだ。そこで
git push --force-with-lease
を使う。このオプションは、fetch 後にブランチが更新されている場合、force-pushを失敗させる。これで、うっかり他人のコミットを消し去ってしまう心配が減るだろう。以下のようにエイリアスを設定しておくと、オプションを覚える必要がなくなって、便利:
git config --global alias.pushf “push --force-with-lease”参考
追記 (2020-05-26 22:37)
ほぼ同内容のQiita記事がすでにありました:
- 投稿日:2020-05-25T18:29:05+09:00
駆け出しエンジニア向けに個人開発で使える最低限のgitコマンドをまとめました
駆け出しエンジニアはとりあえずはこれだけ押さえておけば問題ありません
個人開発で実際に使用頻度の高いコマンドだけを抽出しました
ローカルにリポジトリを作成しリモートにpush
$ git init $ git add . $ git commit -m "Initial commit" $ git remote add origin https://github.com/XXXX/XXXXXX.git $ git push -u origin masterリモートからクローンしてプロジェクトに備える
$ git clone https://github.com/XXXX/XXXXXX.git リモートから変更を取得 $ git pull or $ git fetch $ git merge origin/masterローカルの変更をリモートに送信
$ git add . 指定したファイルをインデックスに登録 $ git commit -m "コミット内容" コミット $ git status 指定したファイルの変更を確認 $ git push リモートにプッシュしてログを保存他にもコマンドは存在していますが、
個人での開発or2人までの開発ならこの内容で十分に間に合います
数は多くないですが、全てを覚えようとはせず必要なタイミングで
ターミナルに打ち込んで感覚で覚えていくことをおすすめします
以上です
参考記事
初学者向けgitコマンドまとめ
- 投稿日:2020-05-25T15:25:20+09:00
Node.js, npm, yarn, gitの環境構築+コマンド解説
EC2にフロントエンド開発ができる環境構築をしていくぞ〜〜
あわせてコマンドが色々わからなかったので解説もしてみる
ところどころ間違えてそうなので直してほしい別にAWSじゃなくても、ローカルPCに環境構築するのでも同じだと後から気が付きました
なので、ローカルに環境構築したい人の参考にもなるはず環境: AWS Linux
(WindowsとかMacOSの人はこの記事は参考にならないよ)コメント大歓迎
EC2インスタンスの立ち上げ & 接続
インスタンスを作ってなかったらこっちの記事の1-4を見てね
ここから先は、ターミナルからインスタンスにSSHで接続してる前提でいきますgitのインストール
sudo yum install git
yum
はAWS Linuxのパッケージマネージャーで、macOSのbrew
みたいなやつ
Linux系だとapt-get
とかもあるけど、このインスタンスではyum
を使ってパッケージをインストールするNode.js & npm のインストール
AWSの公式の手順でやっていく
流れ: nvmインストール Nodeインストール(npmも一緒に入る)
curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.34.0/install.sh | bashnvmのバージョンに応じて
v0.34.0
のとこは変えてね
執筆時点だと、nvmの最新バージョンはv0.35.3だったんだけど、AWSのdocsがv0.34.0だったので、とりあえずそっちに従ってみた
curl
: ネットワーク上でデータを転送するためのコマンド (Wikipediaより翻訳)-o
オプション: 出力先を指定する-
引数: stdout (標準出力)を意味する引数(argument)|
(「パイプ」と読む): パイプの前にあるやつをパイプの後にあるやつに流す。つまりパイプbash
: このターミナル/シェル/黒い画面のことを指す
-o
の使い方は、例えばcurl -o "filename.txt" http://www.hoge.com/hogehoge.sh
だったら、hogehoge.sh
をfilename.txt
に出力するこのコマンドでやってることは、
nvmのインスールスクリプトをインストールするためのシェルスクリプトをhttps://raw.githubusercontent.com/nvm-sh/nvm/v0.34.0/install.sh
からダウンロードする
シェルの標準出力に出す
nvm.sh
が入る. ~/.nvm/nvm.sh
nvm.sh
が入ったのでこのシェルスクリプトを実行して、nvmをインストール
.
はsource
と同じで、シェルスクリプトを実行するコマンド
ここでは~/.nvm/nvm.sh
にあるファイルを実行しているnvm install nodenvmでnodeをインストールする
(npmとかyarnと同じ構文)npm i -g yarnnpmが入ったので、npmを使ってyarnを入れる
※yarn公式では非推奨のやり方。今回は力尽きたのでこの方法でやったVSCodeで開発
Remote-SSHプラグインを入れる
VSCodeのExtensionsから探すか、[ここ]((https://code.visualstudio.com/docs/remote/ssh)からダウンロードするSSH接続は公式に書いてあるとおりにやります
- F1キーを押して Remote-SSH: Add New SSH Hostを選択
ssh -i <.pemファイルへのパス> ec2-user@<インスタンスのIP>
を入力- config fileを聞かれるので、適当に選ぶ(わたしは/etc/ssh/ssh_configがドロップダウンの中にあったので、それにした)
- 左のタブのファイル > 「Open Folder」ボタンで、リモートのフォルダを開く
4でリモートじゃなくてローカルのフォルダが開いちゃったら、ローカルに接続したままなので接続しなおす(F1キー Remote-SSH: Connect to Host)
参考までのスクショたち
SSH接続してると、左下に接続先が表示される
おわり
あとは、
git clone
とかでソースコードをリモートにおいて、リモートにSSHしたVSCodeで開発すればokおまけ
yarn
しようとしたらこんなエラーが出たmake: g++: コマンドが見つかりませんでしたくわしく調べなかったけど、C++コンパイラがインストールされてなかったせいらしい
この記事を参考にこのコマンドを叩いたら治ったsudo yum -y install gcc-c++
- 投稿日:2020-05-25T15:25:20+09:00
AWSのEC2インスタンスにNode.js, npm, yarn, gitを入れる
EC2にフロントエンド開発ができる環境構築をしていくぞ〜〜
あわせてコマンドが色々わからなかったので解説もしてみる
ところどころ間違えてそうなので直してほしい別にAWSじゃなくても、ローカルPCに環境構築するのでも同じだと後から気が付きました
なので、ローカルに環境構築したい人の参考にもなるはずコメント大歓迎
EC2インスタンスの立ち上げ & 接続
インスタンスを作ってなかったらこっちの記事の1-4を見てね
ここから先は、ターミナルからインスタンスにSSHで接続してる前提でいきますgitのインストール
sudo yum install git
yum
はAWS Linuxのパッケージマネージャーで、macOSのbrew
みたいなやつ
Linux系だとapt-get
とかもあるけど、このインスタンスではyum
を使ってパッケージをインストールするNode.js & npm のインストール
AWSの公式の手順でやっていく
流れ: nvmインストール Nodeインストール(npmも一緒に入る)
curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.34.0/install.sh | bashnvmのバージョンに応じて
v0.34.0
のとこは変えてね
執筆時点だと、nvmの最新バージョンはv0.35.3だったんだけど、AWSのdocsがv0.34.0だったので、とりあえずそっちに従ってみた
curl
: ネットワーク上でデータを転送するためのコマンド (Wikipediaより翻訳)-o
オプション: 出力先を指定する-
引数: stdout (標準出力)を意味する引数(argument)|
(「パイプ」と読む): パイプの前にあるやつをパイプの後にあるやつに流す。つまりパイプbash
: このターミナル/シェル/黒い画面のことを指す
-o
の使い方は、例えばcurl -o "filename.txt" http://www.hoge.com/hogehoge.sh
だったら、hogehoge.sh
をfilename.txt
に出力するこのコマンドでやってることは、
nvmのインスールスクリプトをインストールするためのシェルスクリプトをhttps://raw.githubusercontent.com/nvm-sh/nvm/v0.34.0/install.sh
からダウンロードする
シェルの標準出力に出す
nvm.sh
が入る. ~/.nvm/nvm.sh
nvm.sh
が入ったのでこのシェルスクリプトを実行して、nvmをインストール
.
はsource
と同じで、シェルスクリプトを実行するコマンド
ここでは~/.nvm/nvm.sh
にあるファイルを実行しているnvm install nodenvmでnodeをインストールする
(npmとかyarnと同じ構文)npm i -g yarnnpmが入ったので、npmを使ってyarnを入れる
※yarn公式では非推奨のやり方。今回は力尽きたのでこの方法でやったVSCodeで開発
Remote-SSHプラグインを入れる
VSCodeのExtensionsから探すか、[ここ]((https://code.visualstudio.com/docs/remote/ssh)からダウンロードするSSH接続は公式に書いてあるとおりにやります
- F1キーを押して Remote-SSH: Add New SSH Hostを選択
ssh -i <.pemファイルへのパス> ec2-user@<インスタンスのIP>
を入力- config fileを聞かれるので、適当に選ぶ(わたしは/etc/ssh/ssh_configがドロップダウンの中にあったので、それにした)
- 左のタブのファイル > 「Open Folder」ボタンで、リモートのフォルダを開く
4でリモートじゃなくてローカルのフォルダが開いちゃったら、ローカルに接続したままなので接続しなおす(F1キー Remote-SSH: Connect to Host)
参考までのスクショたち
SSH接続してると、左下に接続先が表示される
おわり
あとは、
git clone
とかでソースコードをリモートにおいて、リモートにSSHしたVSCodeで開発すればokおまけ
yarn
しようとしたらこんなエラーが出たmake: g++: コマンドが見つかりませんでしたくわしく調べなかったけど、C++コンパイラがインストールされてなかったせいらしい
この記事を参考にこのコマンドを叩いたら治ったsudo yum -y install gcc-c++
- 投稿日:2020-05-25T09:53:29+09:00
git merge ブランチ名の際conflictエラーの対処法
git statusで変更されたファイルを確認する。ローカル環境で先頭のブランチ(HEAD)のコードとブランチを切ったコードが表示されているので手作業で直す。
- 投稿日:2020-05-25T01:10:44+09:00
開発中に使用するGitコマンド
はじめに
初めてGitを使いチーム開発をすることになり、使い方を検索しました。
Gitの情報はいっぱいありましたが、自分でリポジトリを作成して、
コミットするという内容が多く、実際に業務で使用するイメージがつかめませんでした。
今回は雑食系エンジニアの勝又健太さんが YoutubeでGitの使い方を解説していたので、
その動画を参考にして、以下にコマンドの使い方と流れをまとめました。https://www.youtube.com/watch?v=wlY8YG-eB8E
下記の方法で実際にリモートリポジトリからクローンして、プルリクエスト、レビュー、
マージまで行うことが出来ました。開発の流れ
1.リモートリポジトリからclone
2.ローカルブランチの作成
3.開発作業
4.編集したファイルの差分を確認
5.ステージング環境へ追加
6.ローカルブランチにコミット
7.リモートリポジトリへpush
8.プルリクエストの作成
9.レビューの結果を反映
10.ローカルブランチを最新化1.リモートリポジトリからclone
git clone https://github.com/XXXXX2.ローカルブランチの作成
今回は「command_register_user」というブランチを作成して
作業していく想定で説明します。ブランチを作成する
git branch command_register_userブランチの命名法
プロジェクトの命名規約があればそれに従う。追加 feature/command_register_user
修正 fix/command_register_usermasterから作成したブランチに移動
git checkout command_register_user3.開発作業
issueの内容に沿って開発をする。
4.編集したファイルの差分を確認
変更したファイルの一覧を確認
git status変更したファイルの差分を確認
git diff5.ステージング環境へ追加
編集および追加したファイルをステージング環境へ追加する。
-Aとつけるとファイル全てを選択します。
指定したファイルのみaddしたければファイル名を指定します。git add -A6.ローカルブランチにコミット
コミット
""内にコミットメッセージを記載する。
チームの方針に従い、英語や日本語でコメントを書く。git commit -m "コメント"7.リモートリポジトリへpush
GitHubのリモートリポジトリにpush
git push origin HEAD HEADの部分はリモートリポジトリのURLでも可8.プルリクエストの作成
プルリクエストの作成
Githubのページから「New pull requests」ボタンを押下
close #issue番号9.レビューの結果を反映
レビューで指摘があった場合は、修正して、再度4~7の操作を実行する。
10.ローカルブランチを最新化
masterブランチの更新
git checkout master git pull origin master