Help us understand the problem. What is going on with this article?

ここがつらいよGit入門

More than 5 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をまだまだ使いこなせていない証拠なんですけどね。。。。

mesaka
元フリーランス的なLAMPの受託開発をメインに仕事をしていた個人事業主(法人化済み)のエンジニア。PHPが好き。Javaも出来る。AWSとかラズパイとか、新しモノ好き。でも、最近自分の会社を辞めて、正社員として就職しました。
Why not register and get more from Qiita?
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away