使用Linux命令行和Subversion,是否可以获取目录并向其添加版本控制?
基本上,我想将目录导入新创建的存储库,但也要将目录作为工作副本而不必检查它.
假设您已经使用svnadmin在/ svn/foo/mydirname创建了一个存储库,并且您想要版本控制/ home/user/mydirname(这是你的意思吗?).
然后执行以下操作:
cd /home/user/mydirname svn co file:///svn/foo/mydirname . #This only creates the ".svn" folder for version control svn add ./* #Tell svn you want to version control all files in this dir svn ci #Check the files in
您的目录现在受版本控制!
是的,您可以将现有目录(包含内容)导入SVN存储库,并使用当前位置作为版本控制的工作副本.按如下方式进行:
假设您的(未版本化的)项目源位于/ home/user/projectx中,并且您的存储库已准备好在file:/// svnrepo
首先,在项目树之外的某个位置创建一个空目录,比如说/tmp/empty
.在Subversion存储库中导入该空目录:
cd /tmp/empty svn import . file:///svnrepo/projectx
进入填充的项目目录.现在查看您在步骤1中创建的存储库位置:
cd /home/user/projectx svn checkout file:///svnrepo/projectx .
这会将.svn文件添加到您填充的项目目录中,但它不会执行任何其他操作,因此您现有的文件是安全的.
接下来,将包含文件的目录添加到存储库:
svn add * svn commit -m 'initial commit'
完成.