git rebaseとCONFLICTの解消方法について

git No Comments »

git rebaseとCONFLICTの解消方法について

% git checkout -b feature1
(編集)
% git add .
% git commit -m 'hoge'

などして

o--o--O  < -- develop
       \
        a--b--c <-- feature1

こうなる。いっぽうdevelopブランチにも変更が加わり

o--o--O--o--o--o < -- develop
       \
        a--b--c <-- feature1

developのHEADが進んでしまった場合、feature1ブランチで

% git rebase develop

すると

o--o--o--o--o--O < -- develop
                 \
                    a'--b'--c' <-- feature1

とdevelopで施された変更をfeature1に適用できる。だけど、往々にしてCONFLICTが起きる。CONLICTが起きてしまった場合は

% vim conflict-file1 conflict-file2

で編集

% git add conflict-file1 conflict-file2

次に、commitではなく

% git rebase --continue

する

http://d.hatena.ne.jp/Seasons/20090329/1238351273に書いてあった。

囲ってるダブルクォート「”」をシングルクォート「’」に変換したい

vim No Comments »

"ほげほげ" -> 'ほげほげ'

Vimでこう変更したい場合にはカーソルを"〜"内に移動して「cs"'」とタイプする。要surround.vim。

surround.vimの使い方を忘れた場合はsurround.vim のつかいかたを見る。

JSONをシングルクォートで書いてしまった場合などにも使えそう。

EC-CUBEの商品ページにfacebookのいいねボタンをつける

EC-CUBE, PHP No Comments »

Like Button - Facebook開発者
ここで適当に値を設定して[Get Code]する。

hrefに商品ページのURLをセットする必要があるらしいのでこうした。

これをdetail.tplに貼り付ける。

PostgreSQLでテーブルの一覧を見る

Postgresql No Comments »

phpPgAdminなどがあれば特に必要ないんですが、コマンドラインでPostgreSQLのテーブル一覧を取得する方法。

% su postgres
$ psql db_name
# \z

おわり。MySQLだと「SHOW TABLES」とのこと。

参考: MOVION.net » MySQL,PostgreSQLのよく利用する確認操作

GoogleDocsのSpreadsheetで行を固定する方法

etc No Comments »

GoogleDocsのSpreadsheetで行を固定する方法メモ。

GoogleDocsの見出し行の固定はView > Freeze rowsでできるのね。
@kyokutyo
kyokutyo

Vimを縦分割する

vim No Comments »

:vsplit

:vsあたりまでタイプしてtabします。
縦分割した後はCtrl+w, lで右に移動、Ctrl+w, hで左に移動。

例えば、左にHTMLファイルを表示して構造を確認しながら、右でCSSやJSを書いたりすると便利です。

IEに対応する際の注意点

CSS, IE, JavaScript No Comments »

ChromeやFirefoxで作っていって、最後にIEの対応をする場合に注意するポイント。

CSS

IEの場合だけ追加で読み込むCSSファイルを用意します。
IE用のCSSファイルを読み込む部分は<!--[if IE]>〜<![endif]--> で囲っておくと他のブラウザではコメント扱いされます。

  • rgba(0,0,0,.3) などとカラー指定してる場合、#000とかに指定方法を変える
  • 半透明の背景はbg-xxx-ie.pngなどPNGファイルを用意してbackgroundの指定を上書きする(IE6は・・・)
  • 角丸なんかやり方あったかもだけど、、ひとまず対応しない
  • シャドウもやり方ありそうだけど、これもひとまずは対応しない IE進化待ち

JavaScript

jQuery使ってるとけっこう吸収してくれる。JSはファイルを分けずに対応してる。

  • number + 'px' としてるところを parseInt(number) + 'px' と型を揃える
  • textareaの改行がおかしい場合はescapeした後にreplaceする replace(/%0D%0A?/g,"\r\n")でうまく動いてるみたい (半角スペースなどはまた戻す必要がある)
    他によい方法を模索中、、
  • hiddenなinputのvalueに値を突っ込むことができず、type="text"だとOKぽいのでCSSでdisplay: none;して隠す

ひとまずこんな。

IEでtype=”password”なフォームに入力した文字が見えない

CSS, IE No Comments »

「IEでtype="password"なフォームに入力した文字が見えない」というのは
●や*に変換されてしまうという意味ではなく、空っぽのように見えてしまう症状。
バージョンは8。Webフォントを使ってる場合に起きるのかも。

文字の色がIEだけ背景と同じ色になってるのか、など疑ってみたけど違うらしい。結局↓こういうことだったのだけど、使ってたWebフォントがまずかったのか、Webフォント全般NGなのかは不明。

IEでWebフォント使ってるページのtype="password"なフォームに入力した文字が何も表示されない●とか*とか。見えないけど文字は存在してて選択はできる。IEの場合だけ適用するCSSファイルで font-family: sans-serif; したら●が見えた。
@kyokutyo
kyokutyo

font-family 上書きで解決。覚えとこう。。

Issue Driven Developmentの流れ

dev No Comments »

Issue Driven Developmentについて。

Issueてなんだ → 「issueは、“議論されるべき課題”であり、必ずしもすでに害や困難が起こっていることを意味しません」(problemとissueの違いについて - 英語 - 教えて!goo)
「タスク&バグ」という感じで捉えています。

Issueを書き並べて、いっこいっこ潰していく開発手法です。Ticket Driven Developmentと同じ。
[Think IT] 第3回:チケットドリブン開発でバグ削減! (1/3)

開発の流れは以下。Github使ってやってます。

マイルストーンの設定

Githubのissuesではマイルストーンを設定することができます。「○○機能リリース」などと設定して使っています。

Issueの発行

現システムに対しての改善点や必要な機能などを洗い出し、どのマイルストーンに対して必要なものかを設定します。登録時にできるだけ担当者も決めるようにします。

開発

自分にAssignされたIssueをひとつ選び、作業に入ります。Issueごとにブランチを切るとよいです。(Issue #111の場合はこんな)

% git checkout -b issue111

(適当に作業します)

% git add .
% git commit -m '○○機能追加.Close #111'

コミットログを↑のように書いておくとpush時にGithubのIssueが閉じられます。

% git checkout master
% git merge issue111
% git push

ここまでやるとGithubのIssueが閉じられます。

% git branch -d issue111

push後、不要なブランチを消して次のIssueに取り掛かります。これの繰り返しです。

作業をしてるとIssueの内容と違うポイントが気になって編集したくなったりしますが、そこはぐっと我慢してちゃんとIssueを発行し別ブランチで作業するようにします。後で変更点を確認したくなった場合に探しやすいです。
TiDDの説明にもありますが、チケット無しのコミット禁止を守ることで意図のわからない変更がなくなってよいです。

ひとつのissueに向かうことで作業が散漫にならなくてよいです。あと、issueがどんどん消えて行くととても気持ちよいです。

パスワード付きのzipファイルの作り方

Linux No Comments »

Linuxでパスワード付きのzipファイルの作り方。original_file.txtをnew_file.zipに圧縮する場合。

% zip -e new_file.zip original_file.txt
Powered by WordPress | WP Theme & Icons by N.Design Studio
Entries RSS Comments RSS Log in