轉載:http://www.zzzyb.com/html/fuwuqijishu/Linux/20090822/13345.html
感謝原作者!
-----------------------------------------------------------------------------------------------------------------
1、首先安裝Git依賴的一些包.
yum install zlib-devel
yum install openssl-devel
yum install perl
yum install cpio
yum install expat-devel
yum install gettext-devel
接下來,如果你已經安裝過Curl了,那麼跳過這一步,沒有的話,就裝一下.
wget http://curl.haxx.se/download/curl-7.18.0.tar.gz
tar xzvf curl-7.18.0.tar.gz
cd curl-7.18.0
./configure
make
make install
確定一下ld.so.conf檔案裡有/usr/local/lib,這個是為git-http-push準備的.
vi /etc/ld.so.conf
#插入下面的代碼
/usr/local/lib
儲存檔案,接著運行:
/sbin/ldconfig
最好,我們下載Git並安裝它
wget http://www.codemonkey.org.uk/projects/git-snapshots/git/git-latest.tar.gz
tar xzvf git-latest.tar.gz
cd git-{date}
autoconf
./configure --with-curl=/usr/local
make
make install
2、下載 repo 工具
$mkdir $HOME/bin
$vi .bashrc
加入
export PATH=$HOME/bin:$PATH
$source .bashrc
$ curl http://android.git.kernel.org/repo > $HOME/bin/repo
$ cd $HOME/bin
$ chmod +x repo
3、 匯出 android 項目
$ cd
$ mkdir Android
$ cd Android
$ repo init -u git://android.git.kernel.org/platform/manifest.git
並完成提示的配置,這樣我們建立的目錄就已經和 Google 的 android 源碼庫建立了連結。
4、 開始下載 android platform 的原始碼
$ repo sync
由於 android 的源碼很大,現在完整的代碼已經高達 3G 以上,所以最分檔案夾進行同步下載。如要下載 kernel :
$repo sync kernel
如果想拿某個branch而不是主線上的代碼,我們需要用-b參數制定branch名字,比如:
repo init -u git://android.git.kernel.org/platform/manifest.git -b cupcake
另一種情況是,我們只需要某一個project的代碼,比如kernel/common,就不需要repo了,直接用Git即可。
git clone git://android.git.kernel.org/kernel/common.git
這也需要不少的時間,因為它會把整個Linux Kernel的代碼複製下來。
如果需要某個branch的代碼,用git checkout即可。比如我們剛剛拿了kernel/common.get的代碼,那就先進入到common目錄,然後用下面的命令:
git checkout origin/android-goldfish-2.6.27 -b goldfish
這樣我們就在本地建立了一個名為goldfish的android-goldfish-2.6.27分支,代碼則已經與android-goldgish-2.6.27同步。我們可以通過git branch來列出本地的所有分支。
5、同步版本庫
使用repo sync命令,我們把整個Android代碼樹做同步到本地,同樣,我們可以用類似
repo sync project1 project2 …
這樣的命令來同步某幾個項目
如果是同步Android中的單個項目,只要在項目目錄下執行簡單的
git pull
即可。
現在,就可以做別的事,讓電腦自動完成源碼的下載工作。