国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 學(xué)院 > 開發(fā)設(shè)計(jì) > 正文

repo

2019-11-09 13:46:40
字體:
供稿:網(wǎng)友

Repo是一個(gè)用Python語言開發(fā)的命令工作 ,可以更文件地進(jìn)行多版本庫的管理。

Repo是對(duì)Git進(jìn)行了一定的封裝,簡化了對(duì)多個(gè)Git版本庫的管理。對(duì)于repo管理的任何一個(gè)版本庫,都需要使用Git命令進(jìn)行操作

Repo的使用過程大致如下: 運(yùn)行repo init命令,克隆Android的一個(gè)清單庫。這個(gè)清單庫是通過xml技術(shù)建立的版本庫清單。 打開 .repo 文件夾中的 清單文件查看清單庫中的manifest.xml文件,列出了多個(gè)版本庫的克隆方式。包括版本庫的地址和工作區(qū)地址的對(duì)應(yīng)關(guān)系,以及分支的對(duì)應(yīng)關(guān)系。

1. repo init -u

新建一個(gè)文件夾, cd 到該目錄 在工作目錄中執(zhí)行repo init -u ,完成repo完整的下載及項(xiàng)目清單版本庫(manifest.git)的下載。

repo init -u url -b branchname

這個(gè)初始化命令主要干了兩件事:

(1)在當(dāng)前目錄里面下載安裝 repo:因?yàn)樽畛跄銖木W(wǎng)上下載的那個(gè) repo 文件并不是一個(gè)完整的 repo,它主要負(fù)責(zé)初始化工作,并且在初始化完成以后將命令移交給完整的 repo 來執(zhí)行。

(2)根據(jù)命令中指定的地址(-u url)去下載項(xiàng)目的管理文件 manifest.xml。我們前面說過這個(gè) manifest.xml 是用 git 管理起來的, 在這里 -b branchname 就是指的 manifest.xml 的相應(yīng) -m 參數(shù)是加載相應(yīng)的xml信息,正常拉代碼或切xml數(shù)據(jù)會(huì)用到

2.repo sync命令

克隆android的清單庫manifest.git(地址來自于-u參數(shù))。

repo sync子命令用于參照清單文件克隆可同步版本庫。如果某個(gè)項(xiàng)目版本庫尚不存在,則執(zhí)行repo sync命令相當(dāng)于執(zhí)行g(shù)it clone。如果項(xiàng)目版本庫已經(jīng)存在,則相當(dāng)于執(zhí)行下面的兩個(gè)命令: git remote update:相當(dāng)于對(duì)每一個(gè)remote源執(zhí)行fetch操作。 git rebase origin/branch:針對(duì)當(dāng)前分支的跟蹤分支執(zhí)行rebase操作。

repo syn同步所有的項(xiàng)目,作為一個(gè)開發(fā)人員,通常只需要改某個(gè)項(xiàng)目,所以常用的是下面的命令。repo sync -c (常用)同步某個(gè)分支的代碼,一套代碼倉庫可能包括N個(gè)分支,這種方式只同步其中想要的那個(gè)分支,節(jié)約時(shí)間repo sync -lcheckout 出本地repo數(shù)據(jù)代碼,不走網(wǎng)絡(luò)服務(wù)器repo sync – help

3.repo start命令 創(chuàng)建本地的分支 repo start子命令實(shí)際上是對(duì)git checkout -b命令的封裝。為指定的項(xiàng)目或所有項(xiàng)目(若使用-all參數(shù)),以清單文件中為項(xiàng)目認(rèn)定的分支或里程碑為基礎(chǔ),創(chuàng)建特性分支。特性分支的名稱由命令的第一個(gè)參數(shù)指定。

repo start <newbranchname> [--all | <PRoject>…]repo start branchname --all

4.repo status命令 —查看所有倉庫的狀態(tài) repo status子命令實(shí)際上是對(duì)git diff-index、git diff-files命令的封裝,同時(shí)顯示暫存區(qū)的狀態(tài)和本地文件修改的狀態(tài)。 repo status [ project…]

5.repo checkout命令 repo checkout子命令實(shí)際上是對(duì)git checkout命令的封裝。檢出之前由repo start創(chuàng)建的分支。 repo checkout branchname [project…]

6.repo branches命令 —查看所有倉庫的分支命令 repo branches讀取各個(gè)項(xiàng)目的分支列表并匯總顯示。 repo branches […]

7.repo upload命令 (重要) 注意:如果分支不是repo start 命令建的, repo upload 命令將不會(huì)提交 repo upload相當(dāng)于git push,但是又有很大的不同。執(zhí)行repo upload不是將版本庫改動(dòng)推送到克隆時(shí)的遠(yuǎn)程服務(wù)器,而是推送到代碼審查服務(wù)器(Gerrit)的特殊引用上。 代碼審核服務(wù)器會(huì)對(duì)推送的提交進(jìn)行特處理,將新的提交顯示為一個(gè)待審核的修改集,并進(jìn)入代碼審查流程。只有當(dāng)審核通過后,才會(huì)合并到正式的版本庫中。 用法如下:

repo upload . 這是不帶審核者的上傳方式,記住后面是 空格 + "." (可以到Gerrit服務(wù)器上添加)repo upload --re=XXXXX . 添加審核者 (可以到Gerrit服務(wù)器上添加)repo upload [--re --cc] [<project>]...參數(shù):-h, --help 顯示幫助信息。-t 發(fā)送本地分支名稱到Gerrit代碼審核服務(wù)器。--re=REVIEWERS, --reviewers=REVIEWERS 要求由指定的人員進(jìn)行審核。-cc=CC 同時(shí)發(fā)送通知到如下郵件地址。

8. 在 7后,如果發(fā)現(xiàn)需要修訂,可使用 git commit –amend (重要) 如果發(fā)現(xiàn)上傳后的代碼有問題想重新修改,可以在本地繼續(xù)修改代碼, 用git add把修改內(nèi)容加到暫存區(qū),用git commit –amend修改上一次提交,再用repo upload重新上傳修訂集。這樣上傳后不會(huì)產(chǎn)生新的提交,而是會(huì)在原有的提交中新加一個(gè)修訂集。用法

git addgit commit --amend

9.repo download命令 repo download命令主要用于代碼審核者下載和評(píng)估提交的修訂。使用repo download命令實(shí)際上就是用git fetch獲取到對(duì)應(yīng)項(xiàng)目的refs/changes//patchset>引用,并自動(dòng)切換到對(duì)應(yīng)的引用上。 repo download {project change [/patchset]}… repo prune命令 repo prune子命令實(shí)際上是對(duì)git branch -d命令封裝,該命令用于掃描項(xiàng)目的各個(gè)分支,并刪除已經(jīng)合并的分支。 repo prune […] repo 遍歷整個(gè)項(xiàng)目 — liangjiong.zhou 2013/12/31 03:12

10.repo forall 可以用來遍歷所有g(shù)it倉庫。(重要) repo forall -c git cmd —對(duì)所有g(shù)it庫執(zhí)行“git cmd”操作

repo forall -c command例:$ repo forall -c git status #等同 repo status$ repo forall -c git clean -df #清除整個(gè)repo
發(fā)表評(píng)論 共有條評(píng)論
用戶名: 密碼:
驗(yàn)證碼: 匿名發(fā)表
主站蜘蛛池模板: 东平县| 兴文县| 四会市| 正宁县| 西峡县| 普兰店市| 霸州市| 洛南县| 扶风县| 台中市| 鄂伦春自治旗| 海门市| 湘阴县| 朔州市| 青铜峡市| 泰宁县| 微山县| 弥渡县| 芦溪县| 乾安县| 开阳县| 准格尔旗| 汾西县| 桐城市| 韶山市| 哈巴河县| 辽中县| 大田县| 东宁县| 郴州市| 綦江县| 甘南县| 晋江市| 安平县| 克拉玛依市| 沙田区| 肃宁县| 梅河口市| 垫江县| 阳春市| 壶关县|