碼云SVN支持

現在碼云目前支持使用 Subversion 對倉庫進行操作,以下是使用指南和注意事項。

使用前注意

倉庫體積超過300 MB不建議使用 Subversion 操作倉庫,存儲庫容量達到 400 MB,或者 300 MB 并且存儲大量非文本數據時,我們將關閉倉庫的 Subversion 支持。

由于 GIT 不支持空目錄的提交,在存儲機器上,無論是普通倉庫還是開啟 Subversion 接入的倉庫存儲時都是 GIT 倉庫,Subversion 的 commit 是提交到 git 倉庫上的,所以碼云的 Subversion不支持空目錄的提交。

第一次開啟 Subversion, 操作一個倉庫,如果倉庫體積較大或者提交次數較多,由于緩存的緣故,響應時間會比較長。

不支持 Subversion 的 Hook 機制,請使用 WebHook 替代。

Subversion 屬性不完全支持。

客戶端需要開啟 SASL 支持,不支持的客戶端無法訪問。

部分 svn 命令不支持。可以查看Subversion 客戶端的兼容性

版本號的映射,目前 Subversion 的版本號計算依據為本分支所有的commit 數目減一 不包括 merge ,如果使用了在 git 中強制回退等操作,請重新檢出。

WARNING:

由于 git 在設計上就沒有考慮空文件Kernel.org: Git FAQ

我們設計的原則就是不破壞,不主動修改用戶的倉庫,我們的后端存儲的完全是一個 git 倉庫,如果我們添加了,一次提交內容也不會一致了,建議你在添加目錄的時候添加 .keep 之類的占位文件,空文件即可。

Git 與 SVN 混用時盡量不要使用 Git 強制推送。Git 與 SVN 混用注意事項

關于改版

Subversion 功能的最終解釋權歸 OSChina.NET 所有。Subversion 接入的規則可能在下一次改版中發生改變。

開啟方式

在項目的設置界面開啟

如果是空倉庫:

使用指南

碼云 支持的是 svn 協議。? 對于 svn 而言,獲取一個倉庫的代碼通常是 checkout,在項目主頁我們通常可以獲得 URL:

這個倉庫地址為:

svn://git.oschina.net/svnserver/newos

1.獲取倉庫代碼:

svn checkout svn://git.oschina.net/svnserver/newos newos

注意信息碼云的 SVN 接入后端是通過 git 存儲庫實現,URL 規則為 svn://域名/用戶名/項目名 .

使用上述命令,我們將得到項目默認分支的代碼。并將本地的工作目錄命名為newos

如果最后不帶 newos,svn 默認把本地工作目錄命名為 項目名

svn checkout svn://git.oschina.net/svnserver/newos

如果要獲得任意分支代碼,例如獲取newos的dev分支,請輸入近似如下的命令:

此時地址為:svn://域名/用戶名/項目名/branches/分支名.

svn checkoutsvn://git.oschina.net/svnserver/newos/branches/dev

特別的說明,獲取主干分支,也就是 master 分支可以使用下面的分支格式

svn checkoutsvn://git.oschina.net/svnserver/newos/trunknewos

svn trunk 分支對應 master 分支 用戶應當盡量不使用下面格式

svn checkout svn://git.oschina.net/svnserver/newos

操作說明

如果部分檢出倉庫,并且倉庫根目錄下包含 branches/tags/trunk 這樣的目錄,請使用完整的路徑 layout,如下:

svn://git.oschina.net/username/example/trunk/tags/hellosvn://git.oschina.net/username/example/branches/dev/trunksvn://git.oschina.net/username/example/branches/dev/branches

如果沒有 master 分支,也就沒有 trunk 分支,檢出的 URL 不能省略分支名。比如只有一個 dev 分支,必須使用下列格式,否則會提示倉庫不存在。

svn cosvn://git.oschina.net/svnserver/newos/branches/dev? svnserver_dev

打開終端,輸入上述命令,出現以下下面提示。其中第一個認證領域是用戶的密碼,這個可以留空。而用戶名是用戶在 GIT@OSC 登陸時使用郵箱地址。密碼則是用戶登陸 碼云 所使用的密碼一般而言,svn 會加密緩存用戶的用戶名密碼,所以,對倉庫的操作只需要第一次輸入用戶郵箱和密碼。清除密碼緩存,用戶目錄下的.subversion/auth/svn.simple文件夾下的文件。

下圖則是成功的拉取了項目代碼。

查看本地工作目錄信息:

svninfo

cdhelloworldecho"test"> SVNReadMe.md#svn add SVNReadMe.md#svn add * --force類似于git add -Asvn add * --forcesvn update .svn commit -m"first svn commit"

Subversion 在提交前建議先使用 svn update 更新工作拷貝。也就相當于 git pull 后再 git push。

Subversion 的提交是在線的,如果機器已經離線,那么提交會失敗,這個過程用git的方式理解就是 git commit+git push。

用戶使用 svn 提交代碼同樣會有動態顯示。

列出版本庫中的目錄內容:

svn listsvn://git.net/svnserver/newos/trunk

導出倉庫指定分支的所有文件,不含版本控制信息:

svn exportsvn://git.net/svnserver/newos/trunknewos

備注

安裝 Subversion 客戶端

在 Apache 基金會的 Subversion 官網:

http://subversion.apache.org二進制下載提示頁面:

http://subversion.apache.org/packages.html

Windows 系統:

與資源管理起集成的 SVN 客戶端:TortoiseSVN,通常被叫做"海龜",為 msi 安裝包。可以使用ExtractMSI解壓縮。很詭異的是,在 Apache 上并沒有推薦 TortoiseSVN。另外還有 SlikSVN,下載地址:https://sliksvn.com/download/其他的也就不一一介紹了。

Linux 系統

一般而言 Linux 系統自帶的包控制軟件能夠安裝 Subversion,如果版本低于1.8,就建議用戶下載預編譯的二進制或者自己動手編譯 Subversion。這里不做過多說明。

OS X

XCode 自帶的 Subversion 版本為1.7.x,太老,而 GIT@OSC 只支持1.8以上的 SVN 客戶端。

如果安裝了 Homebrew

brew install subversion

或者使用WANdisco的預編譯版本http://www.wandisco.com/subversion/download#osx

Subversion 客戶端的兼容性

我們支持 Apache Subversion 1.8 或者更高的版本,當你安裝一個 Subversion 客戶端時,如果錯誤提示是“無法協商驗證驗證方式” 請確保你的客戶端支持 SASL 驗證,比如在 Ubuntu 上,你可以安裝 libsasl2-dev 然后編譯 Subversion, 這樣的話客戶端是支持 SASL 驗證的。

sudo apt-get install libsasl2-dev

當你使用 svnkit 或者 SubversionJavaHl 這類 IDE 集成客戶端,請確保支持 SASL 驗證。

關于 GIT 與 SVN 的轉換

如果用戶存在一個基于 Subversion 托管的項目,要遷移到 GIT@OSC,可以使用 git-svn 將項目轉變為基于 git 的倉庫,然后推送到 GIT@OSC,這樣你依然能夠使用SVN對項目進行操作。請記得先在 GIT@OSC 上新建一個項目

git svnclonehttp://myhost/repo -T trunk -b branches -t tagsgit remote add oscgit https://git.oschina.net/user/repogit push -u oscgit --all

通常來說,如果本地存在 SVN 倉庫,則可以:

git svn clone file:///tmp/svn-repo -T trunk -b branches -t tagsgit remote add oscgit https://git.oschina.net/user/repogit push -u oscgit? --all

將項目轉移到 GIT@OSC 上以后,使用 svn 命令 checkout 即可對項目進行操作。

高級指南:http://git-scm.com/book/zh/ch8-2.html

安裝 git,git-svn

Windows

msysgit 官網http://msysgit.github.io/,版本比較低。

Github for Windows 提供的 git 工具和 msysgit 一致。

MSYS2 git 下載地址:http://sourceforge.net/projects/msys2,然后啟動終端,安裝 git,目前版本為2.4.3。

pacman -S git

Cygwin git 下載地址:http://www.cygwin.com/,然后使用包管理軟件或者直接下載 git 源碼編譯 git。

makeconfigure./configure --prefix=/usr/localmakemakeinstall

Linux

有包管理器的直接用包管理器安裝。

如 Ubuntu

sudoapt-get install git git-svn

也可以手動編譯。

Mac OSX

下載地址:http://git-scm.com/download/mac

最后編輯于
?著作權歸作者所有,轉載或內容合作請聯系作者
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發布,文章內容僅代表作者本人觀點,簡書系信息發布平臺,僅提供信息存儲服務。
  • 序言:七十年代末,一起剝皮案震驚了整個濱河市,隨后出現的幾起案子,更是在濱河造成了極大的恐慌,老刑警劉巖,帶你破解...
    沈念sama閱讀 228,505評論 6 533
  • 序言:濱河連續發生了三起死亡事件,死亡現場離奇詭異,居然都是意外死亡,警方通過查閱死者的電腦和手機,發現死者居然都...
    沈念sama閱讀 98,556評論 3 418
  • 文/潘曉璐 我一進店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人,你說我怎么就攤上這事。” “怎么了?”我有些...
    開封第一講書人閱讀 176,463評論 0 376
  • 文/不壞的土叔 我叫張陵,是天一觀的道長。 經常有香客問我,道長,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 63,009評論 1 312
  • 正文 為了忘掉前任,我火速辦了婚禮,結果婚禮上,老公的妹妹穿的比我還像新娘。我一直安慰自己,他們只是感情好,可當我...
    茶點故事閱讀 71,778評論 6 410
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著,像睡著了一般。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發上,一...
    開封第一講書人閱讀 55,218評論 1 324
  • 那天,我揣著相機與錄音,去河邊找鬼。 笑死,一個胖子當著我的面吹牛,可吹牛的內容都是我干的。 我是一名探鬼主播,決...
    沈念sama閱讀 43,281評論 3 441
  • 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場噩夢啊……” “哼!你這毒婦竟也來了?” 一聲冷哼從身側響起,我...
    開封第一講書人閱讀 42,436評論 0 288
  • 序言:老撾萬榮一對情侶失蹤,失蹤者是張志新(化名)和其女友劉穎,沒想到半個月后,有當地人在樹林里發現了一具尸體,經...
    沈念sama閱讀 48,969評論 1 335
  • 正文 獨居荒郊野嶺守林人離奇死亡,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內容為張勛視角 年9月15日...
    茶點故事閱讀 40,795評論 3 354
  • 正文 我和宋清朗相戀三年,在試婚紗的時候發現自己被綠了。 大學時的朋友給我發了我未婚夫和他白月光在一起吃飯的照片。...
    茶點故事閱讀 42,993評論 1 369
  • 序言:一個原本活蹦亂跳的男人離奇死亡,死狀恐怖,靈堂內的尸體忽然破棺而出,到底是詐尸還是另有隱情,我是刑警寧澤,帶...
    沈念sama閱讀 38,537評論 5 359
  • 正文 年R本政府宣布,位于F島的核電站,受9級特大地震影響,放射性物質發生泄漏。R本人自食惡果不足惜,卻給世界環境...
    茶點故事閱讀 44,229評論 3 347
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧,春花似錦、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 34,659評論 0 26
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至,卻和暖如春,著一層夾襖步出監牢的瞬間,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 35,917評論 1 286
  • 我被黑心中介騙來泰國打工, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留,地道東北人。 一個月前我還...
    沈念sama閱讀 51,687評論 3 392
  • 正文 我出身青樓,卻偏偏與公主長得像,于是被迫代替她去往敵國和親。 傳聞我的和親對象是個殘疾皇子,可洞房花燭夜當晚...
    茶點故事閱讀 47,990評論 2 374

推薦閱讀更多精彩內容

  • &開發過程中離不開源代碼的管理, 目地:為了解決在軟件開發過程中,由源代碼引發的各種蛋疼、繁瑣的問題。 目前開發使...
    早起的蟲兒子被鳥吃閱讀 2,451評論 0 16
  • 本片內容轉自CSDN http://blog.csdn.net/ithomer/article/details/7...
    五娃兒閱讀 4,950評論 2 88
  • 兒時的我們 總愛在夏日的夜晚 靠在母親的身邊 呆呆的看著滿天星斗 那時的我們 在幻想著 是誰住在星星的另一邊 長大...
    叛逆貓兒閱讀 251評論 0 4
  • 你們真的合適么,吃頓飯試試。 吃是一個重要的生活常態,無論在哪兒做什么,也無論是誰,都要吃飯的,吃飯里面的門道可多...
    笑不二閱讀 293評論 0 0
  • Y小姐和H先生就是最典型的例子,兩個人從大學就在一起,畢業以后H先生進入了一家小公司工作,工作繁忙,整天加班,薪水...
    TimYu貓閱讀 234評論 0 1