亚洲av成人无遮挡网站在线观看,少妇性bbb搡bbb爽爽爽,亚洲av日韩精品久久久久久,兔费看少妇性l交大片免费,无码少妇一区二区三区

  免費(fèi)注冊(cè) 查看新帖 |

Chinaunix

  平臺(tái) 論壇 博客 文庫(kù)
最近訪問板塊 發(fā)新帖
查看: 6057 | 回復(fù): 0
打印 上一主題 下一主題

andriod git repo 使用方法 [復(fù)制鏈接]

論壇徽章:
0
跳轉(zhuǎn)到指定樓層
1 [收藏(0)] [報(bào)告]
發(fā)表于 2010-02-23 15:23 |只看該作者 |倒序?yàn)g覽
Git 是 Linux Torvalds 為了幫助管理 Linux 內(nèi)核開發(fā)而開發(fā)的一個(gè)開放源碼的分布式版本控制軟件,它不同于Subversion、CVS這樣的集中式版本控制系統(tǒng)。在集中式版本控制系統(tǒng)中只有一個(gè)倉(cāng) 庫(kù)(repository),許多個(gè)工作目錄(working copy),而像Git這樣的分布式版本控制系統(tǒng)中(其他主要的分布式版本控制系統(tǒng)還有
[color="#0000ff"]BitKeeper

[color="#0000ff"]Mercurial
、
[color="#0000ff"]GNU Arch

[color="#0000ff"]Bazaar
、
[color="#0000ff"]Darcs

[color="#0000ff"]SVK
、
[color="#0000ff"]Monotone
等),每一個(gè)工作目錄都包含一個(gè)完整倉(cāng)庫(kù),它們可以支持離線工作,本地提交可以稍后提交到服務(wù)器上。分布式系統(tǒng)理論上也比集中式的單服務(wù)器系統(tǒng)更健壯,單服務(wù)器系統(tǒng)一旦服務(wù)器出現(xiàn)問題整個(gè)系統(tǒng)就不能運(yùn)行了,分布式系統(tǒng)通常不會(huì)因?yàn)橐粌蓚(gè)節(jié)點(diǎn)而受到影響。因?yàn)锳ndroid是由kernel、Dalvik、Bionic、prebuilt、build等多個(gè)Git項(xiàng)目組成,所以Android項(xiàng)目編寫了一個(gè)名為Repo的Python的腳本來(lái)統(tǒng)一管理這些項(xiàng)目的倉(cāng)庫(kù),使得Git的使用更加簡(jiǎn)單。這幾天William為了拿Android最新的sourcecode,學(xué)習(xí)了一下git和repo的一些基本操作,整理了一個(gè)如何取得Android代碼的How-To,今天把他貼上來(lái)。 1、Git的安裝從http://git-scm.com/下載最新的git源碼包:并解壓:#tar -xjf git-1.6.3.3.tar.bz2編譯并安裝:#cd git-1.6.3.3#./configure#make;make install# git --versiongit version 1.6.3.3 2、安裝Repo首先確保在當(dāng)前用戶的主目錄下創(chuàng)建一個(gè)/bin目錄(如果沒有的話),然后把它(~/bin)加到PATH環(huán)境變量中接下來(lái)通過(guò)cURL來(lái)下載Repo腳本,保存到~/bin/repo文件中curl http://android.git.kernel.org/repo >~/bin/repo別忘了給repo可執(zhí)行權(quán)限chmod a+x ~/bin/repo 3、初始化版本庫(kù)如果是想把Android當(dāng)前主線上最新版本的所有的sourcecode拿下來(lái),我們需要repo的幫助。先建立一個(gè)目錄,比如~/android,進(jìn)去以后用repo init命令即可。repo init -u git://android.git.kernel.org/platform/manifest.git這個(gè)過(guò)程會(huì)持續(xù)很長(zhǎng)的時(shí)間(至少可以好好睡一覺),具體要多少時(shí)間就取決于網(wǎng)絡(luò)條件了最后會(huì)看到 repo initialized in /android這樣的提示,就說(shuō)明本地的版本庫(kù)已經(jīng)初始化完畢,并且包含了當(dāng)前最新的sourcecode。如果想拿某個(gè)branch而不是主線上的代碼,我們需要用-b參數(shù)制定branch名字,比如:repo init -u git://android.git.kernel.org/platform/manifest.git -b cupcake另一種情況是,我們只需要某一個(gè)project的代碼,比如kernel/common,就不需要repo了,直接用Git即可。git clone git://android.git.kernel.org/kernel/common.git這也需要不少的時(shí)間,因?yàn)樗鼤?huì)把整個(gè)Linux Kernel的代碼復(fù)制下來(lái)。如果需要某個(gè)branch的代碼,用git checkout即可。比如我們剛剛拿了kernel/common.get的代碼,那就先進(jìn)入到common目錄,然后用下面的命令:git checkout origin/android-goldfish-2.6.27 -b goldfish這樣我們就在本地建立了一個(gè)名為goldfish的android-goldfish-2.6.27分支,代碼則已經(jīng)與android-goldgish-2.6.27同步。我們可以通過(guò)git branch來(lái)列出本地的所有分支。 4、同步版本庫(kù)使用repo sync命令,我們把整個(gè)Android代碼樹做同步到本地,同樣,我們可以用類似repo sync project1 project2 … 這樣的命令來(lái)同步某幾個(gè)項(xiàng)目如果是同步Android中的單個(gè)項(xiàng)目,只要在項(xiàng)目目錄下執(zhí)行簡(jiǎn)單的git pull即可。 5、通過(guò)GitWeb下載代碼另外,如果只是需要主線上某個(gè)項(xiàng)目的代碼,也可以通過(guò)
[color="#800080"]GitWeb
下載,在shortlog利用關(guān)鍵字來(lái)搜索特定的版本,或者找?guī)讉(gè)比較新的tag來(lái)下載還是很容易的。Git最初是為L(zhǎng)inux內(nèi)核開發(fā)而設(shè)計(jì),所以對(duì)其他平臺(tái)的支持并不好,尤其是Windows平臺(tái),必須要有Cygwin才可以,F(xiàn)在,得益于
[color="#0000ff"]msysgit
項(xiàng)目,我們已經(jīng)可以不需要Cygwin而使用Git了。另外,
[color="#0000ff"]Git Extensions
是一個(gè)非常好用的Windows Shell擴(kuò)展,它能與資源管理器緊密集成,甚至提供了Visual Studio插件。它的官方網(wǎng)站上有一分不錯(cuò)的
[color="#0000ff"]說(shuō)明文檔
,感興趣的朋友可以看一看。至于Git的參考文檔,我推薦
[color="#0000ff"]Git Magic
,這里還有一個(gè)
[color="#0000ff"]Git Magic的中文版
。獲取Anroid Linux Kernel過(guò)程:[color="#008080"][root@localhost ~]#[color="#ff0000"]mkdir bin[color="#008080"][root@localhost ~]#[color="#ff0000"]curl http://android.git.kernel.org/repo >~/bin/repo[color="#008080"][root@localhost bin]#[color="#ff0000"]cd bin/[color="#008080"][root@localhost bin]#[color="#ff0000"]chmod a+x ~/bin/repo[color="#008080"][root@localhost bin]#[color="#ff0000"]cd /usr/local/src/[color="#008080"][root@localhost src]#[color="#ff0000"]mkdir project-android[color="#008080"][root@localhost src]#[color="#ff0000"]cd project-android/[color="#008080"][root@localhost project-android]#[color="#ff0000"]git clone git://android.git.kernel.org/kernel/common.git這里會(huì)下載半天,下載完成之后:[color="#008080"][root@localhost src]#[color="#ff0000"]cd common[color="#008080"][root@localhost common]# ls[color="#339966"]arch     CREDITS        drivers   include Kbuild MAINTAINERS net             samples   soundblock    crypto         firmware init     kernel Makefile     README          scripts   usrCOPYING Documentation fs        ipc      lib     mm           REPORTING-BUGS security virt[color="#008080"][root@localhost common]# git branch -a[color="#0000ff"]* android-2.6.27diffremotes/origin/HEAD -> [color="#339966"]origin/android-2.6.27[color="#0000ff"]remotes/origin/android-2.6.25remotes/origin/android-2.6.27remotes/origin/android-2.6.29remotes/origin/android-goldfish-2.6.27remotes/origin/android-goldfish-2.6.29
要想下載2.6.29內(nèi)核,只要最后執(zhí)行一下git checkout origin/android-2.6.29看看代碼是不是變成2.6.29的了?我在這郁悶了半天,怎么總是下載2.6.27內(nèi)核的代碼呵呵
               
               
               
               

本文來(lái)自ChinaUnix博客,如果查看原文請(qǐng)點(diǎn):http://blog.chinaunix.net/u1/35045/showart_2185149.html
您需要登錄后才可以回帖 登錄 | 注冊(cè)

本版積分規(guī)則 發(fā)表回復(fù)

  

北京盛拓優(yōu)訊信息技術(shù)有限公司. 版權(quán)所有 京ICP備16024965號(hào)-6 北京市公安局海淀分局網(wǎng)監(jiān)中心備案編號(hào):11010802020122 niuxiaotong@pcpop.com 17352615567
未成年舉報(bào)專區(qū)
中國(guó)互聯(lián)網(wǎng)協(xié)會(huì)會(huì)員  聯(lián)系我們:huangweiwei@itpub.net
感謝所有關(guān)心和支持過(guò)ChinaUnix的朋友們 轉(zhuǎn)載本站內(nèi)容請(qǐng)注明原作者名及出處

清除 Cookies - ChinaUnix - Archiver - WAP - TOP