- 投稿日:2020-05-17T22:48:53+09:00
GitHub Desktopに頼らずGitを使う
はじめに
GitHub Desktopに頼りすぎて、ターミナルからのGitの操作方法を失念しつつある人のための記事です。
Git自体をほぼ使ったことが無い人は私の過去記事を読んでいただき、それでも不明点があれば他記事も参考にしてみてください。・私が過去に書いた記事
Githubでのプログラム修正の流れ その1
Githubでのプログラム修正の流れ その2
Githubでのプログラム修正の流れ その3リモートリポジトリを作る
まずはGitHubにログインしましょう。
そうすると画面左側にNEWボタンがあるのでクリックします。
リポジトリ名を入力し、Create repositoryボタンをクリックします。
これでリモートリポジトリは完成です。
この時リポジトリを非公開にしたい場合は、画面中央部の設定からPublicではなくPlivateにしておきましょう。
リモートリポジトリの作成が終わったら以下のような画面に遷移しますので、赤枠で囲ったボタンを押下しURLをコピーします。
ローカルでの作業
ここからはローカルでの作業です。今回の記事用に新しくリポジトリを作ります。
まずはディレクトリを作成。% mkdir test_app作成したディレクトリに移動。
% cd test_app以下のコマンドを実行することでtest_appをGitで管理できるようにします。
% git init Initialized empty Git repository in /Users/username/projects/test_app/.git/続いてtouchコマンドでテスト用のファイルを作ります。
% touch test.htmlそれでは、statusコマンドで変更や追加があったファイルを確認してみましょう。
先ほど作成したtest.htmlが表示されているので問題なさそうです。% git status On branch master No commits yet Untracked files: (use "git add <file>..." to include in what will be committed) test.htmladdコマンドでtest.htmlをインデックス※に追加します。
※インデックスとはリモートリポジトリに反映するファイルを置いておく場所のことです。これにより、コミットしたいファイルごとにインデックスに追加してリモートリポジトリに反映できるようになります。
インデックスの概念が無かった場合を考えると、A機能とB機能を追加した際にワーキングツリーから2つの機能の修正がリモートリポジトリに反映されることなります。レビュアーの負担や現場のルールなどで1コミットにつき1機能にすることにした場合、インデックスという場所にコミットするファイルを指定して置いておいたら便利なのです。% git add test.htmlではコミットしましょう。-mオプションをつけることでコメントを記述できます。
% git commit -m "test commit"ローカルリポジトリとリモートリポジトリを紐づける
前述したリモートリポジトリの作成の際に、リポジトリのURLが発行されていたと思います。まずはそれをクリップボードにコピーしましょう。
以下のコマンドをローカルリポジトリ内で実行すれば、ローカルリポジトリと紐づけるリモートリポジトリを設定できます。% git remote add origin コピーしたURLローカルリポジトリの修正内容をリモートリポジトリに反映
では以下のコマンドでリモートリポジトリにプッシュしましょう。
% git push origin masterコマンドの実行後、今回作成したtest.htmlがアップされていることをGitHub上で確認できました!
以上で今回の記事は終了です。
- 投稿日:2020-05-17T21:51:53+09:00
【学習メモ】Git、GitHubの基礎(1)
0. 目標
Gitの基本的なワークフロー、コマンドの内容や機能を理解する
1. Gitの基本的なワークフロー
変更をコミットする流れ
1.ファイルの変更をステージングエリア(≒控え室)へ追加
2.ローカルリポジトリにcommit(委託する)
3.リモートリポジトリにpushする2.ステージングエリアへの移動
ステージングエリア:複数ファイルを変更する際に、コミットするファイルを選択する
ステージングエリアへの移動は、、、
$ git add [ ファイル名 ] $ git add. (ファイル全体を移動させる)3.ローカルリポジトリへCommit
ステージングエリアへの追加が終わったら、Commitする
$ git commit $ git commit -vすると、こんな感じでVimエディタというCommitを編集するエディタが表示される
■ ← #入力画面 # Please enter the commit message for your changes. Lines starting # with '#' will be ignored, and an empty message aborts the commit. # # On branch master # Your branch is ahead of 'origin/master' by 5 commits. # (use "git push" to publish your local commits) # # Changes to be committed: # modified: first.txt入力方法は、次の通り
<Vimエディタの使い方>
①ターミナルでgit commitを入力する
②Vimエディタが立ち上がる
③半角英数字に入力を切り替える
④「i」を入力する(挿入モードになる)
⑤コミットメッセージを入力する
⑥「esc」を押す(ノーマルモードに戻る)
⑦「:wq」を入力してエンターを押す
(commitメッセージを保存してエディタを閉じる)※Vimエディタ(⑤)の書き方のポイント
1行目:変更内容の要約
2行目:空行(空白)
3行目:変更理由(何のため?背景は?)⑦が終わると、こんな感じの履歴が残り、元のターミナルに戻る
[master ***] ***を〜〜(変更内容) 1 file changed, 2 insertions(+), 1 deletion(-) ※一例<その他補足>
最初に変更する時は、「initial commit」と書くのが慣例4.GitHubへのプッシュ
GitHubへプッシュするためには、GitHub上でリモートリポジトリを用意する必要がある
流れ
1.ブラウザでGitHubを開き「NewRepository」をクリック
2.Repository nameを設定
3.Public を選択
4.Create Repositoryを押す
5.push用のコマンドがブラウザ表示されるので、ターミナルに実行5.の様子 git remote add origin ... (イメージ) 6.の様子 git push -u origin master ...(イメージ)続きは明日以降投稿予定
参考
1.Railsチュートリアル Git
https://railstutorial.jp/chapters/beginning?version=5.1#sec-version_control2.udemy講座
https://www.udemy.com/course/intro_git/learn/lecture/6449716#content
- 投稿日:2020-05-17T18:59:37+09:00
100日後にエンジニアになるキミ - 58日目 - Git - Gitの使い方4
昨日までのはこちら
100日後にエンジニアになるキミ - 42日目 - クラウド - クラウドサービスについて
100日後にエンジニアになるキミ - 36日目 - データベース - データベースについて
100日後にエンジニアになるキミ - 24日目 - Python - Python言語の基礎1
100日後にエンジニアになるキミ - 18日目 - Javascript - JavaScriptの基礎1
100日後にエンジニアになるキミ - 14日目 - CSS - CSSの基礎1
100日後にエンジニアになるキミ - 6日目 - HTML - HTMLの基礎1
100日後にエンジニアになるキミ - 53日目 - Git - Gitについて
最近の開発ではGitが欠かせません。
本日はGitの使い方の続きです。昨日の講座はこちら
100日後にエンジニアになるキミ - 57日目 - Git - Gitの使い方3更新したくないファイルの除外(.gitignore)
ローカルに保存したパスワードや設定ファイルなど
リモート側に送りたく無いファイル群があると思います。git管理をしたく無いファイルを
gitignore
で除外することが出来ます。まず、ディレクトリ内で.gitignoreというファイルを作成します。
touch .gitignoreこの作成したファイルは通常見ることが出来ない隠しファイルです。
作成したものを見るにはls -la
drwxr-xr-x 5 ss staff 160 5 17 16:12 .
drwxr-xr-x+ 43 ss staff 1376 5 16 16:53 ..
drwxr-xr-x 13 ss staff 416 5 16 17:07 .git
-rw-r--r-- 1 ss staff 0 5 17 16:12 .gitignore
-rw-r--r-- 1 ss staff 7 5 16 16:52 sample.txtこのようにして見ることが出来ます。
このファイルにgit管理したく無いファイルを書くことで、更新対象から外すことが出来ます。
gitignoreの書き方
コメント
# コメント部分ワイルドカード
記号 意味 * /以外の0文字以上の文字列にマッチ ? /以外の1文字にマッチ [0-9]など /以外の指定した1文字にマッチ ** 0個以上のファイル or ディレクトリにマッチ 特定の拡張子の除外
# txt ファイルの除外 *.txt特定のフォルダの中身全てを除外
# abcフォルダを除外 abc/特定のパターンを除外しない
# aaa.exe は更新対象にする !/.aa/aaa.exeフォルダ内の特定拡張子を除外
# paフォルダ内の .config ファイルを除外 pa/**/*.config特定フォルダを除外しつつ、その中の特定ファイルは除外しない
# tmpフォルダは除外し.gitabcファイルだけは除外しない /tmp/* !/tmp/.gitabcブランチのマージ(merge)
開発現場では新機能をブランチを作って開発を行い、テストが完了したらメインのmasterブランチに取り込む
という流れで開発作業を行ったりします。このブランチに取り込む作業のことを
merge
マージといいます。
git merge ブランチ名
まず作業ブランチでファイルを作成してコミットしておきます。
branch2
で作業するとします。作業ブランチの確認をして
git branchbranch1
* branch2
master新しいファイルを作ります。
vi sample2.txt ls -ls8 -rw-r--r-- 1 ss staff 8 5 17 16:35 sample2.txt
branch2
でコミットします。git commit -m "何かコメント書く"[branch2 b4f7319] sample2
1 file changed, 1 insertion(+)
create mode 100644 sample2.txtこの状態でマスターに切り替えます。
git checkout masterSwitched to branch 'master'
ファイルを見ても
sample2.txt
は有りません。ls -ls8 -rw-r--r-- 1 ss staff 7 5 16 16:52 sample.txt
merge
コマンドでbranch2
の内容をマージします。git merge branch2Updating 454811b..b4f7319
Fast-forward
sample2.txt | 1 +
1 file changed, 1 insertion(+)
create mode 100644 sample2.txt再度ファイルを確認してみると
ls -ls8 -rw-r--r-- 1 ss staff 7 5 16 16:52 sample.txt
8 -rw-r--r-- 1 ss staff 8 5 17 16:38 sample2.txt
branch2
のファイルが追加されていることがわかります。まとめ
作業ブランチの仕組みが理解出来たら実際に作業ブランチで作業してみて
メインブランチに統合したりしてみよう。あと設定ファイルなどよく書き換えるけど都度更新しなくて
良いやつは.gitignoreなどに登録しておき
更新対象から外してみよう。君がエンジニアになるまであと42日
作者の情報
乙pyのHP:
http://www.otupy.net/Youtube:
https://www.youtube.com/channel/UCaT7xpeq8n1G_HcJKKSOXMwTwitter:
https://twitter.com/otupython
- 投稿日:2020-05-17T17:11:12+09:00
GitHub、作業前・プルリク前にpull-rebaseするメモ
GitHubのフォークを同期するメモ
の改良版。何をしているか↓
Github で Fork してから Pull Request をするまでの流れ
これの後半と同じ。図があって分かりやすい。上流リポジトリを確認
upstreamが正しいか確認。originは自分のGitHubリポジトリ。
$ git remote -v origin https://github.com/自分のユーザー名/リポジトリ名.git (fetch) origin https://github.com/自分のユーザー名/リポジトリ名.git (push) upstream https://github.com/上流リポジトリのユーザー名/上流リポジトリ名.git (fetch) upstream https://github.com/上流リポジトリのユーザー名/上流リポジトリ名.git (push)指定方法
$ git remote add upstream https://github.com/上流ユーザー名/上流リポジトリ名.gitpull --rebase
上流リポジトリ(upstream)の最新の状態をローカルのファイルに同期させる。
git pull origin master
=git fetch
+git merge origin/master
git pull --rebase origin master
=git fetch
+git rebase master
mergeだとマージ履歴がそのままきれいに残る、そのせいで複雑になる。
rebaseは履歴がすっきりする、そのせいで(滅多に起こらないけど)コンフリクトした時の修正が大変。
らしい。$ git pull --rebase upstream master $ git fetch upstream $ git merge upstream/masterpush
上流リポジトリ→ローカルのファイルの最新状態を自分のGitHubリポジトリ(origin)にプッシュする。
$ git push origin masterこの後、GitHubでプルリク送ったり、作業したり。
参考
git pull と git pull –rebase の違いって?図を交えて説明します!
Github で Fork してから Pull Request をするまでの流れ
- 投稿日:2020-05-17T15:59:24+09:00
初心者向けGitコマンド一覧
前提
Gitとは何かを知っている人向けです。
Gitとは?を学びたい方は下記のリンクを読んでから、こちらの記事を見てもらえれば幸いです。
https://qiita.com/tama0571046/items/29560a33f23a0ba63e1e普段コマンドでGitを使うことが少ないのでおさらいも兼ねて、Gitで使う実践的なコマンドを記述していきたいと思います。
Gitを操作する便利なソフトが沢山ありますが、コマンドを覚えておくことでより深くGitを学ぶことができるかと思います!
初期設定
基本的には1回だけ行うコマンド
git config --global user.name "USERNAME" git config --global user.email git@sample.comGitHubへプッシュするときのユーザー設定
この設定をすることによって全てのプロジェクトを上記のユーザーとしてプッシュすることができるgit initローカルリポジトリを作成する
Gitで管理を始める場合は必ずこのコマンドを行う必要があるgit remote add origin https://github.com/[user name]/[repository name].gitローカルリポジトリとリモートリポジトリを紐付ける
GitHubやbitbucketで作成したリポジトリにプッシュするための前準備変更内容の登録
ソースの変更点をGitで教える方法
git add . git add [ファイル名]ローカルからステージングエリア(控室)へ変更内容を移動する
[ . ]とした場合は全変更内容が適応されるgit rm削除したファイルをステージングエリアに移動する
git rm --cached [ファイル名]gitの管理からは外したいが、ローカルにはファイルを残したいときに使用する
後述する[.gitignore]を使用しないと、再びGitで管理されるので注意git commit -vステージングエリアからローカルリポジトリに変更内容を反映する
[-v]とすることで、commit内容の詳細をvimなどで確認することができるgit push origin masterローカルリポジトリからリモートリポジトリに変更内容を反映させる
[origin master]はGitHubでの定型句のようなものなので、とりあえずそのまま覚えておけば良い
気になる人は調べてね!変更内容の確認
修正した内容の確認
git log --oneline git log -p [ファイル名]commitの履歴を見ることができる
[--oneline]をつけないと情報量が多すぎて確認しにくい
1ファイルの細かい履歴を見たい場合は[ファイル名]を付けようgit status現在のファイルの変更状況を確認できる
赤文字:ステージングエリアに移動前
緑文字:ステージングエリアに移動後git diff git diff HEADcommitする前にファイルの変更差分(ローカルとステージングエリアの差分)を確認することができる
「HEAD」とつけることでステージングエリアと最新のcommitとの差分が確認できるその他
git reset . git reset [ファイル名]git addしたファイルをステージングエリアからローカルに戻す
git checkout . git checkout [ファイル名]ステージングエリアに移動する前のファイルの変更点を、最後にcommitした内容に戻すことができる
.gitignoreコマンドではなくGit管理されているプロジェクトに[.gitignore]というファイルを追加する
vimやテキストエディターで開いて、管理したくないファイル(フォルダ)のパスを記入すると対象のファイル(フォルダ)がGitの管理から外れる
- 自動生成されるファイル
- パスワードが記載されているファイル
これらのファイルには積極的に使用していこう
- 投稿日:2020-05-17T12:18:14+09:00
Windows Git Bash 文字化け対策
- 投稿日:2020-05-17T12:07:42+09:00
IntelliJ Terminal 文字化け対策
- 投稿日:2020-05-17T10:24:20+09:00
git stashで何を保存するかのオプション
概要
git stashのオプション指定によってどう挙動が変わるか確認、整理します。1
git version 2.26.2 で確認。
オプションなし
リポジトリにあるファイルの変更
保存される。
% git status On branch master Changes not staged for commit: (use "git add <file>..." to update what will be committed) (use "git restore <file>..." to discard changes in working directory) modified: README no changes added to commit (use "git add" and/or "git commit -a") % git stash Saved working directory and index state WIP on master: 2be296f add % git status On branch master nothing to commit, working tree clean % git stash pop On branch master Changes not staged for commit: (use "git add <file>..." to update what will be committed) (use "git restore <file>..." to discard changes in working directory) modified: README no changes added to commit (use "git add" and/or "git commit -a") Dropped refs/stash@{0} (c3341440d3d936bcde11b70521bfe50b6c8cf289)ステージされた変更
保存される。popするとアンステージされた状態に戻る。
(git stash pop に --index オプションを付けるとステージされた状態に戻る)% git status On branch master Changes to be committed: (use "git restore --staged <file>..." to unstage) modified: README % git stash Saved working directory and index state WIP on master: 2be296f add % git status On branch master nothing to commit, working tree clean % git stash pop On branch master Changes not staged for commit: (use "git add <file>..." to update what will be committed) (use "git restore <file>..." to discard changes in working directory) modified: README no changes added to commit (use "git add" and/or "git commit -a") Dropped refs/stash@{0} (6f7975d49efb05229d126100234347dacce702ff) % git status On branch master Changes not staged for commit: (use "git add <file>..." to update what will be committed) (use "git restore <file>..." to discard changes in working directory) modified: README no changes added to commit (use "git add" and/or "git commit -a")ステージされた新規ファイル
保存される。popするとステージされた状態に戻る。
% git status On branch master Changes to be committed: (use "git restore --staged <file>..." to unstage) new file: NEWS % git stash Saved working directory and index state WIP on master: 2be296f add % git status On branch master nothing to commit, working tree clean % git stash pop On branch master Changes to be committed: (use "git restore --staged <file>..." to unstage) new file: NEWS Dropped refs/stash@{0} (06f0eade21e57da6d18f3b0b4e9672d8f37b324d) % git status On branch master Changes to be committed: (use "git restore --staged <file>..." to unstage) new file: NEWS追跡されてないファイル
保存されない。
% git status On branch master Untracked files: (use "git add <file>..." to include in what will be committed) NEWS nothing added to commit but untracked files present (use "git add" to track) % git stash No local changes to save無視指定されてるファイル
保存されない。
% git status --ignored On branch master Ignored files: (use "git add -f <file>..." to include in what will be committed) README~ nothing to commit, working tree clean % git stash No local changes to save-u オプションを付けた場合
追跡されてないファイル
保存される。popすると追跡されてない状態に戻る。
% git status On branch master Untracked files: (use "git add <file>..." to include in what will be committed) NEWS nothing added to commit but untracked files present (use "git add" to track) % git stash -u Saved working directory and index state WIP on master: 2be296f add % git status On branch master nothing to commit, working tree clean % git stash pop Already up to date! On branch master Untracked files: (use "git add <file>..." to include in what will be committed) NEWS nothing added to commit but untracked files present (use "git add" to track) Dropped refs/stash@{0} (4e498a9757baa17fbed2e558f9d5a833c3be6ed7)無視指定されてるファイル
保存されない。
% git status --ignored On branch master Ignored files: (use "git add -f <file>..." to include in what will be committed) README~ nothing to commit, working tree clean % git stash -u No local changes to save空ディレクトリ
消える。gitは空ディレクトリを管理しないので。
% ls -a emptydir ./ ../ % git status On branch master Changes not staged for commit: (use "git add <file>..." to update what will be committed) (use "git restore <file>..." to discard changes in working directory) modified: README no changes added to commit (use "git add" and/or "git commit -a") % git stash -u Saved working directory and index state WIP on master: 2be296f add % ls -a emptydir ls: emptydir: No such file or directory % git stash pop On branch master Changes not staged for commit: (use "git add <file>..." to update what will be committed) (use "git restore <file>..." to discard changes in working directory) modified: README no changes added to commit (use "git add" and/or "git commit -a") Dropped refs/stash@{0} (cfae721ccf166d2631c40b66e8984e80c0a5baef) % ls -a emptydir ls: emptydir: No such file or directory-a オプションを付けた場合
追跡されてないファイル
-u オプションを付けた場合と同様に保存される。
無視指定されてるファイル
保存される。
% git status --ignored On branch master Ignored files: (use "git add -f <file>..." to include in what will be committed) README~ nothing to commit, working tree clean % git stash -a Saved working directory and index state WIP on master: 2be296f add % git status --ignored On branch master nothing to commit, working tree clean % git stash pop Already up to date! On branch master nothing to commit, working tree clean Dropped refs/stash@{0} (e287d64ca99f582a530a3cdcd021d12c39c07cb2) % git status --ignored On branch master Ignored files: (use "git add -f <file>..." to include in what will be committed) README~ nothing to commit, working tree clean空ディレクトリ
-u の場合と同様に消える。
-k (--keep-index) オプションを付けた場合
ステージされた変更、ステージされた新規ファイル
共に保存される。ステージング領域の状態は維持される。
% git status On branch master Changes to be committed: (use "git restore --staged <file>..." to unstage) new file: NEWS modified: README % git stash -k Saved working directory and index state WIP on master: 2be296f add % git status On branch master Changes to be committed: (use "git restore --staged <file>..." to unstage) new file: NEWS modified: README
git pullでerror: The following untracked …やYour local changes…が出たときの原因と対処 で git stash の -a オプションを知ったのがきっかけです。 ↩
- 投稿日:2020-05-17T02:45:36+09:00
GitHubにプッシュ・プルリクまでのメモ
自分のGitHubリポジトリへターミナル使ってプッシュする。
自分のGitHubから共同開発用のリポジトリにプルリクエスト。
管理者がマージしてくれたら反映される。開発を始める時は、自分のGitHubに引っ張ってくるクローンと、PCへのダウンロードが必要。
このメモはそれ以降。ローカルだけならこの記事で。
init、add、commitはこれの方が詳しい。まず、扱いたいファイル・フォルダのある場所(ディレクトリ)に移動する。
以前の開発からの変更を自分のファイルに持ってきて同期させる。
GitHubのフォークを同期するメモユーザー名とアドレス、init、リモートURLを設定する。同じディレクトリでの2回目以降は飛ばす。
Gitのユーザー名・メールアドレスの設定
開く
グローバル設定(どのディレクトリでも適用される)とローカル設定(ディレクトリ・プロジェクトごとに設定する)がある。
ローカル設定がある場合は優先される。共同・公開プロジェクトなどで設定。
ない場合にグローバル設定が適用される。グローバル設定
ユーザー名とメールアドレスをグローバル設定する。
$ git config --global user.name "Mona Lisa" $ git config --global user.email "email@example.com"グローバル設定を確認。
$ git config --global user.name > Mona Lisa $ git config --global user.email email@example.comローカル設定
ローカル設定したいディレクトリに移動する。
ユーザー名とメールアドレスをローカル設定する。
プロジェクトのメンバーに分かりやすい・教えていい、名前とアドレスにする。$ git config user.name "Mona Lisa" $ git config user.email "email@example.com"ローカル設定を確認。
$ git config user.name > Mona Lisa $ git config user.email email@example.comgit init
開く
$ git init Initialized empty Git repository in /Users/ディレクトリの階層ズラズラ/.git/git remote add
開く
今いるディレクトリにリモート先(GitHubのリポジトリのアドレス)を設定する。
GitHubのリポジトリのページから、リモートURLを取得する。コピーしたら
git remote add origin
以降に貼り付ける。$ git remote add origin https://github.com/ユーザー名/リポジトリ名.git確認。
$ git remote -v > origin https://github.com/ユーザー名/リポジトリ名.git (fetch) > origin https://github.com/ユーザー名/リポジトリ名.git (push)設定先を変更する→
git remote set-url origin リモートURL
設定を削除する→git remote rm リモート名(origin,upstream,destinationなど)
git add
$ git add ファイル名確認。
$ git status返ってくる
Changes to be committed:
以下で、ちゃんと選択したいものが選択されていることを確認。git commit
$ git commit -m "コメント(変更内容など)"共同開発では特にコメントを分かりやすく、詳しく書く。
日時・ユーザー名とアドレス・コメントしか情報はぱっと見て分からない。ここまででローカルのgitには反映された。
確認。$ git loggit push
リモート先へプッシュ。アップロード。
$ git push origin master
git push リモート名 ブランチ名
この後GitHubのユーザー名とパスワードを要求されることがある。GitHubからプルリク
自分のGitHubのリポジトリページを見る。
- 先ほどのコミットが反映されていることを確認。
- 緑色の「Compare & pull request」ボタンをクリック。
プルリクエスト作成ページに変わる。
上から
- 【ブランチ】 プルリクを送る、マージして欲しいブランチ先が選択されているか確認。
- 【タイトル】 コミットのコメントのようなもの。簡潔に分かりやすく書く。
- 【概要】 どこをどう変更したか、詳しく書ける。 Markdown記法。
- 【Create pull request】 緑色。このボタンでプルリクを送信。
- 【コミット履歴・差分】 プルリク先と自分のリポジトリの比較をする。
Create pull requestボタンを押せばプルリク完了。
参考
Git でのユーザ名を設定する
Git でユーザー名とメールアドレスを設定する方法(全体用とプロジェクト用)
リモートリポジトリを管理する
GitHubを使うなら最低限知っておきたい、プルリクエストの送り方とレビュー、マージの基本【イラストで覚える】初心者のためのGitとGitHub用語集
→画像が分かりやすい!
- 投稿日:2020-05-17T02:00:56+09:00
Memo: Git command
- 投稿日:2020-05-17T01:15:14+09:00
Git の ssh キー
Gitリポジトリ全てで同じuser.name, user.emailそして同じsshキーを使っている場合はこのメモを読む必要はあありません。
user.nameとuser.emailを下のようにglobalに設定する手順でよいです。
$ git config --global user.name 'Taro Nihon' $ git config --global user.email 'tn@acme.org'あるリポジトリだけ別の名前に設定したい場合は、次のように設定します。
$ git config user.name 'Hanako Nihon' $ git config user.email 'hn@acme.org'あるリポジトリのssh秘密鍵を指定したい場合は、次のように設定します。
$ git config core.sshCommand 'ssh -i ~/.ssh/id_hanako'