Git commit の手順

自分が作業していく中で、commitをしてpush いるのか手順を振り返って見ました。

  1. commit するまとまりを考える
    手元にある差分を全部コミットする必要はなく、意味のあるまとまりでのコミットを考えます。
    特にリファクタリングのコミットと、実装のコミットはわけます。

  2. git diff [filename]
    自分はaddする前に1ファイル毎見ています。

  3. git add [filename | dirname]
    これも1ファイルづつaddすることが多いです。

  4. git status
    現状確認、不要だったりcommit 分けたいfile が含まれていないか確認する

  5. git diff --cached
    内容確認、commit 対象ファイルの差分を再度確認する。
    間違ったたら git reset HEAD [filename]
    1ファイルずつ差分も確認できる

  6. git commit -v
    コミットするファイルと差分も一緒に表示してくれます。最終確認。

  7. tig
    tig でも一応さっとみます。間違に気づいたらたら git reset HEAD^

  8. git pull --rebase

  9. git push

手順多く見えるけど、慣れると自然にできると思います。

ついに Sublime text 2 導入

vimから乗り換えて、ついにSublime text 2を導入

、、する準備を始めた。

以前紹介されて軽く触った時は、以下の2点がネックに感じていた

  • デフォルトのvimキーバインドがつかいやすくない
  • remote のgit操作ができない?

両方ともpluginで解決しそうだったけど、面倒くさいので後回ししていましたが、 今回再度チャレンジします!

まず、今回は自分が感じているSublime text 2のメリットや可能性について書きたいとおもいます。

あと、Sublime text 2を進めているエントリーは クライアントサイドの方(HTML5css 書いたり など)が多い気がするので、 このブログではなるべく サーバーサイドエンジニアの方がメリットを感じてもらえるところにフォーカスして書いて行きたいと思います。

サクサク動く

mac 上で動くので remote でvimを操作するよりもサクサク動く

検索やjumpが早そう

インデクシングがすごく早いので、検索機能やタグ使ってのjump機能が早そう

プラグインの導入が楽

vim のネックは新しいプラグインの導入が大変。インストールはBundleなどで簡単にできますが、日常使いするまでに、設定いじったり、しっくりくるキーバインド探したりのコストが高い。

Sublime text 2ではコマンドを検索できるのでキーバインド不要かな。

操作が楽

vimに比べて操作が楽かなーと思います。

などなど。

次回は導入手順をまとめて行きたいと思います。

ハイブリッドアプリ入門

前回

前回までで、 基本的なAndroid アプリの実装と、OpenGLレンダリングなどの知識ができました。

今回

今回からはより実用化を意識して、webとのハイブリッドアプリの学習をしていきます。

とりあえずとっかかりのために関連するエントリーを読んで知識をつけます。

http://d.hatena.ne.jp/language_and_engineering/20120713/p1

特にAndroidに関しては http://d.hatena.ne.jp/language_and_engineering/20120710/CreateAndroidAppByHtml5JavaScript

今後ハイブリッドアプリへのアプローチをしていくのにとても重要な知識なので しっかり理解していきたいと思います。

次回

  • 次回からは実際にハイブリッドアプリのサンプルを作る
  • 実際に動いているハイブリッドアプリの実装を確認する

に取り組みたいと思います。

Android アプリ勉強 4週目 その3

前回までは、画像キャッシュやデータ保持の種類を勉強してきました。
今日からはOpenGLレンダリングの基礎を勉強して行きたいと思います。

はじめに

まず、はじめになんでOpenGL使わなきゃいけないのというところを確認。

ネイティブレンダリング (OpenGL ES)
http://www.webtech.co.jp/blog/developer-news/2477/

View ... 通常の表示
SurfaceView ... Canvasの表示に使われる。アプリケーションとは別スレッドで描画処理されるためViewより高速
OpenGL ES ... グラフィックAPI

で、Android OSバージョンと、OpenGL ESのバージョンについて

f:id:watanabe0621:20130310190211p:plain

これからはOpenGL ES2.0 についてキャッチアップしていけばよさそう。

OpenGL 入門 エントリー

良い感じのエントリーを見つけたので順次消化していくことにします。

http://d.hatena.ne.jp/orangesignal/20120813
http://d.hatena.ne.jp/orangesignal/20120814
http://d.hatena.ne.jp/orangesignal/20120818
http://d.hatena.ne.jp/orangesignal/20130113

実際に、上記のエントリー進めていって、詰まったとことかあったら記事にしていきます。

Android アプリ勉強 4週目 その2

初、1週間で2回めのエントリー

10日目

今日は Cache 以外のAndroidにおける データ保存方法について 簡単に調べてみました。

Android データ保存方法

大体こんな感じ、 勉強していきたい方向としては、メモリキャッシュとディスクキャッシュの有効活用らへんになりそう。 FileOutputStreamとかだとアセット管理をしっかり設計したネイティブアプリの方が適していそう。 ディスクキャッシュは、指定容量を超えたら古い順にGCしていく仕組みで、webviewアプリとの相性がよさそうということがわかった。

今回は知識として、吸収するに留めて、具体的なユースケースが見えたら見返して実装に活かそうと思う。

次回は

そろそろOpenGL のサンプルを動かしたいと思う。

http://d.hatena.ne.jp/orangesignal/

あとで

  • Webview アプリと画像キャッシュ について実装してみる
  • 業務で使われているAndroidアプリのコードを読んでみる → ぱーっと見てまだ全然わからなかったら再度勉強

Android アプリ勉強 4週目

mark down記法に移行しました↓

なんだかんだで4週目。。

最初の週はさくさく進んだけど、やっぱりまとまった時間を確保しないと

新しいことの勉強は捗らないなーと感じました。

9日目

作業時間: 2h

作業内容:

  • bug fix

  • Egit使い方 ... ついついterminal でgit の差分確認しちゃうんだけど、eclipse 上でできたほうが効率的なはずなのでpluginいれました。

参考URL:

https://github.com/watanabe0621/ImageRssReader/commit/c2626c1439be5052f7705aa65bfd114ce76a180e

http://sonoshou.hatenablog.jp/entry/20121111/1352655599

コメント:

バグっていた原因を探るのにはまったけど 修正完了。 画像につけていたtag処理の変更コミットがバグってました。

にしても エラーの内容からバグの原因特定できないのはもっと経験つまないとです。

とりあえず画像はしっかりキャッシュされているので、一覧と詳細ページへの行ったり来たりはスムーズになりました。

あと前回との差分見るのに ついついCUI で確認しちゃってたんだけど、Egitなる Eclipse用 git pluginを入れて、Eclipse上からcommit したり 差分確認するようにしました。

これも慣れかな。

次回は

作業内容:

  • cache以外のimage保存方法

をやりたい。

あとで

http://d.hatena.ne.jp/orangesignal/

... open GL 使っているサンプル見つけたので、今週中にはこれに着手したい!

Android アプリ勉強 3週目

 

先週ほとんどできなかったので、その続き。

日記は同じ週は追記追記で行くことにしますー

 

#8日目

作業時間: 1.3h

作業内容:

* ImageCache

* メモリ使用量を抑える為、スクロールさせて実際に必要になったときだけ表示する対処を行う。

参考URL:

http://lablog.lanche.jp/archives/220

 

コメント:

表示がバグっているので、直す。あと詳細viewで なぜか画像が表示されない。。

スクロール時にはちゃんとcacheをload しているっぽいのでそれはOK。

 

# 明日は

作業内容:

* bug fix 

* cache以外のimage保存方法

をやりたい。

 

# あとで

http://d.hatena.ne.jp/orangesignal/

... open GL 使っているサンプル見つけたので、来週はこれに着手したい!