2
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 1 year has passed since last update.

Ubuntu22.04におけるローカルにクローンしたGitリポジトリの管理を楽にするために

Last updated at Posted at 2023-09-12

はじめに

エンジニアにいつかなろうとしている情弱WANNABEがチャレンジしました。

きっかけ

めちゃめちゃ親切な友人から下記の記事をおすすめしてもらいました。
https://zenn.dev/obregonia1/articles/e82868e8f66793
pecoとかghqとかわからんかったので、最初は入れる気がなかったのですが、勉強がてらいれることにしました。

いろんなサイトをみまして、インストールが複雑な文字列ばっかりで難しかった。
(注意)なので、とりあえず動かすために最低限必要な要素をまとめてました。

参考にしたサイト

go:https://qiita.com/m-tmatma/items/3477e2a107c20a33e6f1
peco:https://github.com/peco/peco
ghq:https://github.com/x-motemen/ghq

実施前の環境

golang入れていない。もちろんpecoとghqも入れていない。
gitは入れていました。

実施前の課題

git cloneしてローカルリポジトリ作るのがめんどくさい作業だと感じていました。(git使うの難しい、、、)

実施したこと

基本的には公式ドキュメント通りに作業しました。

インストール作業(1/3)

sudo apt update
sudo apt install -y golang-go
go install github.com/x-motemen/ghq@latest
sudo apt install peco

パス通す作業(2/3)

bashrcにgolangへのPATHを通すらしい。
bashrcとはシェル(bash)を読み込んだときに読まれる設定ファイルらしい。(https://wa3.i-3-i.info/word13649.html)

nano ~/.bashrc
.basrc
# golang configure
export GOPATH=$HOME/go
export PATH=$PATH:/usr/local/go/bin:$GOPATH/bin

sourceはシェル(bach)上に設定ファイルを読み込むらしい。

source $HOME/.bashrc

確認作業(3/3)

コマンド

go version
peco version
ghq --version

結果

$ go version
go version go1.18.1 linux/amd64
$ peco --version
peco version v0.5.10 (built with go1.17)
$ ghq --version
ghq version 1.4.2 (rev:HEAD)

あれっ、、、pecoでbuilt with go1.17ってなってるなぁ。
よくわからないから無視しよう(ちゃんと調べます。)

[2023/9/13 追記]
親友の@RIckyBan氏から速攻で回答きました。マジで天才。頑張ります。

これは不思議なことではなくて、aptではビルド済みのバイナリを配信してるからじゃないかな
仮にソースからビルドする場合であればローカルに存在するgoのランタイムを使うはずだけど、今回ズレてるのは全然あり得る話

ビルド済みのバイナリを配信ってことなので、ローカルに入ってるGoのバージョンとは特に関係なく動くみたいですね。セキュリティ修正があったときにビルドしたバージョンは重要みたいですね〜。

うまく入っていたら以下のようなバージョンになると思います。(2023年9月12日現在)

ライブラリ version
go go1.18.1
peco v0.5.10
ghq 1.4.2

実施後

以下のコマンドでいい感じにクローンしてくれる。

 ghq get git@github.com:(ディレクトリ部分)

pecoは単体だけだとうまく使えないので下記のようにaliasでコマンドを登録しておくといい感じにクローンしてきたリポジトリを変更できるようになる。

nano ~/.bash_aliases
.bash_aliases
alias gitcd='cd $(ghq root)/$(ghq list | peco)'
source $HOME/.bash_aliases

これでgitcdをterminal上で打てばいい感じにディレクトリ移動できるようになる。

結果

いい感じになった!
みなさんも試してみよう〜
友人の@RIckyBan氏ありがとう。

まだgit使いこなせていないからだが、レポジトリのbranch切り替えも難しく、どうにかかんたんにしたいです。(勉強せよっ)

2
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
2
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?