コミュ障だから明日が僕らをよんだって返事もろくにしなかった

何かを創る人に憧れたからブログをはじめたんだと思うよ

ギットわかるマン

Git 完全に理解した(フラグ)

はい、おはようございます。GitとGitHubの違いは分からないけど、DockerとDockerHubの違いはなんとなく理解できてしまう超絶にわかマンです。まあ、Hubとか付いたらSNS化したコミュニティになるんだと思ってる。知らんけど……。

gitimmersion.com
そんなわけで Git 全然わからんマンがここやってみました。ここをやることで、分散バージョン管理システム(Git)の強力で洗練された機能を理解することができるって書いてあるんでやってみました。



やってみた

■ 設定編 1~11 ぐらい
Rubyインスコしろとか言われるけど、別にコードを実行することないからぶっちゃけいらない気がする。適当なテキストファイル作ってVimみたいなコマンドラインエディタの練習台にする方がいい気がした。

.gitconfig

[alias]
  co = checkout
  ci = commit
  st = status
  br = branch
  hist = log --pretty=format:'%h %ad | %s%d [%an]' --graph --date=short
  type = cat-file -t
  dump = cat-file -p

んで、とりあえずこの推奨Alias設定が一般的なものなのかよくわかんないから様子見(設定しない)で実行して進めました。そのスジの人的にはこれアリなのかどうかコメントいただけると嬉しい。git histはありかもしれないと思ってる。

あとこっちも…

alias gs='git status '
alias ga='git add '
alias gb='git branch '
alias gc='git commit'
alias gd='git diff'
alias go='git checkout '
alias gk='gitk --all&'
alias gx='gitx --all'

alias got='git '
alias get='git '

このあたりのオプションの割り当ては他と被りそうな気がして気になる、getとか……。go言語系のやつとなんかかぶりそうな気もしなくもない…。まあいいや、こちらもそのスジの人の見解を見て設定するかどうか決めようと思います。


リポジトリ基本操作編 12~26ぐらい

git init(初回) ,[Working Directory] ->git add ->[Staging]-> git commit -> [Repository]

上の行き来に関しての基本操作についての話。まだブランチは切らない。


リポジトリ操作編 27~38ぐらい
ブランチ切ったり、マージしたり、コンフリクトの対処方法を覚えたりとかの話。


■ リモートリポジトリ操作編 39~50ぐらい

[local Repository] <--> [Remote Repository]

上の行き来に関しての基本操作について大体。PC一台で作業しているとこの辺りから必要性がよくわからなくなるやつ。GitHubと連携させたい場合は必修項目なんだけどね……*1

そういえば、以下コマンドgit daemonでLAN内利用*2もできたんですね。知らんかった。Git奥深いですね、僕使う機会ないけど……。

git daemon --verbose --export-all --base-path=.

オプションとかに関しては参考リンクみながら味付けして(丸投げ)。僕は使う機会ないからね仕方ないね……。

参考
Git - Git デーモン


感想

久しぶりに黒い画面でGitいじった。理解は深まったかどうかはどうなんでしょうね……?

*1:GitHubの方も最悪Web上でいじれるからいらないと言ってしまえばいらないかもしれない……

*2:* GitHubを使わないでリモートリポジトリ操作する