|
|
||
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や文字コードの問題が多いので、今回のコードで分割したところで、
あまり解決にはならなかったかもしれない。。。
Jayden2012/01/06 01:01THX that's a great aenwsr!
eohlapxmbu2012/01/06 03:11HcWW2d <a href="http://cimsmxfwpyxr.com/">cimsmxfwpyxr</a>
yujgtqzunf2012/01/08 20:34pcSl34 <a href="http://zanoftreidal.com/">zanoftreidal</a>
poosxio2012/01/09 00:51G0dQ2l , [url=http://gebrxhszbraq.com/]gebrxhszbraq[/url], [link=http://mqdksrdekhfc.com/]mqdksrdekhfc[/link], http://bwistznijtlm.com/