- 0.0.1. permission deniedでgit clone 出来ない問題は、大体SSHがGitHubに登録されていないから
- 0.0.2. 【Git】バージョン管理システムを導入・構築する【Bitbucket/Sourcetree編】
- 0.0.3. Git, fatal: The remote end hung up unexpectedly
- 0.0.4. Git addとcommitを一括で行う
- 0.0.5. Github Actionsでgitのブランチ運用ルール違反に気付きやすくする
- 0.0.6. 【用語メモ】Gitの基本操作と用語メモ
- 0.0.7. LT会の魚拓をとる
- 0.0.8. spase-checkoutコマンド メモ書き
- 0.0.9. capistranoでデプロイするときにgitのエラー
- 0.0.10. git cloneする際、pub keyを渡してアクセス許可してもらった後にする設定
- 0.0.11. 【図解付き】Gitコマンド一覧
- 0.0.12. 未経験からのエンジニア転職を目指す人の学習記録②
- 0.0.13. データ管理の提案 -削除は必要なのか? –
- 0.0.14. スマホに草を生やそう(GitHub)
- 0.0.15. 駆け出しエンジニア の学習記録 3日目Git,GitHub 後編
- 1. メモ
- 2. 使用したコマンド
- 3. メモ
- 4. 使用したコマンド
permission deniedでgit clone 出来ない問題は、大体SSHがGitHubに登録されていないから
#はじめに
git clone 出来ない問題は、開発メンバーが増えた際なんかによく発生するかと。。。“`console
git clone git@github.com/—.git
Cloning into ‘—‘…
Permission denied (publickey).
fatal: Could not read from remote repository.
Please make sure you have the correct access rights
and the repository exists.
“`大体これは公開鍵がGitHubに登録されていないからですね:sweat:
※公開鍵とは何ぞや?と言う話は置いといて、、、毎回手順とコマンドを忘れているので、ここに全て記録するとする!
#GitHubにssh接続するためには公開鍵をGitHubに登録する必要がある
##クライアントPC(Mac)に公開鍵と秘密鍵を作成
鍵を作るための階層(ディレクトリ)に移動します“`console
cd ~/.ssh/
“`色々と確認
【Git】バージョン管理システムを導入・構築する【Bitbucket/Sourcetree編】
#### 背景
ソースコードやドキュメント、画像ファイル等々、成果物や製作物のバージョン管理を行なうために、システムを導入・構築することがあると思います。
バージョン管理システムの導入から構築までについて、以下に記します。
※2020/11/29時点の情報です。先人たちの知恵をお借りするなどして解決できたことを、この場をお借りして感謝するとともに、大変恐縮ですが自分のメモとしても、こちらへまとめておきます。
## Bitbucket/Sourcetree編
Bitbucketとは:> [Bitbuckt](https://bitbucket.org/)は、MercurialまたはGitリビジョン管理システムを使用するソースコードおよび開発プロジェクト向けに、アトラシアン(Atlassian)が運営するWeb ベースのバージョン管理リポジトリホスティングサービスである。商用プランと無料アカウントの両方を提供している。
引用: [Wikipedia Bitbucketの項目](https://ja.wikipedia.org/wiki/Bitbucket)
Soutcetre
Git, fatal: The remote end hung up unexpectedly
“`
git gc –aggressive
git config –global http.postBuffer 524288000
“`
Git addとcommitを一括で行う
# –allオプションを使った省略
–allオプションによって、`git add .`を省略します。
–allは、ワークツリーで変更済みのファイルをcommitするオプションです。初回のみ管理対象を決めるために`git add`コマンド操作が必要になります。
“`
git commit -am “first”
“`
Github Actionsでgitのブランチ運用ルール違反に気付きやすくする
## はじめに
本番リリース用ブランチへのマージ前に、検証用ブランチにマージして動作確認するという運用ルールになっているケースは比較的多いかと思います。
しかし本番リリース用ブランチへのPR時に、本当に検証用ブランチにマージ済みかどうかレビューでチェックという運用だと見逃しが発生する可能性があるし面倒ですよね。
そんな不便を解消するために作ったアクションを紹介します。## 何が出来るの?
pull_requestイベントのアクションとして実行することで、指定ブランチにマージされていなかったらコメントで指摘してくれるようになります。
![Demo](https://i.gyazo.com/1a7f81b217002632e64268a3407777a1.png)
## 使い方
masterブランチへのPR時に必ずstagingブランチにマージされていることを検証したい場合の設定例。
“`yaml
name: Check merged
on:
pull_request:
branches:
– masterjobs:
check-stagi
【用語メモ】Gitの基本操作と用語メモ
#Gitとは
バージョン管理システム。グループ開発には必須。##リポジトリ
ファイルやディレクトリの__状態を保存する場所__のこと。###リモートリポジトリ
インターネット上にあるリポジトリのこと。複数人で開発するときにはここで管理する。###ローカルリポジトリ
名前の通りローカルのPCで使う。普段はこっちで開発し、それをリモートリポジトリにアップロードする。##ブランチ・マージ
###ブランチ
プロジェクトを分岐させること。__分岐した環境__のこと。###マージ
分岐させた__ブランチを統合__すること。##ワークツリー
__Gitで管理__されているファイルやディレクトリのこと。##インデックス
ローカルリポジトリにコミットする前段階の場所。ステージともよばれる。##基本コマンド
– __Git init__
リポジトリを__新規作成__するコマンド。コマンドを走らせたディレクトリ上に __.git__ というディレクトリが作成され、Gitで管理できるようになる。– __Git clone__
リポジトリを__複製__するコマンド。コマン
LT会の魚拓をとる
ツゴウニヨリ、バングミヲヘンコウシテオオクリシテイマス
Phoneappli AdventCalenderの1日目です!
去年参加表明をしないでひどい目にあったので今年はちゃんと登録するぞ!って思ってたら初日になりました。どうして。。。?
先日行った社内LT会でスライドほぼなしで喋ったので、折角なので文字で残しておこうと思います。ジ、ジュンビガマニアワナカッタワケジャナイヨ…
## なに喋ったの?
git雰囲気で使ってたからちょっと調べてみたよ
## こんな動きしてた
### HEAD
`.git/HEAD`
branch の場所を記憶しているポインタ### branch
`.git/refs/heads`
ある地点のコミットに名前をつけたポインタ![スクリーンショット 2020-12-01 19.37.12.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/548666/fcf24ac9-f486-7734-686c-85ffa67d4627.png)
##
spase-checkoutコマンド メモ書き
sparse-checkoutコマンドは Git 1.7 でリリースされているようですが、
「Git 2.26」で使うことをオススメします。
※ `sparse-checkout add` コマンドは **Git 2.26** で追加されています。## 初期化
“`
git sparse-checkout init
“`
– sparse-checkoutを有効にする
– 設定ファイルが無い場合、作成する (上書きはしない)設定ファイルの中身
“`
/*
!/*/
“`## 設定内容を確認する
“`
git sparse-checkout list
“`## 設定を更新する
“`
git sparse-checkout set AAA BBB CCC
“`
– sparse-checkoutを有効にする
– 設定ファイルが無かったら、コマンド引数の内容で作成する
– 既に設定ファイルがある場合、中身を上書きする設定ファイルの中身
“`
AAA
BBB
CCC
“`## 設定を追加する
“`
git sparse-checkout add
capistranoでデプロイするときにgitのエラー
よくあるデプロイコマンド
`$ cap staging deploy`
でエラー、あまり良く見たこと無いメッセージ、しかもついこの間までデプロイできてたのに…“` bash
00:07 git:update
01 git remote set-url origin git@bitbucket.org:hogehoge/hoge.git
✔ 01 hoge@foo.com 0.008s
02 git remote update –prune
02 Fetching origin
02 error: rev-list died of signal 11
02 error: rev-list died of signal 11
02 error: bitbucket.org:hogehoge/hoge.git did not send all necessary objects
02
02 error: Could not fetch origin
“`なんじゃこりゃ。エラー
git cloneする際、pub keyを渡してアクセス許可してもらった後にする設定
過去やったのにまた忘れてたのでメモです。
#githubにpub keyを登録した後にすること
**事象:**
先方のリポジトリに、パブリックキーでアクセス許可していただいたけれど、接続できなかった。
接続してリポジトリをcloneしたい#やったこと
~/.ssh/config というテキストファイルを作成し、以下の設定を行う。“`
$ cd ~/.ssh
$ touch config
“`作成された config ファルを編集。
“`
host xxxxxxxxxxxx.xxx
HostName xxxxxxxxxxxx.com
IdentityFile ~/.ssh/xxxxx(登録したキーのファイル名)
User git
“`無事つなげました?
【図解付き】Gitコマンド一覧
#はじめに
本記事を作成しようとした経緯等を簡単に記載します!
同じ境遇の方であればきっと役に立つかもしれません!##目的
・Git初学者に向けてイメージしやすいインプットをしてもらうため
・自分の覚えのため##背景
・Git/Github学習中に悩むのが
「今Git上でどんな状態にあるのか」
「コマンド入力後に今のディレクトリやブランチ上のデータがどう扱われているか」
が不明であることでした
・実務を想定してGit/Githubを使用していましたが、よく間違えてmasterブランチにdevelopブランチのデータをmergeしてしまったり、なぜか意図していないプルリクエストが出たりと散々でした。。。
・ちなみに疑似チーム開発を経験したことあるのですが、自分のGit知識のなさからチーム開発PJTを火の海にしてしまったことがあります。。。そんな背景もあり「課題の可視化」を実践してみようと試みた、というわけです。
##前提
では、本題に入る前に前提だけ頭に入れていただきたいです!
・使用頻度高いものから順に
・使用するソースコード管理サービスは”GitHub”
・以下レイアウ
未経験からのエンジニア転職を目指す人の学習記録②
こんにちは。
前回からの進捗状況を報告致します。
同様に現職の仕事もしながらプログラミング学習をしている方やこれから勉強を始める方への参考になれば幸いです。#①M1 MacBookAirを購入
表題の通り、M1 MacBookAirを購入しました。
GPU7コアでメモリだけ16GBにカスタマイズしたものです。ただやはり言われているようにDockerやVirtualBoxなどの仮想環境ツールは動作せず。
届いたのが22日の日曜日でしたがこの日と次の月曜日はほぼ開発環境を整えるのに時間を費やしました(笑)
色々試行錯誤して、HomeBrewなどダウンロードできたもののRails -s でローカルサーバーが立たず、、、徹夜でやってもうまくいかず一旦環境作りは諦めましたね、、、
#②Progate JavaScriptまで一周終了、ただ、、、
気を取り直してProgateを再開しましたが、RailsコースをVあたりでわけわからなくなったので中断してしまいました、、、アプリ版でちょこちょこやってたJavaScriptコースを終わらせる方にシフトし、ちょうど終了した形になります。
データ管理の提案 -削除は必要なのか? –
# 削除は必要なのか?
私はプログラムを組む時、Gitを使う。
家では[TimeMachine](https://ja.wikipedia.org/wiki/Time_Machine_(ソフトウェア))で1時間ごとにバックアップされている。
iCloudを介して、Mac, iPhone, Apple Watchで色々な物を共有している。どの機器が何時壊れても、データが消える恐れが無い。
とても安心だし、要らない物は心置きなく捨てられて、スッキリする。ユーザから見えなくする事は必要だが、システムとして「削除」する事は要らないのではないだろうか?
# 追記型ストレージの紹介
[Plan9](https://ja.wikipedia.org/wiki/Plan_9_from_Bell_Labs)のファイルサーバは WORM(Write Only Read Many)で、追記型光ディスクが主体だ。
HDDもメモリも単なるキャッシュとして動作する。
「追記型」と言う事は消えない。新しいファイルを古いファイルの手前に置いて、見えなくする方法を取っている。
新しいファイルを退ければ、古
スマホに草を生やそう(GitHub)
# 自己紹介
むちゃんです。
関西を拠点に活動しているフロントエンドエンジニアです。HAL大阪の2回生です? (2020.11.30現在)
イベントなど回っているので是非大阪辺りの方は会いましょう!!
# GitHubってなんぞや??
* Git = バージョン管理を行うためのモノ
* GitHub = それをツールにしたモノって思ってもらって大丈夫です。**この辺りを読んでもらえれば分かると思います。**
1. [知っておきたい知識](https://www.modis.jp/staffing/insight/column_30/)
2. [サルでもわかるGit講座](https://backlog.com/ja/git-tutorial/)## なんでGitHubを使うの?
1. 自身の書いたソースコードを全世界に公開することができます。
2. バージョンを管理できるので変更やバージョンアップに対応できるなど色々あります。
**※この辺りは色んな記事があるので是非調べてみてください。**
## ここからが本題
### 今回の完成イメージ
![](ht
駆け出しエンジニア の学習記録 3日目Git,GitHub 後編
メモ
git editor 登録できてなかったので↓参考に
https://qiita.com/matyahiko2831/items/8eb2eabbd94ed335218eエラー文
hint: Waiting for your editor to close the file..GitHubにpushしたコミットをリベースするのはNG
git push -f は絶対にNG使用したコマンド
・git rebase -i <コミットID>
↳ git rebase -i HEAD~3 3つ前からのコミットの順でrebaseしていく
・git tag tagを確認できる (いつのコミットかわかるのでバグの時に対応しやすい)
・git tag -a <タグ名> -m”<メッセージ>“vim操作
yy 一行コピー
dd 一行削除
esc コマンドモードに切り替え
:wq 保存して終了
【1分でできる】Gitコマンドを省略する方法
##はじめに
エイリアスを使ってGitのコマンドを省略する方法を紹介します。
設定自体は1分で終わります!
Gitの設定についても簡単に解説してます。##設定方法
さっそくですが、以下のコマンドを実行することでGitコマンドを省略することができます。“`
% git config –global alias.(設定したい省略系) (元のコマンド)
“`例えば、git commitをgit ciで実行したいなら
“`
% git config –global alias.ci commit
“`
という書き方になります。設定は以上です笑下記はよく使うので、設定しとくと作業がスムーズになります。
どのように省略するかはお好みで!|元のコマンド|省略系 |
|:-:|:-:|
|commit|ci|
|branch|br|
|status|st|
|checkout|co|
|switch|sw|
|restore|rs|設定方法だけ知りたい方はここでサヨナラしてもらって大丈夫です。。。
Gitを使い始めたばか
Gitでの頻出単語まとめ
Gitやコマンドラインでよく使われるコマンドをメモしていきます。
備忘録的に使っていただければと思います。「Branch」
リポジトリのコピーで、ブランチ上では元のファイルを触らずに新しいコードを書くなど、自由に変更や実験を試すことができる
親リポジトリはmasterブランチ、短期間だけ使う一時的なブランチをトピックブランチという。
現場で即使えるGitコマンド集
# はじめに
gitの操作ってどうやってますか?SourceTree?Git for windows?
やっぱりエンジニアならコマンドでしょ!
というわけでgitコマンドの紹介です。## git checkout {ブランチ名}
指定したブランチに移動してくれます。
`-b` オプションでブランチを新規で作成しつつ、ブランチを変更してくれます。## git checkout {ファイル名}
指定したファイルの変更(stageされてないもの)を消してくれます。
`.`で全ファイルの変更を消せます。気をつけてね!## git add {ファイル名}
指定したファイルの変更をstageにあげてくれます。
`.`で全ファイルです。## git clean -fd
untrackedなファイルを削除してくれます。
`-f`オプションで強制削除。
`-d`オプションでディレクトリも削除。
です。## git commit -m “{コメント}”
stageされているファイルをコメント付きでコミットしてくれます。
## git commit –amend
最新の
Gitのための.zshrcの設定
## きっかけ
パソコンが変わるたびに同じような`.zshrc`の設定を毎回してるのでメモの意味も込めて。
## 完成イメージ
## 実装
まず↓をコピーなりダウンロードなりして、`${HOME}/.zsh/git-prompt.sh`ここにおきます。
https://raw.githubusercontent.com/git/git/master/contrib/completion/git-prompt.sh“`sh:.zshrc
source ${HOME}/.zsh/git-prompt.shGIT_PS1_SHOWDIRTYSTATE=true
GIT_PS1_SHOWUNTRACKEDFILES=true
GIT_PS1_SHOWSTASHSTATE=true
GIT_PS1_SHOWUPST
駆け出しエンジニア の学習記録 2日目Git,GitHub 中編
メモ
git pullは一気にしてくれるから一見楽だが今自分のいるブランチに統合されてしまうので注意が必要
↳hogeブランチに居る masterブランチの情報をmasterブランチに統合したい →pull→hogeに統合されるブランチはただのポインタ 同時に加発できる
HEADはいま自分がいるブランチ
ブランチを分ける
開発自体はトピックブランチで作成するようにする
プルリクエスト手順
①Maseterブランチを最新に更新
②ブランチを作成
③ファイルを変更
④変更をコミット
⑤Githubへプッシュ
⑥プルリクエストを送る
⑦コードレビュー
⑧プルリクエストをマージ
⑨ブランチをマージ
GitHub Flowが基本使用したコマンド
・git commit –amend 直前のコミットをやり直す リモートリポジトリの分はやり直し×
・git remote -v リモートの情報を確認できる
・git remote add 名前 リポURL 新しく登録
・git fectch リモートリポからローカルリポに取り込む
・git merge