Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
ghqでソースコードを管理しよう/2021-03-23-llt20
Search
Satoshi SAKAO
March 23, 2021
Programming
0
270
ghqでソースコードを管理しよう/2021-03-23-llt20
社内のLTイベント「えるLT Vol.20 オンライン」で発表した資料です
Satoshi SAKAO
March 23, 2021
Tweet
Share
More Decks by Satoshi SAKAO
See All by Satoshi SAKAO
JavaScriptのデバッグ/2023-09-04-llt30
ottijp
0
69
CDK for TerraformでAzureリソースをデプロイする/2023-05-15-llt29
ottijp
0
36
TWELITEへの誘い/2022-12-27-llt28
ottijp
0
98
ビルドツールBazelを触ってみた/2022-09-28-llt27
ottijp
0
74
HashiCorp Vaultを使ったシークレットのセキュアな一元管理 〜Ansibleを添えて〜/2022-07-12-llt26
ottijp
0
100
AWSインフラのデプロイをCDKでカイゼンする/2022-03-23-llt25
ottijp
0
47
Amazon Timestreamでデータ補間/2021-12-27-llt24
ottijp
0
53
ncurses/2021-05-12-llt21
ottijp
0
140
wasmer/2021-02-10-llt19
ottijp
1
110
Other Decks in Programming
See All in Programming
BuefyのMaintainerを引き継いだ件
kikuomax
0
440
オレオレkaggle開発環境に Formatter/Linter入れてみた
stgkrt
0
350
上手な探索的テストとその上達方法について
matsu802
1
440
ここ1~2年くらいで 使えるようになった(主要ブラウザーの最新版 がすべて対応した ) ウェブの新機能について ランダムに喋る!
myzkyy
7
5.9k
C#でのPlaywrightを使ったE2Eテストの実際
tomokusaba
0
210
Deep Dive 大規模システムアーキテクチャ/開発組織エンジニアリング / Deep Dive Large-Scale System Architecture, Development Organization Engineering
nrslib
5
440
プログラミングを楽しもう! / Enjoy Programming
chobishiba
1
700
Some Quick Ideas To Improve Your Tests ( #jassttokyo )
teyamagu
PRO
2
2k
syndicationd LT
ymgyt
0
110
私がエッジを使う理由
chimame
9
3.6k
Learning PHP and Static Analysis with PHP Parser
inouehi
1
220
MySQL のインデックスの種類をおさらいしよう! / overviewing indexes in MySQL
okashoi
0
160
Featured
See All Featured
Building Effective Engineering Teams - LeadDev
addyosmani
25
1.6k
Writing Fast Ruby
sferik
619
59k
Fashionably flexible responsive web design (full day workshop)
malarkey
397
65k
Design by the Numbers
sachag
274
18k
Imperfection Machines: The Place of Print at Facebook
scottboms
257
12k
ParisWeb 2013: Learning to Love: Crash Course in Emotional UX Design
dotmariusz
101
6.6k
Become a Pro
speakerdeck
PRO
8
4.2k
Why Our Code Smells
bkeepers
PRO
330
56k
Facilitating Awesome Meetings
lara
39
5.5k
Web Components: a chance to create the future
zenorocha
304
41k
Robots, Beer and Maslow
schacon
PRO
154
7.9k
The Cost Of JavaScript in 2023
addyosmani
13
3.7k
Transcript
ghqでソースコードを管理しよう Satoshi SAKAO えるLT Vol.20 2021-03-23 1
話すひと 2 🏢 インフォコム株式会社 品質マネジメント推進室 👨🔧 ソフトウェアエンジニア 🛠 JS (ES6)
/ Node.js / GCP / IoT / iOS (Swift) 💖 猫,テクテクライフ(ランク: 19) Satoshi SAKAO @ottijp
git clone • リモートリポジトリをどこにクローンしてますか? • クローンしたリポジトリが点在してませんか? • クローンしたリポジトリに容易にアクセスできますか? 3
ghq • https://github.com/x-motemen/ghq • リモートリポジトリの管理ツール • 特定のディレクトリ構造に従ってクローンしてくれる • Nature RemoのCTOの方がメインコントリビュータ兼スポンサ
4
ディレクトリ構造 5 ~/ghq |-- code.google.com/ | `-- p/ | `--
vim/ `-- github.com/ |-- google/ | `-- go-github/ |-- motemen/ | `-- ghq/ `-- urfave/ `-- cli/ <ghq root> <host> <user> <repo>
demo • vim というテキストエディタのソースをクローンする • GitHubなら <user>/<repo> の省略形式でOK • ghq
get vim/vim 6
課題 • 一元管理はできるようになったが,リポジトリへのアクセスは? • ghq look という機能があるが, リポジトリ名を完全に覚えている必要がある 7
そこで fzf 8 https://github.com/junegunn/fzf
リポジトリのあいまい検索&移動 9 fzf-src() { local selected selected=`ghq list --full-path |
fzf --query="$LBUFFER"` if [ -n "$selected" ]; then BUFFER="builtin cd $selected" zle accept-line fi zle reset-prompt } zle -N fzf-src bindkey '^Xs' fzf-src
demo • ^Xs で検索開始 • fzfで選択したら自動で移動 10
11 やったね 🥴🎉
まとめ • ghq を使ってソースコードを一元管理しよう • fzf は全人類が使おう 12
13 Appendix
install 14 # windows scoop install ghq # mac brew
install ghq # go go get github.com/x-motemen/ghq
リポジトリの削除 • 手動です • rm -rf $(ghq root)/foo/bar/hoge 15
fzf の活用例 • ブックマークのあいまい検索&移動 • 実行可能コマンドのあいまい検索&実行 • https://github.com/junegunn/fzf.vim 16