タイトルは指摘あったので変更しました
ここ半月ほどGitとGithubにすごく悩まされてる。
原因はGitの概念を理解できていないこと、それと編集したファイルをとりあえず何でもかんでもコミットしてしまってレビューを大変にしてしまうところ
これはいけない...
そこでいろいろ調べて見たり教えてもらったりして調べると以下のことがわかった。
tig
まず最初に教えてもらったのはtigというツール。
tigいいですよ。tig
とのことで導入したらすごく良かった...
導入はbrew install tig
でオッケー
Macはかんたん(´ω`)
あとはgitのレポジトリからtigと打ち込むだけで利用できる。
なんてこったCUIなのにいろいろ操作できるぞ(゚д゚)!
もうこれでいいんじゃないかな....
Magit
僕がEmacsを利用するのはプログラムを書くとき一番無駄な時間がカーソルを動かすことにあると思っているからだったり。
それならマウスが存在しないであろう時代、ないしはマウスが使えない環境で使われているエディタを使えば良い!と考えて使ってたりします。実際、20年以上の歴史を持ちながら多数のIDEと渡り歩けるテキストエディタはEmacsの他にはVimしかないと思う。(もともと僕はVimmer(゚д゚)!)
でなるべく手を離さず、つまりテキストエディタから離れず起動しっぱなして最もGitを操作できるやつが優勝...
そこで調べてたら出てきたのがMagit
さん。
結構有名らしい。
多くのEmacsユーザは自らのEmacsを大改造する。もちろん僕も。
僕は自分のinit.el
に
;; Git関連
(require 'magit)
(define-key global-map (kbd "M-g") 'magit-status)
こう書いてる。
メタキーとgを入力するとMagitさんが立ち上がる。
これは先のtigみたいなものがEmacs上で起動し、そしてそのまますべての操作ができるというツールだ。
tigにはpush機能が存在しないがMagitにはpush機能すら存在する...。無敵すぎる。
magit-status
が起動した状態だとなんのファイルを編集したのかが一目瞭然。ステージングエリアにあげたいファイルにあわせてs
を押せばステージングにu
を押せばアンステージングとなる。
それがおわればc
を2度ほど押せばコミットに移行する。メッセージを書いてCtrl - c
を2回実行すればCOMMITされP
を押せばプッシュできる。
すげぇ...
ほかにももっとコマンドがあって
b
を2回押せばブランチを切り替えることも
z
押してk
を押せばstashを始末することもできる
M
でいきなりローカルリポジトリを設定することもできるのでEmacsから離れずにすべての操作を完結することができる。
すげぇぇ