tsurushuuの日記

 | 

2011-11-30

.patchを分割

22:09

git のformat-patch で作成できる.patchファイルは、複数のコミットを一つのファイルで出力出来る。

だが、これをいっぺんにgit am などで適用しようとすると、どこかでミスる場合があり、

そんな場合は、patch ファイルの中を分割して適用すると、どこがダメなのかわかりやすい。

そこで、patchファイルを分割するコードを書いてみた。

(patchファイルの正式なフォーマットとか調べてないので、ちょっと適当。)

また、line endingをまったく考慮していないので、実際には面倒くさいことになる。

デフォルトでは CRLF でファイル出力されてしまい、失敗してしまうので、テキストエディタなどで変換が必要。

hSetNewlineMode で、モードをセットしてやれば、制御は可能だが・・・

http://haskell.org/ghc/docs/6.12.2/html/libraries/base-4.2.0.1/System-IO.html#25

また、パッチ内で、実際に、line endingの変換をしてしまっている場合などは、そもそも、デフォルトのline modeをセットする方法では解決できない。



このコードを書いていて気づいたが、そもそも、git am が失敗するような状況は、line endingや文字コードの問題が多いので、今回のコードで分割したところで、

あまり解決にはならなかったかもしれない。。。

JaydenJayden2012/01/06 01:01THX that's a great aenwsr!

eohlapxmbueohlapxmbu2012/01/06 03:11HcWW2d <a href="http://cimsmxfwpyxr.com/">cimsmxfwpyxr</a>

yujgtqzunfyujgtqzunf2012/01/08 20:34pcSl34 <a href="http://zanoftreidal.com/">zanoftreidal</a>

poosxiopoosxio2012/01/09 00:51G0dQ2l , [url=http://gebrxhszbraq.com/]gebrxhszbraq[/url], [link=http://mqdksrdekhfc.com/]mqdksrdekhfc[/link], http://bwistznijtlm.com/

 |