2011/12/02 カテゴリ : Tech  git  バージョン管理 

gitお悩み相談室

こんにちは、浦本です。
今日はgitコマンドに関する素朴な疑問について、Q&A形式でまとめてみました。


【Q】 編集がパーになるのが怖くてcheckoutできません。どうしたら良いでしょうか?
【A】 checkoutに-pを付けましょう。確認メッセージが表示されます。

  1. $ git checkout -p ファイル名

編集をそのまま残したい箇所ではnを、
編集をパーにしてよい箇所ではyをタイプします。


【Q】 addしたらdiffに何も表示されなくなりました。どうしたら良いでしょうか?
【A】 diffに--stagedを付けましょう。コミット待ちのdiffが見れます。

  1. $ git diff --staged
  2. あるいは
  3. $ git diff --cached


【Q】 commitの前に毎回diff --stagedを叩くのが面倒です。どうしたら良いでしょうか?
【A】 commitに-vを付けましょう。diffも一緒に確認できます。

  1. $ git commit -v
GUIより手軽で良いですね。


【Q】 編集途中のファイルを半分だけcommitしたいです。どうしたら良いでしょうか?
【A】 addに-pを付けましょう。編集箇所ごとにaddできます。その後commitします。

  1. $ git add -p ファイル名

checkout -pのときと同様に確認メッセージが表示されます。
addする箇所ではyを、
addしない箇所ではnをタイプします。


【Q】 diffの表示範囲が狭くてどこをいじったか分かりません。どうしたら良いでしょうか?
【A】 diffに-U9999を付けましょう。ファイル全体を見渡せます。

  1. $ git diff -U9999


【Q】 分岐・マージの様子を知りたいです。どうしたら良いでしょうか?
【A】 logに--graphを付けましょう。分岐・マージが可視化されます。

  1. $ git log --graph --oneline

コンパクトな表示にするため、--onelineも付けています。
※この画像はSymfony 2のgitリポジトリを例としています。


【Q】 logを見てもどのファイルが編集されたのか分かりません。どうしたら良いでしょうか?
【A】 logに-pを付けましょう。diff付きでログを見れます。

  1. $ git log -p



【Q】 映画けいおん!が観れるかどうか心配です。どうしたら良いでしょうか?
【A】 チケットのご予約はお早めに。


以上となります。

コメントフォーム

認証
captcha_key
 
 

トラックバックURI

最近の記事

アシアルPHP書籍情報