版本管理(一)SVN

面試中,可能會問及一些關(guān)于版本控制的問題,理解SVN和Git的原理,記住常用命令。

SVN

  • SVN是集中式源代碼管理工具

概念:

  1. Repository 代碼倉庫,保存代碼的倉庫
  2. Server 服務(wù)器,保存所有版本的代碼倉庫
  3. Client 客戶端,只保存當前用戶的代碼倉庫
  4. 用戶名&密碼 訪問代碼倉庫需要使用自己的‘用戶名和密碼’,區(qū)分不同人對代碼做的修改

操作:

  1. checkout 將服務(wù)器上最新的代碼倉庫下載到本地,“只在最開始做一次“
  2. update 從服務(wù)器上將其他人所做的修改下載到本地,“每天上班必須要做的事情“
  3. commit 將工作可運行代碼提交到服務(wù)器,“每天下班前至少做一次”
  • SVN常用命令

切換工作目錄
$ cd 工作目錄
checkout 服務(wù)器上的代碼倉庫
$ svn co http://xxx/svn/xxxx --username=manager --password=manager
查看本地代碼庫狀態(tài)
$ svn st
錯誤提示: "is not a working copy",必須在svn的工作目錄下才能正確使用svn的命令
查看svn日志
$ svn log
查看某一個文件的日志
$ svn log filename
查看某一個文件某個版本的日志
$ svn log filename@1
創(chuàng)建文件
$ touch main.c
打開并編寫文件內(nèi)容
$ open main.c
將文件添加到本地版本庫中
$ svn add main.c/main.*
將文件提交到服務(wù)器的
$ svn ci -m " 備注信息 "
刪除文件
$ svn rm Person.h
提交刪除
$ svn ci -m "刪除了文件 "
撤銷修改
$ svn revert Person.m
恢復(fù)到之前的某個版本
$ svn update -r 5
沖突解決
(p) postpone 對比
(mc) mine-conflict 使用我的
(tc) theirs-conflict 使用對方的
svn st 顯示的文件狀態(tài)
' ' 沒有修改
'A' 被添加到本地代碼倉庫
'C' 沖突
'D' 被刪除
'I' 被忽略
'M' 被修改
'R' 被替換
'X' 外部定義創(chuàng)建的版本目錄
'?' 文件沒有被添加到本地版本庫內(nèi)
'!' 文件丟失或者不完整(不是通過svn命令刪除的文件)
'~' 受控文件被其他文件阻隔

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

  • iOS 開發(fā) SVN 版本控制器 更多技術(shù)交流請加群 iOS技術(shù)聯(lián)盟 27512466 SVN是Subversio...
    Sunny_Fight閱讀 8,991評論 7 63
  • SVN SVN使用 基本操作svn checkout:把項目源碼下載到本地,只需要做一次svn update:將本...
    彼岸的黑色曼陀羅閱讀 1,750評論 0 4
  • Spring Cloud為開發(fā)人員提供了快速構(gòu)建分布式系統(tǒng)中一些常見模式的工具(例如配置管理,服務(wù)發(fā)現(xiàn),斷路器,智...
    卡卡羅2017閱讀 136,654評論 19 139
  • 源代碼管理工具的起源 為什么會出現(xiàn)源代碼管理工具? 為了解決在軟件開發(fā)過程中,由源代碼引發(fā)的各種蛋疼繁瑣問題 源代...
    小白文_Vincent閱讀 3,546評論 2 8
  • 命令的使用 1、檢出 svn cohttp://路徑(目錄或文件的全路徑)[本地目錄全路徑] --username...
    小李龍彪閱讀 4,537評論 0 9

友情鏈接更多精彩內(nèi)容