ゆうなんとかさんの雑記帳的な。

Twitterで踊ったり音ゲーしたりしてるあの名前がよくわからない人が書いてるらしいよ。

git addで計なファイルをステージングしてしまった件について

先ほど長くなっていたJSファイルをいくつかのファイルに小分けしたのですが、これをpushしようとしたら余計なファイルまで一緒に上げてしまいました。こんな感じに…f:id:yuu_xxxx:20120805145057p:plain何も考えずにgit addしたらこんなことになってしまったんだよぅ…
pushしちゃったあとはこっちで消してもGitHubのリポジトリには反映されないようなのです。事実、近い時間でpushを繰り返したものの、むこうのリポジトリにはファイルが残ったままです。こういう時は、

git rm <消したいファイル>

で消せるようです。
でも、これキャッシュだから保存したり書き換えたりするたびに毎回現れるんですよね…スクリプトか何かで余計なファイルを消そうかなと考えて少し調べていたところ、キャンセルする方法がありました。

$ git rm -cache <キャンセルしたいファイル>

で当該のファイルをステージから下ろすことができるようです。でも毎回これ打つのは面倒だし、小難しいことは考えずに

$ git add .

でステージ上げたいファイルだけをステージングしたいんです。そこで何かないかなって思っていたらありました。
.gitignoreというファイルを作ってディレクトリに置く
超簡単ですね。中身も1行にひとつづつ、除外したいファイルの名前をワイルドカードで書くだけみたいです。ということは、こういうgitignore書けばいいんですね。

$cat .gitignore
*~
#*

否定、つまりステージングしたいファイルは行頭に!を書けばいいようです。

とまあ一旦は解決したようにも見えますが、実はもうひとつ残念なお知らせがあります。


とか言ってますが、たぶんするつもりもないのにマージしちゃったっぽいです。戻したいんだけどどうしたら…