cvs倉儲
A. 倉庫管理程序(用VBA或者VB和csv寫的)
總共110分,我不做!
B. 電子廠cvs是什麼部門
電子廠的物料員在工廠里應屬於倉儲部門。物料員:顧名思義就是物品材料(庫)管理員。倉儲部門9大業務(倉儲規劃、物資驗收、物資入庫、存儲保管、物資盤點、庫...
C. 如何在windows環境下配置cvs倉庫
CVS源自Unix系統,其Windows的移植版並沒有伺服器功能。在Windows下一般採用安裝這個軟體來建立CVS Repository,但CVSNT的操作方法和原始的CVS略微不同。
CVS本身是命令行形式,其配置過程比較繁雜。
CVS的多帳戶配置需要手動修改Repository的CVSROOT文件夾里的文件,缺乏統一的界面。
在安裝了CVSNT伺服器之後,默認的用戶就是建立Repository的Windows系統的登陸帳戶,但在多人開發的時候,肯定沒人希望大家都使用同一個名字來Commit;更重要的是,我們可能需要配置開發人員的許可權,例如限制某些人只能看程序,而某些人可以Commit程序,某些人可以添加新的Mole。以下是詳細的步驟,環境是CVSNT 2.5.03 (Build 2151) + TortoiseCVS 1.8.25:
1. 使用CVSNT建立一個Repository。假設初始使用Windows的管理員administrator密碼登陸,Repository使用Pserver協議,IP是1.2.3.4,埠號是2401,Repository名稱是/TestRep,密碼是123。這時的administrator也是此Repository的管理員。
2. 為了進行多用戶配置,必須修改Repository的CVSROOT目錄的幾個文件。首先在客戶端將:pserver:[email protected]/TestRep設為CVSROOT環境變數(請注意區分CVSROOT目錄和CVSROOT環境變數)。然後用administrator登陸到CVS,最後Check Out出此CVSROOT目錄。命令如下所示:
cvs login
//輸入密碼123
cvs co CVSROOT
3. 在伺服器端為Windows添加一個專門用於CVS操作的Windows帳戶。所有的CVS帳戶都要映射到這個Windows帳戶上進行實際的操作。雖然很多資料並沒有提到需要建立Windows帳戶,但我在實驗中發現沒有這種帳戶,CVS在後邊執行任何操作時都會報告沒有此帳戶的錯誤。假如這個新的帳戶叫做cvsuser。使用Windows命令
net user cvsuser cvsuserpassword /Add
可以添加此帳戶。在添加完成之後,一定要記得將/TestRep在伺服器上的實際文件夾的許可權里添加cvsuser的讀寫許可權,否則到最後任何映射到cvsuser的CVS帳戶都會因為沒有寫許可權無法進行正常的commit操作。首先在伺服器上的資源管理器里的「工具」菜單里找到「文件夾選項」,在隨後出現的「查看」選項卡里找到「使用簡單文件夾共享」的項目,取消掉前面的勾,單擊確定。然後右擊/TestRep所在文件夾,單擊「屬性」。在隨後打開的對話框里可以看到「安全」選項卡。我們需要在這里添加cvsuser的讀寫許可權。
4.為CVS添加自己的帳戶。通過使用命令cvs passwd我們可以添加任意多個CVS帳戶(當然,只是針對當前的Repository)。所有的帳戶信息會被保存在CVSROOT目錄的passwd文件當中。然而這個文件是不能Check Out出來的,只能在伺服器那裡看到它,並且其保存的密碼信息是被加過密的。我們可以添加cvsadmin,user1,user2,anonymous等用戶。例如添加cvsadmin時的命令是:cvs passwd -a -r cvsuser cvsadmin
//輸入cvsadmin的密碼
//再次輸入cvsadmin的密碼
這樣就新添了cvsadmin帳戶,並將其映射到Windows帳戶cvsuser上(-a表示添加一個賬戶,-r表示影射到操作系統的帳戶中。我期望將cvsadmin作為以後/TestRep的管理員。這一點十分重要,如果這時候不設置的話,再將CVS改為「僅使用CVS帳戶校驗模式」之後就再也沒有機會添加管理員了(因為只有管理員可以看得到和操作CVSROOT目錄)。
D. 遠端伺服器定義的cvs倉庫本地路徑怎麼查看
環境:windowsXP/2003操作系統、
硬體條件(客戶端最低配置:硬碟10G/內存回256Mb/CPU1.0G;伺服器端:硬碟20G/內存512Mb/CPU1.5G);
安裝過程選擇所有答安裝,對於所有人員只需安裝客戶端程序,所有操作都在客戶端上進行,伺服器端程序由配置管理員負責安裝和維護,服務端安裝和配置略。
客戶端安裝好後設置語言為中文:
選擇「Prefererces」(屬性)菜單後設置語言為中文。
1.2取出模塊
取出模塊就是第一次從CVS伺服器上獲得一個數據模塊,從CVS倉庫中取出模塊,創建該模塊的本地工作目錄,使本地目錄與伺服器相關聯。
E. 如何更改cvs倉庫名稱
方法如下:
可以在EXCEL里可以直接編輯,在excel里另存為時可選擇csv格式。
如果版是稍做修改,建權議直接用Notepad,不會導致格式出錯;
如果需要大量修改,可採用Excel,如果直接打開存在格式錯誤,則需要採用數據源裝載方式,在菜單「數據\導入外部數據\導入數據」,找到列表中的文本文件(*.txt,*.prn,*.csv),然後Step by Step。
注意格式的選擇,預覽正確後,導入後即可。
F. 怎麼刪除cvs倉庫中不用的文件夾
刪除文件分為Remove與Erase兩種。Remove是同時把文件從本地和遠程專倉庫刪除掉屬,而Erase是刪除本地文件,不動遠程倉庫中的版本。 執行Remove操作後,該文件從本地目錄刪除放入回收站了,其圖標、版本號及狀態相應變化,並輸入執行信息。下一步需要...
G. cvs創建數據倉庫問題
你從這里四下望過去,
他就安安靜靜了,當天夜裡,
後來我走過了你上山時走過的路,
熄滅了光亮
也會扭曲外貌。
我這一個靜謐的午後哈哈
H. Linux下CVS倉庫的配置
建議在linux下,查看一下你的cvs目錄許可權,用命令ll+文件夾名,或者直接chmod+766+文件夾名 給予讀寫許可權,「+」=空格
I. 用戶可以刪除cvs 倉庫怎麼辦
CVS是一個很老的版本控制的工具軟體了。
想入門的話推薦一個簡單教程:(版權歸原作者哦,你可以去網路一下原文。)
-----------------------------------------------------
CVS簡單教程
------------------------------
現在伺服器和客戶端都設置好了,那麼怎麼用呢,我在這里寫一個最簡單的(估計也是最常用的)命令介紹:
首先,建立一個新的CVS項目,一般我們都已經有一些項目文件了,這樣我們可以用下面步驟生成一個新的CVS項目:
1. 進入到你的已有項目的目錄,比如叫 cvstest:
$cd cvstest
2. 運行命令:
$cvs import -m "this is a cvstest project" cvstest v_0_0_1 start
說明:import 是cvs的命令之一,表示向cvs倉庫輸入項目文件.
-m參數後面的字串是描述文本,隨便寫些有意義的東西,如果不加 -m 參
數,那麼cvs會自動運行一個編輯器(一般是vi,但是可以通過修改環境變數
EDITOR來改成你喜歡用的編輯器.)讓你輸入信息,
cvstest 是項目名稱(實際上是倉庫名,在CVS伺服器上會存儲在以這個名字
命名的倉庫里.)
v_0_0_1是這個分支的總標記.沒啥用(或曰不常用.)
start 是每次 import 標識文件的輸入層次的標記,沒啥用.
這樣我們就建立了一個CVS倉庫了,然後,我們可以把這個測試項目的文件刪除.試驗一下如何從倉庫獲取文件.這里我假設上面的所有客戶端工作你都已經做過了.
運行下面的命令:
$cvs checkout cvstest
從倉庫中檢索出cvstest項目的源文件.
如果你已經做過一次checkout了,那麼不需要重新checkout,只需要進入cvstest項目的目錄,更新一把就行了:
$cd cvstest
$cvs update一下即可.又或者你不想直接更新,只是想看看有沒有更新的東西,那麼:
$cvs status
這時後會列印出一長串狀態報告(你可能需要用類似less這樣的命令分頁顯示,或者定向到一個輸出文件里慢慢看.),對項目中的每個文件有一份狀態報告,類似這樣:
===================================================================
File: foo.c Status: Up-to-date
Working revision: 1.1.1.1 'Some Date'
Repository revision: 1.2 /home/cvsroot/cvstest/foo.c,v
Sticky Tag: (none)
Sticky Date: (none)
Sticky Options: (none)
這里最重要的就是 Status 欄,這里總共可能有四種狀態:
Up-to-date:表明你要到的文件是最新的.
Locally Modified:表明你曾經修改過該文件,但還沒有提交,你的版本比倉庫里的新.
Needing Patch:表明有個哥們已經修改過該文件並且已經提交了!你的版本比倉庫里的舊.
Needs Merge:表明你曾經修改過該文件,但是偏偏有個不識相的也修改了這個文件,而且還提交給倉庫了!
如果你只是想保持軟體的同步的話(象我),那麼上面的東西就足夠用了.可是如果多人協作開發項目的話,可就不是了這么簡單了.當你參加項目,維護文件時,就需要更多命令,比如說你我都是某 nasdaq 項目的開發人員:
1,你對某個文件做了修改,比如說改了ceo.c,加了一行程序:printf("where can I find VC to cheat!");
改完之後你要把修改提交給倉庫,用命令:
$cvs commit -m "add a complain" ceo.c
或者就是:
$cvs commit -m "worry about money"
讓cvs幫你檢查哪個文件需要提交.
2,當我開始幹活的時候,可能我先:
$cvs status
一把,這時候我會看到:
==================================================================
File: ceo.c Status: Needing Patch
Working revision: 1.1.1.1 'Some Date'
Repository revision: 1.2 /home/cvsroot/nastaq/ceo.c,v
Sticky Tag: (none)
Sticky Date: (none)
Sticky Options: (none)
於是我知道有人改了ceo.c,於是我就:
$cvs update ceo.c
或者乾脆:
$cvs update
把ceo.c這個文件更新為最新版本,然後再幹活.然後提交.
如果這天你修改了coo.c,加了一行 puts("how about another kind of bragging?");
並且提交了,但是這時候我已經 $cvs status 過了,就是說我不知道你的修改.
而我加了一行printf("You must shamelessly and seems knowingness to act as a coo");
並且傻乎乎地提交:
$cvs commit coo.c
這時候,CVS會告訴我
cvs commit: Examing .
cvs server: Up-to-date check failed for 'coo.c'
cvs [server aborted]: correct above error first!
於是我知道有個狗屎在我修改文件的當口做了提交,於是我
$cvs update
這時cvs會報告:
RCS file: /home/cvsroot/nasdaq/coo.c,v
retrieving revision 1.1.1.1
retrieving revision 1.2
Merging differences between 1.1.1.1 and 1.2 into coo.c
rcsmerge: warning: conflicts ring merge
cvs update: conflicts found in coo.c
C coo.c
告訴你coo.c有版本沖突,於是我編輯coo.c,這時一般文件里看起來象這樣:
...
printf("You must shamelessly and seems knowingness to act as a coo");
<<<<<<< foo.c
=======
...
puts("how about another kind of bragging?");
>>>>>>> 1.2
...
於是我把上面改成:
printf("You must shamelessly and seems knowingness to act as a coo");
puts("how about another kind of bragging?");
然後
$cvs commit -m "merged" coo.c
於是下回你再更新的時候就有新的補釘要打...如此往復,直到完成所有修改.
不過這里有一些要注意的地方就是刪除程序,如果你刪掉一行對你可能沒有用的程序
puts("to be honest"); 而我不想刪除(因為我有用),而我不知情地直接:
$cvs update
了,那麼我的這行程序也完蛋了,所以這里我們要注意所有開發人員的協調,千萬不要亂刪東西,大不了用
#if 0
#endif
宏定義對括起來.實在要刪東西,那最好先標記一個版本:
$cvs tag v_0_0_1
然後你可以發布並刪除你自己的工作目錄里這個版本的文件(注意:不是刪除倉庫里的.):
$cvs release -d nasdaq
然後你再生成一個新分支:
$cvs rtag -b -r v_0_0_1 v_0_0_1_1 nasdaq
然後再建立v_0_0_1_1的分支
$cvs checkout -r v_0_0_1_1 nasdaq
編輯並修改這個分支的文件,這樣的做法比較好.
不過要注意的是,新標記和新分支的建立最好由項目的管理人員負責,否則每個人都做一個分支,那麼倉庫就太亂了.因此,比較的開發人員之間的直接溝通是不能忽略的.一般來說,在互聯網上的標准模式是有一個管理員(可能自己並不寫程序),有一個郵遞列表,大家都在郵遞列表上交流看法和做各種決議.當形成決議之後,管理員做一個新版本的標記.以此循環.
還有一些命令,比如要增加一個文件 garbage_china_concept_stocks_list:
$cvs add garbage_china_concept_stocks_list
然後還要:
$cvs commit garbage_china_concert_stocks_list
看起來有點象資料庫里的事務?的確是這樣.CVS維護著一個本地的參考文件(在CVS/Entries里),這樣提交的時候就可以一次地把所有改變放到伺服器端,這樣也更安全.同樣,如果想刪除文件 bankrupted_web_site:
$rm bankrupted_web_site
$cvs remove bankrupted_web_site
$cvs commit bankrupted_web_site
3,一些小技巧:
$Header$ 標記:把這個標記放在文件的任何地方都會被 cvs 替換成最後修改的 cvs 用戶名,該文件當前版本號,最後修改時間,該文件的 cvs 倉庫路徑,看起來象下面這個樣子:
// $Header: /home/cvsroot/simhost/simhost.cpp,v 1.2 2001/04/20 08:26:10 jqliu Exp $
一般我們把它放在開頭,這樣對程序員修改文件非常便利,很多時候你只要看一眼開頭就知道文件是否最新.
$Id$標記:把這個標記放在文件的任何地方都會被 cvs 替換成最後修改的 cvs 用戶名,該文件當前版本號,最後修改時間,該文件的 cvs 倉庫路徑,看起來象下面這個樣子:
$Id: simhost.cpp,v 1.3 2001/04/24 02:27:36 simhost Exp $
好了,上面所有的東西,估計就是我們用cvs時80%情況下用的命令和內容,包括文件的更新,提交,沖突的解決,分支的派生,增刪文件等.實際上cvs的功能之強大,遠遠超出我在這里描述的內容,我這個」速成」也就管不了太多了,希望隨著時間的推移,我們能夠更加有效地使用CVS.也希望大家能夠不斷補充這篇文章,最後能夠成為手冊,而不僅僅是速成.當然,還要更多地參考別的文檔.
J. 請教倉儲式商場(WHC),大賣場(HPM),大型超市(L-SPM),便利店(CVS)的英文詞彙謝謝
倉儲式商場warehouse store(不符合WHC)
大賣場hypermarket
大型超市Large supermarket
便利店 convinience store