2011年8月10日水曜日

repo start *** --all

「makenekoが学習したandroid build初心者向けTIPS」 メモ(1)です。


cm4is01やcyangoenmod、はたまたAOSPのsourceをrepo syncした後

repo start *** --all
*** = branch名、例えば「master」とか。

を一度実行しておくと後々ちょっとだけ便利です。

androidのsourceはgitで管理されているのですが、
これをしておくと、repo sync直後の状態をbranchとして記録(?)出来ます。

たとえば、
framework/base/wifi/java/android/net/wifi/WifiStateTracker.java
を少し編集したあと、カレントディレクトリをframework/baseより下にして
git diff
とすると

diff --git a/wifi/java/android/net/wifi/WifiStateTracker.java b/wifi/java/androi
index e2d2a96..755ef93 100644
--- a/wifi/java/android/net/wifi/WifiStateTracker.java
+++ b/wifi/java/android/net/wifi/WifiStateTracker.java
@@ -368,7 +368,7 @@ public class WifiStateTracker extends NetworkStateTracker {

         mSettingsObserver = new SettingsObserver(new Handler());

-        mInterfaceName = SystemProperties.get("wifi.interface", "tiwlan0");
+        mInterfaceName = SystemProperties.get("wifi.interface", "wlan0");
         mDnsPropNames = new String[] {
             "net." + mInterfaceName + ".dns1",
             "net." + mInterfaceName + ".dns2"

とか表示されて、変更点を表示してくれます。


しかし、例えば、framework/base、と、framework/policy/baseはgit上別プロジェクト扱いになるため、
それぞれのフォルダでgit diffを実行しないと、それぞれフォルダの中身の差分が表示されません。