- 投稿日:2019-11-15T17:54:14+09:00
docker/git credential helperの使い方(一覧)
docker
- https://docs.docker.com/engine/reference/commandline/#credentials-store
- https://github.com/docker/docker-credential-helpers/releases
- storeだけjson、get/eraseはホスト名を入力として取ります
$ docker-credential-pass store > {"ServerURL":"__HOST__","Username":"__USERNAME__","Secret":"__PASSWORD__"} $ docker-credential-pass list {"__HOST__":"__USERNAME__"} $ docker-credential-pass get > __HOST__ {"ServerURL":"__HOST__","Username":"__USERNAME__","Secret":"__PASSWORD__"} $ docker-credential-pass erase > __HOST__git
- https://git-scm.com/docs/gitcredentials
- /usr/share/doc/git/contrib/credential や /usr/local/opt/git/share/git-core/contrib/credential/ 配下とかにあるらしいです。なければ https://github.com/git/git/tree/master/contrib/credential から取れます(cf https://stackoverflow.com/a/40312117/2641271)
- HTTPに近く、入力は行単位、空行で入力終了です
$ git-credential-libsecret store > protocol=https > host=__HOST__ > username=__USERNAME__ > password=__PASSWORD__ > $ git-credential-libsecret get > protocol=https > host=__HOST__ > username=__USERNAME__ password=__PASSWORD__ $ git-credential-libsecret erase > protocol=https > host=__HOST__ >
- 投稿日:2019-11-15T17:47:12+09:00
git cloneしたものとは違うブランチを見たい場合の対処法
たとえばこんなケースです
- Aさん「私のコードをチェックして。masterブランチよ」
- わたし
$ git clone https://github.com/a_san/test.git
- Aさん「ごめん!developブランチだったわ!」
- わたし ?
対処法
①リモートのブランチ一覧を確認する
$ git branch -rたとえばこんな感じになる
$ git branch -r origin/HEAD -> origin/master origin/master origin/develop # 今回はこれが目的のブランチ②該当のブランチに切り替える
$ git checkout [リモートブランチ名]$ git checkout develop
結論
cloneすることで、全ブランチの情報が手元に存在することになる
- 投稿日:2019-11-15T13:12:28+09:00
Git操作まとめ 〜Gitをターミナルで使う場合の設定
この記事では、Ubuntu18.04LTSにインストールしたGit(version 2.17.1)を使用しています。
ステージングとコミット、履歴の閲覧ができたところで、Gitを操作するのに便利な設定をしてみます。
そのままでも操作自体は可能ですが、使う方に応じた設定を行うことでより効率的に作業をすすめることができます。
Gitのインストールとセットアップの記事の初期設定で少し触れてはいますが、追加した設定は、HOMEディレクトリの隠しファイル'.gitconfig'等に保存されていきます。設定対象の指定オプション
設定をする上で、設定する対象を認識する必要が出てきます。私はまだ、細かくは使い分けていませんが、知識として持っていて損はないでしょう。
オプション 設定の保存場所 マシン全体 --system /usr/local/etc/gitconfig ユーザー単位 --global ~/.gitconfig リポジトリ単位 (表記なし)
--local(リポジトリのルート)/.git/config
エディタをVimに設定する
ターミナルでgit commitをした際、コミットメッセージを編集するのにデフォルトでnanoが起動します。
私はnanoよりもVimのほうが使いやすいと思うので、Vimが起動するように設定します。git config --global core.editor 'vim -c "set func=utf-8"'エディタが変更されたか確認してみます。
git config -l
実行結果user.name=xxxxxx(あなたの名前) user.email=xxxxxxxx@gmail.com(あなたのアドレス) color.ui=true core.editor=vim -c "set func=utf-8" core.repositoryformatversion=0 core.filemode=false core.bare=false core.logallrefupdates=true core.symlinks=false core.ignorecase=true項目がいろいろ増えていますが、4行目の[vim -c "set func=utf-8"]で確認できました。
Gitコマンドのショートカット
Gitのコマンドは、開発を行いつつ何度も同じことを繰り返していくことになります。
そのたびにGitコマンドを全て入力していくのは手間がかかります。
自分の使いやすいように短縮することで、効率を上げることができます。慣れと好みではありますが、ショートカットを設定しすぎると逆に訳がわからなくなる可能性があるので、Gitを使いながら少しずつ設定していくのが良さそうです。
当面頻度が多そうなコマンドのショートカットを設定しておこうと思います。
尚、下記の--globalオプションは、このショートカットをこのリポジトリだけでなく、他のリポジトリでも同じように使えるようにしたいのでつけてます。
git config --global alias.st "status" git config --global alias.cm "commit" git config --global alias.br "branch" git config --global alias.co "checkout" git config --global alias.df "diff"git config -l
実行結果user.name=munetsugu_tamura user.email=tsweblabo.2016@gmail.com color.ui=true core.editor=vim -c "set func=utf-8" alias.st=status alias.cm=commit alias.br=branch alias.co=checkout alias.df=diff core.repositoryformatversion=0 core.filemode=false core.bare=false core.logallrefupdates=true core.symlinks=false core.ignorecase=true
本記事目次ページ
参考サイト
- 投稿日:2019-11-15T13:00:54+09:00
GitとGitHub入門
はじめに
未来電子テクノロジーでインターンをしているやっきーです。
まだまだ勉強中のため、間違いがあればどんどん指摘してください。
Git, GitHubとは
Gitは、ファイルのバージョンを管理するツールです。Gitを使うことにより、誰が、いつ、どのような変更を加えたかを簡単にわかるようになります。また、ファイルの状態を元に戻したいときも簡単にすることができます。
GitHubは、インターネット上でデータを共有するためのサービスです。Gitと連携してローカルにあるリポジトリを公開することや、GitHubにあるデータをローカル上で編集することができます。GitとGitHubでできること
ここでは、githubのアカウント登録とgitのインストールができている前提で進めていきます。
用語
リポジトリ...ファイルなどを格納する場所
ローカルリポジトリ...インターネットに接続していないリポジトリ
リモートリポジトリ ...インターネット上にあるリポジトリ
クローン(clone)...リモートリポジトリからローカルリポジトにデータを取り入れること
プッシュ(push)...ローカルリポジトリからリモートリポジトリにデータを送ることローカルリポジトリを作成する
以下のコマンドで、リポジトリを作成します。
$ cd Desktop #デスクトップに移動 $ mkdir sample #sampleというディレクトリを作成 $ cd sample #sampleディレクトリに移動 $ git init #ローカルリポジトリを作成 Initialized empty Git repository in /Users/<ユーザー名>/Desktop/sample/.git/ #このようなメッセージが出ればOKここまでで、ローカルリポジトリの作成ができました。
次に、リポジトリにファイルを追加していきましょう。$ touch test.txt #ファイルを作成 $ touch test2.txt $ touch test3.txt $ git add test.txt #test.txtファイルをGitに追加する $ git add . #ディレクトリ内の全てのファイルをGitに追加するここで、正しくGitに登録されているか確認してみましょう。
$ git status #Gitの状態を確認 On branch master No commits yet Changes to be committed: (use "git rm --cached <file>..." to unstage) new file: test.txt new file: test2.txt new file: test3.txtこれで、ローカルリポジトリを作成できました。
リモートリポジトリにpushする
まず、github上で新たにリポジトリを作成します。
トップページの左側にあるRepositoriesの"New"からリポジトリを作成します。
その後、リポジトリのURLが表示されるので、コピーします。次に、ターミナルに以下のコマンドを入力します。
$ git remote add origin <コピーしたURL, httpsから始まるもの>
最後に、作成したファイルをpushして完了です。
$ git push origin master
ローカルでファイルを更新・リモートにpush
では、コンピュータの中に入っているファイルを編集してリモート上にpushしてみましょう。
$ git add . #ファイルをリモートリポジトリに追加 $ git commit -m "テキストを追加" #変更内容を登録すると、
2 files changed, 2 insertions(+), 1 deletion(-)
のように変更内容が表示されます。変更内容をリモートリポジトリに反映させるために以下のコマンドを入力します。
$ git push origin master
githubで確認すると、変更が反映されているかと思います。
リモートリポジトリの内容をローカルに反映させる
リモート上でファイルを編集、削除した場合、
git pull
で変更内容を反映させることができます。リモートからローカルにリポジトリを追加する
リモートにあるリポジトリをローカルにクローンします。
githubのリポジトリの画面を開き、"clone or download"を選択してURLをコピーします。
ターミナルを開き、以下のように入力します。
$ git clone <コピーしたURL>
すると、ローカル上にファイルが作成されているかと思います。
これで、ローカル上でも編集が可能になります。参考URL
git cloneで環境構築!リポジトリをクローンしよう | 侍エンジニア塾ブログ(Samurai Blog) - プログラミング入門者向けサイト
GitHub初心者はForkしない方のPull Requestから入門しよう | qnyp blog
【5分でわかる】GitHubとは?概要やメリットを簡単解説! | 侍エンジニア塾ブログ(Samurai Blog) - プログラミング入門者向けサイト
- 投稿日:2019-11-15T10:58:25+09:00
PC買い替えたときの環境構築リスト
注意事項
- PC端末はMacです
- 入れるかどうか、設定するかどうかは好みです
- 思い出したタイミングで追記していきます
【Mac の設定】
Mac 自体の設定や、デフォルトで入っているアプリの設定など。
ほぼ好みです。カレンダーの設定
カレンダーアプリを起動し、環境設定 > 一般 で以下の設定を行う。
- デフォルトで入っているカレンダーの週数を表示できるようにする
- 週の始まりを月曜日にする
Finder にホームフォルダを追加
Finder を開いて、上のタブから Finder > 環境設定 > サイドバー
で、↓の画面になるので、ここで家マークの横のチェックボックスをオンにする。参考
https://pc-karuma.net/mac-finder-sidebar/
Dock から不要なものを削除
無駄なアプリはあまり出したくないので非表示にする。
ズームの設定
[方法は後で書きます]
【ツール系】
PhpStorm のインストール
(有料です)
PhpStorm からダウンロードして、必要であればライセンス購入。
購入したライセンスをアクティベートする。ライセンスを購入しなくても30日は無料可能、また学生は学校のメールアドレスがあれば無料で使える。
Display Menu のインストール
https://apps.apple.com/jp/app/display-menu/id549083868?mt=12
Retinaディスプレイの場合、これを使えば高解像度にあげることができるのでたくさんの情報を表示することができる。
これのおかげで基本デュアルディスプレイにしなくて済んでる。Postman のインストール
https://www.getpostman.com/
[あとで書く]【使う技術によるもの】
以下は
- Nust.js/Vue.js などを使ったフロントエンドの開発
- Laravel などを使う PHPer
向けのものかと思います。
Git のインストール
Git 公式ページ からダウンロード。
Xcodeも必要なのでいれる。PHP のバージョンをあげる
https://php-osx.liip.ch/
[あとで書く]Composer のインストール
https://getcomposer.org/
[あとで書く]node.js のインストール
https://nodejs.org/ja/
[あとで書く]Virtual Box のインストール
https://www.virtualbox.org/wiki/Downloads
[あとで書く]Vagrant のインストール
https://www.vagrantup.com/
[あとで書く]
- 投稿日:2019-11-15T02:31:47+09:00
GitHubのユーザー毎に使用する鍵情報を切り替える(GitHub以外もいけるよ)
簡単3ステップでできます
鍵作って(すでにある場合は不要)
ssh-keygen -t rsa -b 4096 -C "kasyuu@example.com" -f kasyuu~/.ssh/configに設定
Host github-kasyuu User git Port 22 HostName github.com IdentityFile ~/.ssh/kasyuu TCPKeepAlive yes IdentitiesOnly yesclone時にconfig設定を使用
ssh接続情報のhostをconfigに設定したものに書き換え
git clone git@github-kasyuu:kasyuu/project.gitこれでOK。
cloneの時に指定しておけばローカルリポジトリのoriginにも同じ設定がセットされるので、今後は特に意識することなく使えます。
気になる方はgit remote -vで確認してみてください。
これどんな時に使うの?
フリーランスでいろんな現場にお邪魔してると、そこの現場のメールアドレスで開発で使用するサービスに登録することがままありまして、初めて現場のメールアドレスでGithubに登録することになったんですが、いつものようにPCにある公開鍵をコピペしてはっつけてみるとですね
とこのようにその公開鍵は使用されてるよ!とエラーがでて登録されませんでした。
たしかに個人用のアカウントでこの鍵登録してますしね。
はえー、こりゃ賢い。
ダメと言われたら仕方ないですね。
そんな時に使いましょう。
- 投稿日:2019-11-15T02:31:47+09:00
GitHubのユーザー毎に使用するSSH鍵を切り替える(GitHub以外もいけるよ)
簡単3ステップでできます(メールアドレスとかユーザー名は適宜書き変えてね)
鍵作って(すでにある場合は不要)
ssh-keygen -t rsa -b 4096 -C "kasyuu@example.com" -f kasyuu~/.ssh/configに設定
Host github-kasyuu User git Port 22 HostName github.com IdentityFile ~/.ssh/kasyuu TCPKeepAlive yes IdentitiesOnly yesclone時にconfig設定を使用
ssh接続情報のhostをconfigに設定したものに書き換え
git clone git@github-kasyuu:kasyuu/project.gitこれでOK。
cloneの時に指定しておけばローカルリポジトリのoriginにも同じ設定がセットされるので、今後は特に意識することなく使えます。
気になる方はgit remote -vで確認してみてください。
これどんな時に使うの?
フリーランスでいろんな現場にお邪魔してると、そこの現場のメールアドレスで開発で使用するサービスに登録することがままありまして、初めて現場のメールアドレスでGithubに登録することになったんですが、いつものようにPCにある公開鍵をコピペしてはっつけてみるとですね
とこのようにその公開鍵は使用されてるよ!とエラーがでて登録されませんでした。
たしかに個人用のアカウントでこの鍵登録してますしね。
はえー、こりゃ賢い。
ダメと言われたら仕方ないですね。
そんな時に使いましょう。