一、說明
去年寫“PyCharm+Miniconda3安裝配置教程 ”的時候就想把配置SVN的內容加上,但剛開始使用不是很清楚操作就先算了,然后到后邊知道怎么操作之后覺得比較簡單不寫也可以。
一是昨天使用SVN把本機一個項目下載到一台服務器上去的時候搞了半天,還搞得差點把項目給刪了。二是對於學校有基礎的知識掌握就比較牢反之就比較容易忘;版本控制相對來說就是一個比較“野生”的知識,之前在Z公司就之接把VSS的服務器讓我管,開始的時候就添加賬號什么的沒什么操作性自己也不怎么使用,后來就很卡說要遷移就研究了其實現寫了“VSS+SourceAnywhere for VSS搭建版本控制系統教程”,那時才知道“版本控制”這東西。基於這兩個原因還是要記一下。
這里基於PyCharm、VisualSVN、TortoiseSVN都安裝完成進行講解;關於VisualSVN、TortoiseSVN的安裝配置可以參考“VisualSVN+TortoiseSVN搭建版本控制系統教程”這里就不多說了。
二、原始的倉庫創建和使用
2.1 VisualSVN創建倉庫
打開VisualSVN,在“Repositories”上右鍵,點擊"Create New Repository",然后按提示選填一下即可。我這里創建了一個叫“PycharmProjects”的倉庫,允許讀寫的用戶名密碼為“ls/abcd1234”。
2.2 向倉庫導入文件
注意,我們這里直接向倉庫導入的文件(夾)並不會自動被svn監視,如果想要和Checkout一樣被監視,那么需要在導入前先如2.3一樣Checkout一把再導入(主要是把.svn給下載下來);但嚴謹而言如果是這樣的話那就不是Import導入了,而是通過Commit導入,Commit操作見下邊2.4。
獲取倉庫URL,選中倉庫,右鍵,Copy URL to Clipboard。
進入到要導入倉庫的目錄下,右鍵,展開TortoiseSVN,選擇Import。
在“URL of repository”中填入我們在VisualSVN中創建的倉庫的URL,然后點擊OK即可。
2.3 從倉庫下載代碼
在要下載代碼的目錄,右鍵,點擊SVN Checkout
填好要導出的倉庫,要導出到的目錄,然后點擊OK即可。這里要注意我們向倉庫導入的是“PycharmProjects”目錄下的文件,是不包括“PycharmProjects”本身的,所以導出時如果仍想導到“PycharmProjects”文件夾,那一定要導出來“PycharmProjects”文件夾。
2.4 提交修改
修改文件之后在文件夾下右鍵,選擇SVN Commit即可;但服務端文件可能已被別人先通過SVN Commit修改了,所以建議先使用SVN Update同步服務端文件,如果有沖突先處理沖突,再SVN Commit。
三、基於PyCharm的倉庫創建和使用
首先要明確,PyCharm使用VisualSVN,他也能且只能遵守VisualSVN的操作,所以PyCharm的倉庫創建和使用和沒使用PyCharm時的倉庫的創建和使用,形式上可以稍加變通但本質上必是一樣的。
典型的場景是:我們寫了一個項目,然后想導入到一個倉庫中去,供其他同事下載和修改。我們這里來實現這一需求,假設項目叫test3。
首先,第一步仍是像2.1一樣在VisualSVN中倉建一個空的倉庫。我這里創建的倉庫叫test3。
然后,第二步我們在2.2中說過,如果是使用Import那我們本地的后續修改是不被SVN監控的也不能通過Commit同步到倉庫中去,所以我們需要先把test3倉庫Checkout到當前項目下
此時關閉項目再重新打開,就可以看到項目文件被着色(當前紅色表示文件未被加入倉庫),同時工具欄上多了個版本控制的圖標,可點擊該圖標使用Commit將要加入倉庫的文件加入倉庫。
.idea存放的是PyCharm的配置,每個人的配置是不一樣的,所以一般不提交到倉庫。
后續,其他人想下載代碼,直接Checkout或在PyCharm中Checkout即可,就不多說了。