999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

實戰(zhàn)Linux版本控制機制

2017-03-10 07:45:51
網(wǎng)絡(luò)安全和信息化 2017年3期
關(guān)鍵詞:用戶

引言:所謂版本控制,就是將多次操作的結(jié)果以日志的方式存儲下來,便于之后進行恢復(fù)。版本控制并不是一個簡單的軟件而是一套系統(tǒng),版本控制系統(tǒng)針對文件的變動進行監(jiān)控,記錄其數(shù)據(jù)變動信息。其可以恢復(fù)目標(biāo)文件到之前的任意版本,并可比較兩個版本之間的差異。其支持多個用戶同時編輯同一個文件,能夠記錄哪個用戶什么時間修改該文件,為什么修改該文件。對于系統(tǒng)管理員來說,其對于腳本,文檔,配置文件等數(shù)據(jù)進行的修改,都可以保存在版本控制體系中。

版本控制運行機制

在Linux中提供了Subversion和CVS 兩款版本控制系統(tǒng),兩者在功能上沒有大的區(qū)別,但是前者比較新而且發(fā)展趨勢較好,因此推薦使用Subversion。

對于Subversion來說,其存儲理念是將文件存儲在集中式的倉庫中,該倉庫可以位于本地磁盤,也可以在遠程主機上,通過SSH或者WebDav進行訪問。

每個用戶在倉庫中都有自己的工作目錄,用戶想使用版本控制體系中的項目文件,必須有自己的工作目錄。

當(dāng)用戶登錄后,在用戶的Home目錄或工作目錄中,會針對版本控制軟件會生成一個名為“.svn”的隱藏目錄,在其中存放版本控制軟件的元數(shù)據(jù)以及屬于用戶的文件。

注意:不要使用手動的方法,來更改該隱藏目錄中的任何數(shù)據(jù)。

如果在某臺Linux用戶本機上配置了版本控制體系,并保存了所有的文檔,由于該機同時保持著倉庫和用戶,因此用戶想使用倉庫中的數(shù)據(jù),必須先將其下載后才可以對其進行編輯,當(dāng)執(zhí)行提交修改的時刻,才上傳到倉庫中。

因為有別的用戶在該機上登錄,所以無法直接對倉庫中的文件進行編輯,倉庫是加密的庫,用戶無法看到的。

訪問倉庫的方式有多種,對于存儲在本地的倉庫來說,其格式為“file:///repo/path”。對于存在于遠程主機上的倉庫來說,其格式為“svn+ssh://hostname/repo/path”,這是對于SSH方式而言的。

對 于WebDav方 式來說,其格式為“http://hostname/repo/path”。只要執(zhí)行過一次和版本控制相關(guān)的指令,就會生成上述“.svn”目錄,其中記錄這一系列的元數(shù)據(jù),包含了服務(wù)器的地址和下載的項目名稱等內(nèi)容。這里以RHEL 6.0為例進行說明。

在本地管理版本控制系統(tǒng)

當(dāng)建立一個空的倉庫時,必須以Root用戶執(zhí)行“svnadmin create /path”命令來實現(xiàn)。如果允許遠程用戶使用SSH方式進行訪問,需要配置sshd服務(wù),創(chuàng)建所需的賬戶。

如果使用Web方式進行訪問,需要配置Web服務(wù)器(例如Apache等),并安裝“Mod_Dav_Svn”模塊,同時配置所需的虛擬賬戶。

在實際的工作中,為了便于管理,可以先創(chuàng)建一個目 錄(例 如“AllProject”)用來存放所有的項目,在該總目錄下創(chuàng)建一個子目 錄(例 如“dept”), 使用“svnadmin create /allproject/dept”命令,對其進行初始化,創(chuàng)建一個新的項目。

當(dāng)然,該目錄也可以有該命令自動創(chuàng)建。執(zhí)行“l(fā)l/allproject/dept”命 令,可以看到其中生成的所有數(shù)據(jù),其中的“db”目錄用來存放該項目中的所有文件。

為了便于開發(fā)人員使用該項目數(shù)據(jù),需要進行必要的權(quán)限設(shè)定。執(zhí)行“groupadd dept”命令,創(chuàng)建名為“dept”的組。

執(zhí) 行“useradd user1-G dept”,“useradd user2-G dept”, 將“user1” 和“user2”用戶添加到該組中。

執(zhí)行“chgrp -Rdept /allproject/dept/db”命令,將“/allproject/dept/db”的屬組設(shè)定“dept”用戶組,即該組擁有對該項目的權(quán)限。

執(zhí)行“chmod -Rg+w /allproject/dept/db”命令,該組成員擁有對該目錄的寫權(quán)限。這樣,之后只要將用戶加入到該組中,就可以對該項目進行開發(fā)。

對于老版本的Linux來說,可能還需要執(zhí)行“chmod 2770 /allproject/dept/db”命令,確保該目錄中所有新建的文件以及子目錄的權(quán)限與父目錄的屬組一致。

執(zhí) 行“yumlist subversion”命令,可以查看subversion包的安裝信息。

對于開發(fā)者來說,需要將對應(yīng)的項目文件導(dǎo)入進來。 執(zhí) 行“echo 'export EDITOR=VIM' >>~/.bash_profile” 和“. ~/.bash_profile”命令,為其指定編輯器,將其放置到啟動文件中,并讓其立即生效。

執(zhí)行“set|grep EDI”命令,可以看到編輯器設(shè)置成功。

例如項目文件位于“/var/pub/peizhi” 目 錄中,先進入該目錄,執(zhí)行“svn import file:///allproject/dept”命令,在打開的編輯器中輸入合適的內(nèi)容后,保存后將其中的文件上傳到上述倉庫中的項目目錄中。

注意:其默認只上傳文本文件,而不是上傳二進制文件。

使用版本控制及存儲數(shù)據(jù)文件

以 上 述“dept” 組 中的“user1”賬戶身份登錄系統(tǒng),執(zhí)行“svn checkout file:///allproject/dept/”命令,將上述“dept”項目下載到本地。之后進入下載得到的“dept”目錄,可以查看其中的文件,執(zhí)行各種編輯操作。

當(dāng)完成對應(yīng)的修改操作后,假設(shè)了修改了名為“filename”的文件,在“dept”目錄中執(zhí) 行“svn commit filename”命令,輸入關(guān)于該文件的修改說明信息后,執(zhí)行提交操作上傳到倉庫中。

如 果 只 執(zhí) 行“svn commit”命令,可以自動搜索提交所有變動的文件。

當(dāng)然,對于該組中的其他用戶來說,也可以執(zhí)行同樣的操作。別的用戶要想及時了解項目中相關(guān)文件的變動情況,可以執(zhí)行“svn update”命令來獲取更新信息。

執(zhí)行“svn add filexxx”命令,可以向項目中追加名為“filexxx”的文件,之后再執(zhí)行提交操作。該文件必須位于注入“dept”項目文件夾,而不能隨意將任何路徑中的文件追加上去。中執(zhí)行“svn delete filexxx”命令,可以從項目中刪除文件。

注意:這只是標(biāo)記為刪除,之后必須執(zhí)行提交操作方可。

執(zhí)行“svn info”命令,可以檢查項目的狀態(tài)信息,例如訪問地址,倉庫根目錄,倉庫ID等。

執(zhí)行“svn info -R”命令,可以查看其中每個文件的版本以及其詳細信息。執(zhí)行“svn status -vu”命令,也可以查看與之類似的狀態(tài)信息。

當(dāng)項目組中的某個用戶希望查看某文件的版本信息時,可以執(zhí)行“svn log flname”命令,可以查看名為“finame”的文件的所有版本變動信息.

其所有的修改記錄全部被顯示出來,包括具體的版本號(例如r1,r2等)、修改者賬戶名、修改時間、修改的行數(shù)以及說明信息等。

如果想查看其與指定版本號存在哪些區(qū)別,可以執(zhí)行“svn diff –r3 flname”命令,可以查看“flname”文件當(dāng)前版本和“r3”版本之間的區(qū)別,包括在哪些行數(shù)據(jù)發(fā)生了變化等。

當(dāng)在本地對項目中的某文件進行了修改并存盤后,如果發(fā)現(xiàn)存在錯誤話的,利用版本控制機制可以將其迅速恢復(fù)到修改之前的狀態(tài)。

執(zhí) 行“svn revert flname”命令,就可以放棄對“flname”文件的所有修改,放棄存盤恢復(fù)到修改之前的狀態(tài)。

當(dāng)然,這必須在執(zhí)行提交操作之前進行。如果執(zhí)行了提交更新操作,則可以恢復(fù)到指定的版本。

執(zhí) 行“svn cat -r 1 flname > flname”命令,可以將“flname”文件恢復(fù)到“r1”版本狀態(tài)。

使用Web方式管理版本控制

如果想基于Web方式訪問倉庫,可以先在目標(biāo)主機上安裝和配置好Apache服務(wù)。在該機上建立名為“Newgc”的目錄,其中包含“devep”文件夾。

執(zhí)行“svnadmin create/newgc/devep”命令,對其進行初始化,創(chuàng)建一個新的項目。

執(zhí) 行“chown-R apache.apache /newgc/devep/db”命令,允許訪問Apache的用戶擁有針對該項目的是使用權(quán)限。

執(zhí) 行“mkdir /newgc/devep/dav”,創(chuàng) 建“dav”目錄,便于Apache在其中存儲數(shù)據(jù)。

執(zhí) 行“chown-R apache.apache /newgc/devep”命令,針對該“dav”目錄設(shè)置公開的訪問權(quán)限。

執(zhí) 行“yum install mod_dav_svn.x86_64”命令,安裝“mod_dav_svn”模塊。

執(zhí) 行“/etc/init.d/httpd restart”命令,重啟Apache進程。

執(zhí)行“vim /etc/httpd/conf.d/subversion.conf”命 令,打 開“subversion.conf”配置文件,在其中可以看到一些示例說明信息,這里只是簡單舉例,添加“”,“DAV svn”,“SVNParentPath /newgc”,“”等 行內(nèi)容,之后保存文件。

猜你喜歡
用戶
雅閣國內(nèi)用戶交付突破300萬輛
車主之友(2022年4期)2022-08-27 00:58:26
您撥打的用戶已戀愛,請稍后再哭
關(guān)注用戶
商用汽車(2016年11期)2016-12-19 01:20:16
關(guān)注用戶
商用汽車(2016年5期)2016-11-28 09:55:15
兩新黨建新媒體用戶與全網(wǎng)新媒體用戶之間有何差別
關(guān)注用戶
商用汽車(2016年6期)2016-06-29 09:18:54
關(guān)注用戶
商用汽車(2016年4期)2016-05-09 01:23:12
挖掘用戶需求尖端科技應(yīng)用
Camera360:拍出5億用戶
100萬用戶
主站蜘蛛池模板: 国产专区综合另类日韩一区| 亚洲欧美极品| www.国产福利| 亚洲性影院| 亚洲色婷婷一区二区| 香蕉精品在线| 国产jizzjizz视频| 亚洲AV电影不卡在线观看| 中文字幕久久精品波多野结| 国产二级毛片| 成年网址网站在线观看| 国产中文一区a级毛片视频| 内射人妻无套中出无码| 亚洲综合亚洲国产尤物| 九色综合伊人久久富二代| 精品亚洲国产成人AV| 日本三级欧美三级| 真实国产精品vr专区| 国产成人AV男人的天堂| 一本视频精品中文字幕| h网址在线观看| 毛片视频网| 亚洲天堂视频在线观看免费| av一区二区无码在线| 蜜芽国产尤物av尤物在线看| 鲁鲁鲁爽爽爽在线视频观看| 亚洲中文字幕无码mv| 国产精欧美一区二区三区| 国产在线拍偷自揄观看视频网站| 国产成人免费视频精品一区二区| 日本精品视频| 久久成人免费| 国产成人AV综合久久| 日韩毛片在线播放| 久久久久九九精品影院| 四虎影视无码永久免费观看| 99这里精品| 91无码网站| 成人年鲁鲁在线观看视频| 亚洲人免费视频| 91麻豆久久久| 亚洲黄网视频| 色老头综合网| 美女无遮挡免费视频网站| 亚洲男人天堂久久| 国产经典三级在线| 全色黄大色大片免费久久老太| 国产精品视频观看裸模| 国产一级裸网站| 操国产美女| 九九热精品视频在线| 日韩色图区| 国产裸舞福利在线视频合集| 黄色一及毛片| 试看120秒男女啪啪免费| 国产女同自拍视频| 久久这里只有精品2| 91九色最新地址| 精品午夜国产福利观看| 无码福利日韩神码福利片| 国产欧美中文字幕| 激情视频综合网| 在线观看免费黄色网址| 国产成人亚洲无吗淙合青草| 国产精品一区二区久久精品无码| 久99久热只有精品国产15| 久久久久夜色精品波多野结衣| 91po国产在线精品免费观看| 久久99国产综合精品女同| 色噜噜狠狠狠综合曰曰曰| 国产精品第三页在线看| 国产精品免费久久久久影院无码| 亚洲va在线观看| 国产男女XX00免费观看| 99热最新网址| 国产日韩欧美精品区性色| 亚洲另类第一页| 国产在线第二页| 午夜a级毛片| 久久精品波多野结衣| 人妻91无码色偷偷色噜噜噜| 亚洲欧洲日本在线|