joppot

コピペで絶対動く。説明を妥協しない

unix

Git diffで新規作成したファイル情報を表示させる

投稿日:

Pocket

planet-eclipse

概要

みなさんこんにちはcandleです。今回はgitのdiffを使ってどの様なファイルが作成されたか確認する方法を紹介します。
gitのdiffは一般にファイルの差分を表示させたりするために使うものですが、少し工夫をすれば、新しく作成したファイルの情報をみれます。


前提

gitがインストールされている。

gitを初期化する

まずは適当に、gitのリポジトリにするフォルダを用意しましょう。私はデスクトップに作ります。フォルダの名前は分かりやすく「shownewfiles」します。

cd Desktop/

mkdir shownewfiles

cd shownewfiles/

2. bash

下のコマンドを入力して、shownewfilsディレクトリをgitのリポジトリにします。

git init


ファイルを作成する

下のコマンドで一連のファイルを作成します。

touch index.html index.css index.js layout.css

index.htmlの中身を書きます。
index.htmlに下の内容を書いて保存しましょう。

<!doctype html>
<html lang="ja">
<head>
  <meta charset="UTF-8" />
  <title>hello</title>
</head>
<body>
  <h3>new file</h3>
</body>
</html>


git diff で新しいファイルの情報を出す

ひとまず、git diff してみましょう。

git diff

Shared Menubar

何も表示されないと思います。

対策として、ひとまず、gitのステージ(インデックス)に差分をあげます。

git add .

ステージに上げたファイルとの差分を取ることで新しく作成したファイルを確認できます。

git diff --staged

2. bash-3

上の表示はファイルの書き換え内容まで詳しく表示されていますが、どの様なファイルが作られたかどうか確認するには多少見づらいと思います。

ファイル情報の概要だけを知りたければ、–statオプションを付けて表示してみましょう。

git diff --staged --stat

Shared Menubar-1

新しく作成されたフィアルがわかりました。


新しく作成したファイルを削除する

例えば、ステージに新しく作成したファイルの内、実はコミットしたくないファイルが合ったとします。
削除したいファイルをステージからおろします。

git reset ファイル名

今回はlayout.cssを削除するという体で説明します。下のコマンドでlayout.cssをステージからおろします。

git reset layout.css

複数のファイルがある場合はステージにある全てのファイルをおろして編集した方が楽です。

git reset .

layout.cssを削除します。

rm layout.css

再び、ステージにツリーの状態をアップします。

git add .

ステージの差分を表示してみましょう。

git diff --staged --stat

2. bash-4

layout.cssがステージから消えました。
あとはコミットすれば良いと思います。

まとめ

もう少し簡単な方法があるかもしれませんが、今のところ私はこのやり方がベストなので、これを使っています。

スポンサードリンク

「為になったなぁ」と思ったら、シェアお願いします。

-unix
-

執筆者:


comment

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

関連記事

正規表現を極めるその1

概要 みなさんこんにちはcandleです。今回から正規表現を1から100まで極めようと思います。 正規表現って、使えると便利ですが、それを勉強して使いこなせている人って少ないと思います。この機会にぜひ …

Unixの画像処理ソフト「ImageMagick」をmacports経由でインストールする

概要 みなさんこんにちはcandleです。今回はImageMagickのインストールを行いましょう。 ImageMagicなのですが、これは画像を様々な要望に答えて処理してくれるソフトです。ターミナル …

emacsでバックアップファイルを作らない設定

概要 emacsは初期設定のままだと、自動的にバックアップファイルが作られます。 バックアップファイルとはemacsの作業中、何かの拍子に閉じちゃったりした時に復元されるものなのですが、正直、邪魔です …

ターミナルの設定ファイルを作る[.bash_profile]

概要 こんにちはcaldheです。今回はMacにあるターミナルの設定ファイルの作り方です。ターミナルを初期設定のまま立ち上げるとbashというシェルが動きます。シェルというのはUnixのインターフェイ …

mecabで文章を分かち書きする

概要 みなさんこんにちはcandleです。今回は「分かち書き」をしてみましょう。 分かち書きというのは文章を品詞毎に分ける事です。品詞とは名詞や動詞などのことです。 ちょっとみてみましょうか。 「私は …

  • English
  • 日本語

プロフィール


ベンチャー企業のCTOをやってます。大学時代にプログラミングを始め、javaから入門し、C++へて、PHPへと進み、会社ではRailsを使用。自動化が大好きなプログラマー

スポンサードリンク

アーカイブ