Posted at

ここがつらいよGit入門

More than 3 years have passed since last update.

最近の案件だとソースコード管理はGitが常識になりつつありますね。

CVSとかSVNとかの時代からソースコード管理を経験して来た身としては、Gitはいまいち

融通の利かなさとか、コマンドの多さにげんなりしています。

そんなGitに対する愚痴を書いてみようかなっと。


コマンドが多すぎ

通常であれば、

1. git pull する:ソースコードをリモートのリポジトリから取得する

2. git add する:変更したソースコードを追加する

3. git commit する:追加したソースコードをローカルのリポジトリにコミットする

4. git push する:ローカルのリポジトリをリモートのリポジトリに登録する

こんな感じでgitの処理が完了しますが、

これがもし、他の誰かと競合してしまったり、他の誰かがブランチを新規に切っていたりしたら、

もうそれだけでてんやわんやですよ!


コマンドなので、地味w

まあCUIなので仕方ないのですが、かと言ってイケてるGUIも無いのが現状。

コマンド一つで、今まで書いてあったソースコードが消えてしまう(ブランチが異なって見えなくなっただけ)でも、すごく焦ります。

gitでブランチが動いただけで、未コミット&未pushのファイルが見えなくなってしまうのは、

精神衛生上良くないです。

見えなくなるより、別ネームでリネームとか、属性変更で色が変わるだけにせめてして欲しい。。。


rebaseやresetがいまいち成功しない

リポジトリのブランチを取消たいときや、元に戻したいときに、マニュアル通りにrebaseとかreset

なんか使うんですけど、うまく成功したことがありません。

ブランチを移動するときも同じで、何か確実に簡単にできる方法とかありませんかね。。。


共同作業していると、心臓に悪い

自分がpushしたブランチだと、他のメンバーがコミットしたソースが消えていたり、

自分が書いたソースが、他のメンバーのブランチだと消えていたり。

せめて、差分を表示させて欲しいかも。

ブランチごとに完全に別世界なので、自分のソースが無い世界線とか、他人のソースが無い世界線とか

普通にあってびっくりするし、そうなったときに、2つの世界線を融合させる修正を行わないといけないので、コードを書くより数倍の労力と時間がかかったりしています。

まあ、他にも、GitFlowやGithubのIssueの話とかもあるのですが、書きすぎるとGit信者の方々に

袋叩きにされそうなので、この辺でw

そんなことを言っているうちは、Gitをまだまだ使いこなせていない証拠なんですけどね。。。。