- 1. AWS Cloud9でGitのエディターを永続的にnanoからvimに変更する
- 2. 【Git】GitHubにプルリクエストを作成する迄の一連の流れ
- 3. リモートGitリポジトリにあるノートブックを用いてDatabricksジョブを実行する
- 4. VSCodeとgitを連携させてみるときに躓いた話。
- 5. 【GitHub】コミット同士の差分を確認する方法
- 6. Git pull コマンド
- 7. Git checkout コマンド
- 8. Git fetchコマンド
- 9. Git branch コマンド
- 10. Github(初期設定からリモートリポジトリにプッシュ)
- 11. あるコミットで何をしたかを見る
- 12. Gitトークンを作成してみた
- 13. Git cloneコマンド
- 14. Git cdコマンド
- 15. ECDSAを含むSSH鍵を複数管理する(SourceTree使用)
- 16. 追跡ブランチについて(自分用)
- 17. Git 基本操作
- 18. Git サブモジュールをクローン
- 19. リモート追跡ブランチから不要なブランチを削除する [git fetch –prune]
- 20. 履歴の中での違いを見る
AWS Cloud9でGitのエディターを永続的にnanoからvimに変更する
### 概要
– Cloud9でTerminalからgitでコンフリクト修正やrebaseする際に起動するエディタをnanoからvimに変更する方法です。
– git configが.bashrcに記載されており、通常のgitの設定で変更(git config ~)してもログインの度に元に戻ってしまうため、.bashrc側を修正する必要があります。### 設定方法
– .bashrcの20行目あたりの以下部分を修正
“`bash:.bashrc
$ vim ~/.bashrc~中略~
# modifications needed only in interactive mode
if [ “$PS1” != “” ]; then
# Set default editor for git
#git config –global core.editor nano ## <--- Comment out git config --global core.editor 'vim -c "set fenc
【Git】GitHubにプルリクエストを作成する迄の一連の流れ
## はじめに
業務でGit/GitHubをよく使用することもあり、GitHubへのプルリクエスト作成までの一連の流れを記事にしてみたいと思います。## 前提
– GitHubアカウント作成済み
– MacBookにGitをインストール済み
– Gitの初期設定も完了済み
– 作業用のリポジトリを作成済み## 作業フロー
![flow.drawio.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/636476/53409e9e-ea67-6a76-cdf3-58aeb0af2d3e.png)
Gitのデータ構造(ワークツリーやインデックス等)については、以下の記事をご覧下さい。
(昔書いていた記事になります。)https://qiita.com/masato930/items/8e88905063f7fd1010d9
## 作業手順
### ①GitHubからコードをclone
– 事前にローカルにコードを配置するディレクトリを作成する。
“`zsh
mkdir ~/Code
リモートGitリポジトリにあるノートブックを用いてDatabricksジョブを実行する
[Run jobs using notebooks in a remote Git repository \| Databricks on AWS](https://docs.databricks.com/repos/jobs-remote-notebook.html) [2022/5/10時点]の翻訳です。
:::note warn
本書は抄訳であり内容の正確性を保証するものではありません。正確な内容に関しては原文を参照ください。
::::::note info
**プレビュー**
本機能は[パブリックプレビュー](https://docs.databricks.com/release-notes/release-types.html)です。
:::リモートGitリポジトリに格納されているノートブックを用いて、Databricksでどのように[ジョブ](https://qiita.com/taka_yayoi/items/b3275a1983c51a8bbe1a)を実行するのかを学びます。
# なぜリモートリポジトリのソースからジョブを実行するのか?
この機能を用いるこ
VSCodeとgitを連携させてみるときに躓いた話。
Gitの初心者の方がVScodeを用いてgitHubとの連携に躓いていたので
一緒に解決した時の健忘録になります。# VSCodeとgitの連携(ソフト側の設定)
環境はWindows。
https://gitforwindows.org/
まずはGitをDL。
VScodeもDLします。VScodeのターミナルでgitのコマンドいれてもなんもならないよー!とのことで
“`
git : 用語 ‘git’ は、コマンドレット、関数、スクリプト ファイル、または操作可能なプログラムの名前として認識されません。名前が正し場合はその
発生場所 行:1 文字:1
+ git congfig
+ ~~~
+ CategoryInfo : ObjectNotFound: (git:String) [], CommandNotFoundException
+ FullyQualifiedErrorId : CommandNotFoundException
“`
このようなエラーが出たので、Vscodeにgitのpathをとおしてやります。
(VSC
【GitHub】コミット同士の差分を確認する方法
# コミット同士の差分を確認するには
~~~
https://github.com/ユーザ名/リポジトリ名/compare/古いコミットID…新しいコミットID
~~~上記URLを叩くだけです。
割と使いたいタイミングがあるはずなのに、ちょっと調べないと出てこなかったのでメモ代わりに記事に起こしました。
Git pull コマンド
## コマンドの基本
“`
$ git pull [リポジトリ] [ブランチ]
“`
他のリポジトリ(リモート・リポジトリなど)のデータを取得し、ローカルのブランチに統合するリモートリポジトリ「origin」にあるブランチ「master」が他の人によって更新され、「ローカルより先に進んでいる」状態において、最新の master ブランチの履歴をローカルの master に取り込みたいときに`$ git pull origin master` を実行する。
現在ローカルの master ブランチをチェックアウトしている状態であることを確認してから、下記の git pull コマンドを実行
“`
$ git checkout master
$ git pull origin master
“`
基本は`git pull`だけで実行できることが多い(パラメーターは省略可能)※pullは「引っ張る」という意味
## git pull の取り消し
**git pull の取り消し操作について**は以下の記事が詳しい
参考記事:[https://www-creators
Git checkout コマンド
## 基本コマンド
“`
$ git checkout ブランチ名
“`
ワークツリーを指定したブランチに切り替える
“`
$ git checkout master
“`
ワークツリーをmasterブランチに切り替える## checkout関連オプション
### 「-q」
「- -quiet」と同じ意味
メッセージを表示せずに実行する### 「 -p」
「- – patch」と同じ意味
一つ一つの差分を確認しながらチェックアウトを進める
Git fetchコマンド
## コマンドの基本
“`
$ git fetch [リポジトリ]
“`
**ローカルからリモート・リポジトリの最新の情報を見れるコマンド**また、必要に応じてリモート・リポジトリとマージすることもできる。
ただし、コマンドは他のリポジトリのデータを取得するだけで、ローカルで作業しているファイルを書き換えたりマージしたりするようなことはない。## fetch関連オプション
**「-p」** **「 –prune」****リモートには存在しているが、ローカルに存在しないブランチをすべて削除する**
※pruneは「取り除く、切り取る」という意味
Git branch コマンド
## そもそもbranchとは
ブランチは直訳すると「木の枝、分岐」。
現行のバージョンのプロジェクトから枝分かれさせて他の作業を行うときに使われる。ブランチを追加することを、**ブランチを切る**とよく言う。
分岐したブランチの内容は他のブランチに影響を与えず、複数人が同時平行で作業を行うことができる。## ブランチの一覧を表示するオプションたち
“`
$ git branch -r
“`
リモートリポジトリのブランチを一覧表示“`
$ git branch -a
“`
ローカルリポジトリと、リモートリポジトリのブランチを一覧表示“`
$ git branch -vv
“`
ローカルリポジトリのブランチが、リモートリポジトリのどのブランチを追跡しているか確認できる## ブランチの削除
削除するには「-d」オプションを使う
“`
$ git branch -d [ブランチ名]
“`### その他
**iterm**の設定で常時今いるブランチを表示させる設定もできる。
こちらの設定を行うことで、git branchコマンドを常に叩く必要がなくなる
Github(初期設定からリモートリポジトリにプッシュ)
# Github(初期設定)
・まずはGithubに新規登録する(https://github.co.jp/)
・ターミナルにて以下のコマンドを実行する
“`
$ git config –global user.name$ git config –global user.email
“`
・Githubで使うエディタを登録(今回はVScodeを使用)
“`
$ git config –global core.editor ‘code –wait’
“`
・作業ディレクトリに移動し、以下のコマンドを実行する
“`
$ git init (ローカルリポジトリを作成する)
“`・以下のコマンドを実行し、現在のローカルリポジトリにリモートのリポジトリを追加する。(現在のローカルリポジトリに、「origin」という名前で、《GithubのURL》をリモートリポジトリとして追加する)
“`
$ git remote add origin
“`
# ワークツリーからリ
あるコミットで何をしたかを見る
# “`git show“`
直近のコミット(HEADが指しているコミット)の情報を表示する。
“`
********@mbp training % git show
commit ************************* (HEAD -> master)
Author: ******* <******************>
Date: Sun Jun 12 16:39:42 2022 +0900演習課題 hello.txtを新しくコミットする
diff –git a/hello.txt b/hello.txt
new file mode 100644
index 0000000..10ddd6d
— /dev/null
+++ b/hello.txt
@@ -0,0 +1 @@
+Hello!
“`
直近のコミット名、hello.txtのファイルを作成,Hello!の追加されたことがわかる。“`
*************@mbp training % git show HEAD^
commit ****************
A
Gitトークンを作成してみた
# はじめに
git トークンを作成してみたので記事を投稿します。## トークンの作成
__① 任意のページの右上で、プロフィール画像をクリックします。
続いてSettings(設定)をクリック__![ss.jpg](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2724196/f10f5fc7-4d85-f884-4136-634d137e03c8.jpeg)
__② <>Developer settingsをクリックします__
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2724196/c66644b6-b83e-b973-bd68-8032a919fd0b.png)__③ 左のサイドバーでPersonal access tokens(個人アクセストークン)をクリックする。__
![image.png](https://qiita-image-store.s3.ap-northeast-1.a
Git cloneコマンド
## 基本形
~~~
$ git clone リポジトリのURL
~~~
Gitのリポジトリを複製(コピー)することができる。
リポジトリ(repository)を直訳すると「倉庫」という意味。
Git cdコマンド
## 基本形
~~~
$ cd 移動したいディレクトリ先
~~~
cdコマンドは「ディレクトリを移動するためのコマンド」
`change directory`の略## cdコマンドのオプション
### -Lオプション
~~~
$ cd -L 移動先
~~~
移動先のディレクトリがシンボリックリンクだった場合、シンボリックリンクに移動するオプション
※シンボリックリンクとは簡単に言うとショートカットのようなもの
詳しくは[こちらの記事](https://zenn.dev/kunosu/articles/f2a459431c3a4dfc48cb)で解説されている### -Pオプション
~~~
$ cd -P 移動先
~~~
移動先がシンボリックリンクだったらシンボリックリンクのターゲットに飛ぶためのオプション## cd関連コマンド
### lsコマンド
~~~
$ ls
~~~
ディレクトリの中のディレクトリやファイルを一覧表示
`list directory contents`の略
(ディレクトリに存在するコンテンツをリスト化するという意味。)
~~~
$ ls -a
ECDSAを含むSSH鍵を複数管理する(SourceTree使用)
## はじめに
今までGithubに使用するSSHキーはRSAしか使用したことがありませんでした。つい最近ECDSAで生成する機会があったので、記載しておこうと思います。
下記のような方には少し参考になると思います。
`・SourceTreeを使っている`
`・イマイチ鍵について分かっていない`
`・RSA以外に使用してみたい`
`・ターミナル操作が苦手`## そもそもECDSAとはなんぞや
SSHの公開鍵暗号には「RSA」「DSA」「ECDSA」「EdDSA」という種類があります。
その中の`ECDSA`は楕円曲線DSAとも呼ばれビットコインやイーサリアムの文脈では特にトランザクションの署名に使われます。
なかなか難しい内容なので詳しく知りたい方は下記をチラ見してくださいw
https://zoom-blc.com/what-is-ecdsa## SourceTreeでSSHキーを登録する
※既に登録済みの方はスルーで大丈夫です
– 環境設定→アカウント→追加
![スクリーンショット 2022-06-27 16.30.05.png](https://qii
追跡ブランチについて(自分用)
https://qiita.com/uasi/items/69368c17c79e99aaddbf
Git 基本操作
## クローン
“`sh:commond
$ git clone {GitリポジトリのURL}
“`## ローカルブランチ作成
“`sh:commond
$ git branch {ローカルブランチ名称}
$ git branch
“`
## リモートブランチ作成
“`sh:commond
$ git checkout {プッシュするローカルブランチ名称}
$ git branch
$ git push -u {リモートリポジトリ名称} {リモートブランチ名称}
# ex) git push -u origin develop
“`
## コミット
“`sh:commond
$ git add {コミットするファイル名称}
# ex) git add .
$ git commit -m “{コメント}”
“`
## プッシュ
“`sh:commond
$ git push {リモートリポジトリ名称} {リモートブランチ名称}
# ex) git push origin develop
“`
Git サブモジュールをクローン
## サブモジュールと一緒にクローン
Gitリポジトリをクローンする時に、そのGitリポジトリのサブモジュールも一緒にクローンするために使用するコマンド。
“`sh:commond
$ git clone –recursive {GitリポジトリのURL}
“`## サブモジュールをクローン
Gitリポジトリをクローンし、その後サブモジュールをクローンするために使用するコマンド。
“`sh:commond
$ git submodule update –init
“`
上記が権限問題等でクローン出来ない場合、下記で解消される可能性がある
“`sh:commond
$ git pull –recurse-submodules
$ git submodule foreach –recursive git reset –hard
“`
リモート追跡ブランチから不要なブランチを削除する [git fetch –prune]
## やりたいこと
例えば、`develop`ブランチにマージ済みのブランチ`feature/add-feature`がGitHub上にあるとする。マージ済みなので、ブランチ`feature/add-feature`をリモートから削除した。
ただ、リモート追跡ブランチには残っている。もう不要なので消したい。
“`bash:bash
git branch -a
* develop
main
remotes/origin/develop
remotes/origin/main
remotes/origin/feature/add-feature // こいつ
“`## git fetch –pruneを使う
Gitコマンド`git fetch –prune`はリモートに存在しなくなったブランチを
リモート追跡ブランチから削除してくれる。無事削除された。
履歴の中での違いを見る
# 履歴の中での違いを見る
## “`git diff コミット1 コミット2“`
2つのコミットの差を表示する。
コミットのハッシュ値やHEADで指定するコミットのハッシュ値を調べるには“`git log“`で調べる。
“`
**********@mbp training % git log
commit コミットのハッシュ値(HEAD -> master)
Author: mhyodo
Date: Sun Jun 12 16:39:42 2022 +0900演習課題 hello.txtを新しくコミットする
commit ************************
Author: mhyodo
Date: Sun Jun 12 16:37:50 2022 +0900演習課題 RAEDME.mdを修正
commit ************************
Author: mhyodo