会社でGitを導入するとかしないとかいう話があって、もし使うことになってもあたふたしないように。
Linuxもターミナルもさっぱりーみたいな人が多いみたい(勝手ないめーじ)やので、みんながみんな強制導入!ってのは運用としてメリットないんじゃないかなーと個人的には思ってたり。
はてさて。
インストール
あちこち調べると、インストールは最新版を手に入れるためにもソースからやれと書いてありました。
でもソースからインストールしたくない派としては、どうにかしてyumで・・。
まぁ、リポ選べば普通にあるみたいですけど。
sudo yum install git --enablerepo=rpmforge
まぁ、コマンド打つまでもなくインストール済だったっていうね・・。
さくらVPSてgit標準装備なん?今となっては知る由もなしw
考え方的なところ
中央のリポジトリだけでなく、ローカルにもリポジトリを持つ体系。
ローカルってのは物理的にローカルPCというわけではなく、中央のサーバー以外のところって意味であって・・。
いわゆる黒い画面がダメなタイプの人への助け舟、GUIクライアントも沢山あるものの、それはあくまでローカルPCにローカルリポジトリを作った場合の話。
sshでサーバーにつないで、そこのサーバーのファイルをGUIで見るツールってあるんかな?
Gitコマンドのメモ
init / clone
いちばん最初。
自分で0からはじめるプロジェクトの場合はinitすることで管理開始。
そうでなければどこからかcloneすることで管理開始。
プロジェクトのディレクトリ内に、.gitディレクトリがあるかどうかが管理してるかどうかの違い。
なのでこの.gitを削除しちゃえば、さよならgit管理っと。
add
作成したファイルや修正したファイル、とにかくファイルをgitで管理するためには、このコマンドでgitにファイルの存在を知らせる必要がある。
ステージングするともいうらしい。
git add .
これでいまのディレクトリ内のファイルを全部addできる。
commit
自分のリポジトリに対して、作業結果をセーブするのがコレ。
逆に言うと、ファイル自体の修正+ファイル保存では、git上のセーブデータにはなってないってこと。
そしてこのコマンドでセーブできるのは、前のaddで管理対象になってるもののみ。
コミットしようとコマンドを叩いたとき、addされてないファイルがあれば教えてくれるので安心。
基本的にはgit管理下のディレクトリでは、全ファイルが管理対象となるのが理想。
どうしても管理したくないファイルは、例外として設定する。(.gitignore)
git commit -a
ちなみにコレすると、addしてなくても勝手にコミットしてくれる。
はてな的には非推奨らしい。
コミット時にはコミットログを残す必要があって、viが勝手に起動。
エディタ開かず済ませたい場合は、こう。
git commit -m 'ここにめっせーじ'
branch
git branch second
secondブランチ作成
からの
checkout
git checkout second
もう一度branchコマンド使えば、現在のブランチ一覧と現在のブランチが見れるーよ。
merge
# secondブランチでなんかファイル修正 # 修正したらaddしてコミット # 修正結果を本家にくっつけよう! git checkout master git merge second
まぁ小規模な内容やったりすると、なぜブランチを切るのかわからんけど・・そこは考えたら負けってやつよね。
そのほか
addしたファイル削除
git reset HEAD -- fileName
commitしたファイル削除
git rm fileName
ブランチ削除
git branch -d branchName
こっから先
Gitぽいところというか、真骨頂はこっから先です。
今までだと、個人としてのファイル管理をちょっと堅牢にしただけっていう。
意味のあるようで意味のない感じです。
PullとかPushとかやらなきゃ損損!なんかな?
参考:イラストでわかる!git入門の入門 : アシアルブログ - http://blog.asial.co.jp/894
ここのシリーズは毎度おもしろい上にわかりやすい!
参考:hatena/Git-for-Designers · GitHub - https://github.com/hatena/Git-for-Designers
参考:Git - Book - http://git-scm.com/book/ja
ちょっとむずかしいけど、読んでて損なし。
というかこっからが真骨頂。