ブックマーク / anatoo.hatenablog.com (3)

  • gitでpushしたコミットが消える現象の対処法、もしくはgit reflogの紹介 - id:anatooのブログ

    gitを使っていて、「pushしたはずのコミットがいつのまか消えた!」という話をよく聞く。はじめて遭遇すると、「あれ?コミットしたはずのコードが消えてる!今日の作業が台無しに!」と思って焦ってしまう。この記事ではそれの原因とgit reflogを使った対処法を紹介する。 なぜ起きるのか? gitにはブランチがあり、ブランチごとにコミットを記録できる。gitのリポジトリの作業領域は現在のブランチのものだ。例えばgit branchで確認すると現在のブランチを確認できる。 git branch * masterなんらかのブランチで作業するのが普通だが、現在の作業ブランチがno branchの状態になってしまうことがある。これは、コミットのハッシュIDを直接checkoutしたり、リモートのブランチを直接checkoutした時に起こる。そのときには以下のような警告が起きる。 $ git chec

    daiki_17
    daiki_17 2015/06/29
  • 適当なスクリプトをデーモン化するのにSupervisorが便利 - id:anatooのブログ

    適当なスクリプトをデーモン化しようと思った時の典型的な要件が以下であるが、この記事でも紹介したpython製のプロセス管理ツールであるSupervisorを使うことによって解決できる。 プロセスの生死の監視する プロセスが死んだら勝手に再起動する 標準出力やエラー出力のログを取る 場合によっては複数プロセスを起動したい プロセスのステータスを簡単に確認したい この記事では、プロセス管理ツールSupervisorの導入を簡単に紹介する。 インストール easy_installからインストールできる。そもそもeasy_installが入ってない場合は以下みたいにインストール。 $ curl -O http://peak.telecommunity.com/dist/ez_setup.py $ python ez_setup.pySupervisorをeasy_installからインストールしま

    daiki_17
    daiki_17 2014/04/25
  • タスクランナーgulp.js最速入門 - id:anatooのブログ

    相変わらず仕事ではデザインやりつつJavaScript書いている。 タスクランナーとしてGrunt.jsを使っていたけれども、使ううちに段々不満がでてきた。遅かったり、記述が冗長になりがちでつらかったので最近になってgulpに乗り換えた。 gulpは良い。タスクは自動的に並列に実行され、かつストリームで処理されるので速いし、タスクの記述もストリームベースの書き方のおかげでGrunt.jsに比べるとだいぶ短くなる。 ただ、そこらにあるgulpをちょっと試しただけの日語の記事やドキュメントをみてても実際のプロジェクトで使えるレベルまでの知識を得られず学習に一日かかった。 この記事では、gulpをまともに使えるようになるまでに必要な知識を書く。 導入とHelloWorld まずは導入。npmからgulpをインストールする。 $ npm install gulp -g $ gulp -v [gu

    タスクランナーgulp.js最速入門 - id:anatooのブログ
    daiki_17
    daiki_17 2014/04/21
  • 1