注:本文的Android Studio版本是 2.1.2天吓,svn版本是:TortoiseSVN-1.9.4.27285-x64-svn-1.9.4.msi,如有的地方表示不同童芹,可能是版本差異调榄。
Android Studio 是 Google 公司目前支持的 Android 開(kāi)發(fā)工具,它集成了許多強(qiáng)大的功能枚钓。比如常用的代碼的版本控制系統(tǒng)(git哟忍,svn等)狡门。本文先介紹svn的常用功能陷寝。
一、配置svn
1.安裝帶有command line功能的svn客戶端其馏,我是用的是TortoiseSVN凤跑。安裝時(shí)必須自定義選擇command line(即點(diǎn)擊安裝時(shí)紅色X的那一個(gè)條目) 。
2.安裝完成后叛复,打開(kāi)IDE的setting配置面板仔引,選擇 Version Control 下的 Subversion?
在右邊 General 下的 Use command line client:右面的地址為你安裝到本地的TortoiseSVN的下的svn.exe文件路徑,如圖所示:
?二褐奥、從svn 中導(dǎo)入項(xiàng)目
方法一:(當(dāng)前頁(yè)面為工作空間)
1. 在菜單欄選擇 VCS --> Checkout from Version Control --> Subversion
2. 彈出Checkout from Subversion 對(duì)話框 咖耘,選擇“+”,在彈出的 New Repository Location 中輸入項(xiàng)目所在的地址
3. 點(diǎn)擊將要使用的url的左邊箭頭撬码, 在彈出的Authentication Required 中輸入用戶名及密碼
Save credentials 為是否記住密碼 選擇ok
4. 最后儿倒,點(diǎn)擊 Checkout 就將svn中的項(xiàng)目檢出到本地了。
方法二:(當(dāng)前頁(yè)面為歡迎頁(yè)面)
順便說(shuō)一下呜笑,怎么從工作空間進(jìn)入到歡迎頁(yè)面,在菜單欄選擇 File --> Close Project.
1. 歡迎頁(yè)面右側(cè)夫否,選擇Check out from Version Control --> Subversion
2. 接下來(lái)的步驟同第一種方法
三、提交蹈垢,更新
更新:
方法一:
點(diǎn)擊工具欄中的更新圖標(biāo),如圖所示:
在Update Project中選擇 " ok "
方法二:
右鍵單擊你要更新的文件或文件夾袖裕,選擇 Subversion --> Update Directory...
在彈出的Update Project對(duì)話框中選擇 “ ok ”曹抬。
Update/Switch to specific url:?
Use branch 后的 ... 表示選擇需要更新的分支
URL 后的 ... 表示項(xiàng)目所在的選擇url
選擇 Update/Switch to specific revision 后,點(diǎn)擊 ... 可以查看歷史版本急鳄。
Depth 中的選項(xiàng)谤民,這一部分是參考網(wǎng)上的資料,具體功能大家一起探索疾宏。通常我是默認(rèn) working copy张足。
提交:
方法一:點(diǎn)擊工具欄的提交圖標(biāo),如圖所示:
在彈出的Commit Changes對(duì)話框中:
左上部分坎藐,選擇本次要提交的文件为牍;
左下部分,主要是對(duì)本次提交內(nèi)容的概述岩馍,便于版本管理碉咆;
右上部分,
Auto-update after commit :先更新后提交
keep files locked:把文件鎖上蛀恩,(即不想其他人修改這些文件的代碼)
右下部分(在提交代碼前)疫铜,
Reformat code:重新格式化代碼
Rearrange code:重新整理代碼
Optimize imports:優(yōu)化導(dǎo)入
Perform code analysis:執(zhí)行代碼分析[ 默認(rèn)選擇]
Check TODO(show all):檢測(cè)需要修改的代碼[顯示所有默認(rèn)選擇]
clean up: 清除所有
Update copyright:更新版權(quán)
設(shè)置好你的選項(xiàng)之后,點(diǎn)擊 Commit 完成提交双谆。
方法二:
右鍵選中文件或文件夾壳咕,選擇 Sunversion--> Commit Directory...
如果沒(méi)有要提交的文件席揽,會(huì)彈出
直接點(diǎn)擊 " ok "。
四谓厘、解決代碼沖突
代碼沖突(本地和服務(wù)器均修改了同一個(gè)文件)有三種情況:
1. 服務(wù)器的代碼為無(wú)效代碼幌羞,可直接將本地代碼覆蓋服務(wù)器的代碼。
2. 本地代碼修改為無(wú)效代碼庞呕,即不需要傳到服務(wù)器的情況新翎,將服務(wù)器的代碼直接覆蓋本地代碼。
3.本地代碼和服務(wù)器的代碼均為有效代碼住练,將本地代碼和服務(wù)器的代碼合并地啰。
當(dāng)你選擇merge合并時(shí),會(huì)彈出代碼合并對(duì)照窗口讲逛,一共有三個(gè)屏亏吝,左右兩側(cè)時(shí)你和服務(wù)器不同的代碼并高亮顯示不同的部分,帶有箭頭和叉號(hào)盏混,通過(guò)點(diǎn)擊箭頭將兩邊沖突的代碼添加到中間的合并區(qū)域中去蔚鸥,點(diǎn)擊叉號(hào)則辨識(shí)放棄那一段代碼,待所有沖突處理完成后merge就成功了许赃。
五止喷、將本地代碼上傳至svn服務(wù)器
在菜單欄下選擇 VCS-->Import into Version Control-->Import into Subversion...
在彈出的 Import into Subversion 對(duì)話框中,點(diǎn)擊 “+”添加路徑 混聊,點(diǎn)擊“-”刪除路徑
然后選擇你要提交的分支弹谁,點(diǎn)擊“ Import” 即可。
六句喜、添加忽略文件
在Android Studio中一般建議忽略的文件预愤,這個(gè)過(guò)程在導(dǎo)入項(xiàng)目之前:
-.idea文件夾
-.gradle文件夾
- 所有的build文件夾
- 所有的.iml文件
-local.properties文件
這就需要我們將這些問(wèn)價(jià)添加到忽略文件中。?
步驟:
File-->Version Control-->Ignored Files
添加忽略文件:點(diǎn)擊右側(cè)的 ?藍(lán)色“+”咳胃,在彈出的對(duì)話框中選擇:
對(duì)話框中的選項(xiàng):
Ignore specified file:忽略指定的單個(gè)文件植康;
Ignore all files under:忽略指定的文件夾下的所有文件;
Ignore all files matching:忽略匹配文件(如:在編輯框中寫入 *.txt ",即忽略所有的txt文件)
刪除添加的文件:選中你要取消的忽略文件展懈,點(diǎn)擊右側(cè)的 紅色“-”即可销睁。
七、在svn使用中的不同顏色
1.直接在Android Studio 中提交文件
在Android Studio 中的某個(gè)項(xiàng)目關(guān)聯(lián)到svn中后存崖,如果你所修改的文件(與資源庫(kù)中不同的文件)榄攀,文件名會(huì)以藍(lán)色顯示。提交的時(shí)候直接選擇藍(lán)色文件即可金句。新創(chuàng)建的文件還沒(méi)有與svn關(guān)聯(lián)檩赢,文件名稱是紅色的,必須先將文件與svn資源庫(kù)關(guān)聯(lián),才能進(jìn)行提交等操作贞瞒,(右鍵點(diǎn)擊選擇 Subversion 然后選擇 Add As VCS... 即先將文件與資源庫(kù)關(guān)聯(lián))然后文件名變成綠色偶房,就可以進(jìn)行提交,更新等操作军浆。
2.通過(guò)客戶端提交文件:
在關(guān)聯(lián)svn的文件夾下的文件:
紅色(感嘆號(hào)):表示本地文件與資源庫(kù)中的文件不同棕洋。
綠色(對(duì)號(hào)):表示本地文件同資源庫(kù)文件相同。
藍(lán)色(問(wèn)號(hào)):忽略的文件乒融。
在提交文件時(shí)掰盘,彈出文件對(duì)比頁(yè)面,頁(yè)面右側(cè)項(xiàng)目結(jié)構(gòu)中標(biāo)志為綠色的部分為本地文件與服務(wù)器文件不同的地方赞季。
八愧捕、創(chuàng)建svn分支
1.項(xiàng)目右鍵,SubVersion->Branch or Tag...
2.在彈出的對(duì)話框里面申钩,Copy To的菜單下面的Base URL里面選路徑次绘,點(diǎn)下面的加號(hào),確定分支的路徑撒遣,點(diǎn)擊OK
3.然后寫個(gè)注釋(comment)邮偎,點(diǎn)擊OK,分支創(chuàng)建完畢义黎。
4.比較的時(shí)候禾进,項(xiàng)目右鍵,SubVersion->Compare With branch...比較合并
九廉涕、恢復(fù)資源庫(kù)文件
當(dāng)文件修改了之后泻云,發(fā)現(xiàn)修改的無(wú)效,需要恢復(fù)資源庫(kù)最后一個(gè)版本的內(nèi)容火的,在所選文件單擊右鍵壶愤,選擇 Subversion 淑倾,再選擇Reset 馏鹤,即回到了資源庫(kù)中的版本。