タグ

ブックマーク / mrgoofy.hatenablog.com (4)

  • git diffで比較した差分のファイルだけを抽出するスクリプト - hogehoge foobar Blog Style Beta

    HTML等をgitで管理していると、サーバーへのアップロード用のファイルとしてコミットした差分のファイルだけを抽出したい事があります。 「git diff」で差分の表示は出来るのですが、ディレクトリ構造を保持した状態でのファイル抽出みたいな事は出来ないようだったので、Perlでスクリプトを書いてみました。 ※bashとかでも書けると思いますが、なんとなくPerlで書いてみました。 「git diff --name-only」で差分のファイル名を取得 普通にgit diffを使うと・・・ gitでの差分の表示には「git diff」を使用しますが、そのまま使うとファイルの内容まで表示されてしまいます。 $ git diff HEAD^ diff --git a/bar.txt b/bar.txt new file mode 100755 index 0000000..9e74262 ---

    git diffで比較した差分のファイルだけを抽出するスクリプト - hogehoge foobar Blog Style Beta
    InoHiro
    InoHiro 2014/02/14
  • git addでステージングしたファイルをアンステージング(キャンセル)する - hogehoge foobar Blog Style Beta

    git add を実行あとで修正していなかった部分に気づいてしまった場合や、 「git add .」で間違って.swpとかのバックアップファイルがステージングに入ってしまった場合に、 git addをキャンセルする方法です。 コマンドの構文 ファイルをキャンセルする場合 git rm --cached ファイル名 ディレクトリをキャンセルする場合 git rm -r --cached ディレクトリ名 git rmは、Working Tree (作業コピー)と index からファイルを削除するコマンドですが、 --cachedを指定する事で、 indexからのみファイルを削除する事ができます。 http://blog.s21g.com/articles/960 指定する、ファイル名やディレクトリ名にはワイルドカード(*.swp等)が使用できます。 間違って要らないファイルをgit addし

    git addでステージングしたファイルをアンステージング(キャンセル)する - hogehoge foobar Blog Style Beta
    InoHiro
    InoHiro 2013/04/05
  • diff & patch コマンドでのパッチを適用する方法 - hogehoge foobar Blog Style Beta

    diffとpatchコマンドを使うとファイルの変更を別のファイルに簡単に適用することができます。 例えば、サイトでWEBサーバーを複数台で運用していて1台のWEBサーバーに行った設定ファイルの変更を他のサーバーに適用するときなどに使えます。 基的な作業の流れ ファイルへのパッチ適用を行う際はこんな感じです。 diffコマンドでパッチファイルを作成 作成したパッチファイルを元に、patchコマンドでパッチを適用 パッチファイルの作成 パッチファイルの作成にはdiffコマンドを使用します。コマンドの書式は以下のような形になります。 $ diff -u(または -c) 変更前のファイル 変更後のファイル > パッチファイル名オプションの「-u」はパッチファイルを、unified diff形式で出力するという指定です。 「-c」の場合はcontext diff形式での出力になります。 「-u(ま

    diff & patch コマンドでのパッチを適用する方法 - hogehoge foobar Blog Style Beta
    InoHiro
    InoHiro 2012/05/08
  • git commitをやり直しする&取り消しする(「get commit --amend」と「git reset」) - hogehoge foobar Blog Style Beta

    git commitを実行あとでコミットをやり直したり、コミット自体を取り消す方法です。 直前にしたコミットをやり直す(git commit --amend) 直前にしたコミットをやり直す場合、「git commit --amend」を使用します。 例えば、直前のコミットログが以下のような状態だったとします。 実は直前のコミットに含めるべきであった「hoge.txt」が含まれていませんでした。 コミットログ(git commit --amend 実行前) $ git log commit cca638b48b4c8be7ad5432f7882497534b04e2b4 Author: mrgoofy <hogehoge@example.com> Date: Wed Sep 8 23:03:57 2010 +0900 2nd Commit.-> New Add File : bar.txtこ

    git commitをやり直しする&取り消しする(「get commit --amend」と「git reset」) - hogehoge foobar Blog Style Beta
    InoHiro
    InoHiro 2011/03/17
  • 1