60,000 commits

我々のOSを研究しているメンバは,研究の過程でよくLinuxのソースコードを読んだり変更したりします.最近は,Linux 2.6.31 ベースの研究用コードを 2.6.37 に移動させる,rebase という作業をみんなでやっています.

これが,なかなか大変な作業で…

通常のrebaseは,2.6.31 からブランチ(派生)した我々のコードを 2.6.37 を起点として再構成(rebase)することを指すのですが, 今回は,わけあって,その逆を試しています. つまり,2.6.31-37の差分を我々のコードの先にrebaseしようとしています.

2.6.31-37の間には,何と約6万コミットもあります. つまり,約6万回の意味ある変更が加えられたということです.

バージョン管理ツールGitのrebase機能を使って,変更のコンフリクトなしでフルオートでrebaseできた場合でも,約2日間計算機を回しっぱなしの作業です.実際には,2.6.31-37 で発生したコンフリクトを再び体験してしまうので,これらを手動で解決するすることになります.

とても手動でコンフリクト解決をやってられないので, それらを自動化するスクリプトを新たに書いているところです. これで今後の作業が楽になるハズです.rebaseが楽しくなる予定です.



Comment

No comment