0
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?

gitがダメないくつかの理由

Last updated at Posted at 2022-10-19

gitのダメなところを記載する

  • 品質が悪い
    • pythonのパッケージ?とかもともと突っ込んで、普通に使ってたら3000?10000コミットとかになったらcloneで固まるようになった。こんなん仕事で使えるの?
      ※ 下は試しにcloneを分解して実行してみたところctrl-cたまにfetch完了してる

      $ git fetch --depth 1
      remote: Counting objects: 727, done
      remote: Finding sources: 100% (727/727)
      remote: Total 727 (delta 31), reused 554 (delta 31)
      Receiving objects: 100% (727/727), 1.21 GiB | 13.53 MiB/s, done.
      Resolving deltas: 100% (31/31), done.
      

      → これあれだな、リモートをsshで拾うときの問題だな
      → あれかsshの何かのタイムアウトかてことはsshプロトコルのエラー実装がごみざるなgitがギルティ

    • 設計思想がだめ
      なんだろうな、ワーキングコピー、ステージング、ローカルリポジトリのHEAD、リモートリポジトリのHEADとfetchされたリモートリポジトリのHEADがあってそれぞれのコマンドがどれにアクセスしてるかわからんgit diffはどれとどれを比較してるんだい?

    • git diff の引数でもわかる

      git diff ファイル名
      git diff コミットID1 コミットID2 ファイル名
      

      → git statusがワーキングとリモートとのチェックをしないのが感覚とずれてるんだな
      ことごとく感覚と違う動きをする

CUIじゃなかったらそんなに違和感は無いのだろうか

(2025年3月1日)追記
重複するところはあるけれどいまいまの感想を書いてみる

  • 設計思想がゴミ

    • ワーキングディレクトリの内容を全くまったく大事にしないのがだめ
    • ブランチの切り替えでどのファイルが継続されてどのファイルが切り替わるのか意味不明。恐怖しかない
    • コマンドが不明、複雑すぎるのでそれを改善するまとめたコマンドを追加してさらに意味不明になっている。
    • svn lsの代替がない。このファイルがどのコミットと認識されているか分からんvscodeがあればなんとか
      結局編集しててどこかの過去コミットと同じファイルになったらそれになる?いままでのコミットすっ飛ばして最新の内容にしたら最新のコミットとして扱ってくれるの?rebaseかけると壊すけど?
  • なんか最新の断面を管理というよりチェンジセットの管理をしている訳でそれが周知されていない

カーネルだけに使ってろ

0
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
0
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?