菜鸟科技网

svn创建项目命令具体怎么写?

SVN 的核心概念是 仓库,它是一个中央存储库,存放着项目的所有文件和版本历史,我们通常说的“创建项目”,实际上是在 SVN 仓库中创建一个新的项目目录。

svn创建项目命令具体怎么写?-图1
(图片来源网络,侵删)

核心概念

  • 仓库: 集中存放所有项目代码和历史的中央服务器。
  • 导入: 将本地的一个文件夹(项目代码)首次上传到 SVN 仓库的过程,这是创建项目的关键步骤。
  • 检出: 从仓库中下载一个项目副本到本地电脑进行开发。

使用命令行 (推荐用于服务器端或自动化)

这是最标准、最灵活的方式,通常由管理员在 SVN 服务器上执行。

第 1 步:在服务器上创建空的 SVN 仓库

这一步是在 SVN 服务器上创建一个全新的、空的仓库,假设你的 SVN 仓库根目录是 /var/svn

# 1. 创建仓库目录 (创建一个名为 "my_new_project" 的项目)
svnadmin create /var/svn/my_new_project
# 2. (可选但推荐) 设置仓库的访问权限
# 你需要编辑仓库 conf 目录下的三个文件:
# - svnserve.conf: 主配置文件,定义认证方式和权限文件
# - passwd: 用户名和密码列表
# - authz: 定义用户和用户组对不同目录的读写权限
# 编辑 /var/svn/my_new_project/conf/svnserve.conf
# 取消注释并修改以下行:
[general]
anon-access = none          # 匿名用户无任何权限
auth-access = write         # 认证用户有写权限
password-db = passwd         # 密码文件路径
authz-db = authz            # 权限文件路径
# 编辑 /var/svn/my_new_project/conf/passwd,添加用户
# 格式:用户名 = 密码
[users]
harry = harry_secret
sally = sally_secret
# 编辑 /var/svn/my_new_project/conf/authz,分配权限
# 格式:[仓库路径:/项目路径]
[/]
harry = rw
sally = r

服务器上已经有了一个名为 my_new_project 的空仓库。

第 2 步:在本地准备项目代码

在你的开发机器上,创建一个包含项目初始代码的文件夹。

svn创建项目命令具体怎么写?-图2
(图片来源网络,侵删)
# 1. 创建一个本地项目文件夹
mkdir -p ~/local_work/my_new_project
cd ~/local_work/my_new_project
# 2. 在其中放入你的项目文件
# 创建一个 README.md 文件
echo "# My New Project" > README.md
echo "echo 'Hello, SVN!'" > build.sh
chmod +x build.sh

第 3 步:将本地项目导入到 SVN 仓库

这是“创建项目”的最终一步,使用 svn import 命令将本地文件夹的内容上传到仓库。

# svn import 本地路径 SVN仓库_URL -m "提交日志"
# 注意:URL 的末尾通常没有斜杠,否则会包含本地文件夹名
svn import ~/local_work/my_new_project \
           svn://your_server_ip/svn/my_new_project \
           -m "Initial project import"
  • svn://your_server_ip/svn/my_new_project: 这是你的 SVN 仓库地址。
  • -m "Initial project import": 是这次导入的提交日志,非常重要,必须提供。

执行成功后,你本地 ~/local_work/my_new_project 文件夹里的内容就被上传到了服务器的 my_new_project 仓库中。你的本地文件夹仍然是一个普通文件夹,它还不是 SVN 工作副本。

第 4 步:从仓库检出项目到本地

你可以从仓库下载一个“干净”的工作副本进行日常开发了。

# 创建一个新的目录用于检出
mkdir ~/development
cd ~/development
# svn checkout SVN仓库_URL 本地工作副本目录名
svn checkout svn://your_server_ip/svn/my_new_project my_new_project_wc
# 进入工作副本目录
cd my_new_project_wc
# 你会看到 .svn 隐藏文件夹,这表明它是一个 SVN 工作副本
ls -la

你就可以在这个 my_new_project_wc 目录里进行 svn add, svn commit, svn update 等所有日常的版本控制操作了。

svn创建项目命令具体怎么写?-图3
(图片来源网络,侵删)

使用图形化客户端 (如 TortoiseSVN)

如果你使用 Windows,TortoiseSVN 是最流行的客户端,图形界面非常直观。

第 1 步:创建仓库 (通常由管理员完成)

管理员需要使用 TortoiseSVN 的 Repo-browser 或命令行 svnadmin 在服务器上创建一个空的仓库,并配置好权限,与命令行方法第1步相同。

第 2 步:准备项目代码

在你的电脑上,创建一个包含项目初始代码的文件夹(D:\MyNewProject)。

第 3 步:导入项目

  1. D:\MyNewProject 文件夹上 右键
  2. 选择 TortoiseSVN -> Import... (导入)。
  3. 在弹出的窗口中:
    • To URL (URL): 输入你的 SVN 仓库地址,svn://your_server_ip/svn/my_new_project
    • Message (日志信息): 输入提交日志,"Initial project import"。
  4. 点击 OK
  5. 系统会提示你输入用户名和密码(如果你在仓库中设置了认证)。
  6. 导入成功后,你的本地文件夹 D:\MyNewProject 仍然不是工作副本。

第 4 步:检出项目

  1. 在你的电脑上选择一个你希望存放代码的空位置(D:\Dev),右键
  2. 选择 TortoiseSVN -> Checkout... (检出)。
  3. 在弹出的窗口中:
    • URL of repository (仓库URL): 输入 svn://your_server_ip/svn/my_new_project
    • Checkout directory (检出目录): 输入 D:\Dev\MyNewProject
    • Revision (版本): 选择 HEAD (最新版本)。
  4. 点击 OK
  5. 输入用户名和密码。
  6. 完成后,D:\Dev\MyNewProject 就是一个标准的 SVN 工作副本了,里面会有一个绿色的对勾标记。

总结与关键区别

步骤 命令行 TortoiseSVN (图形界面)
创建仓库 svnadmin create /path/to/repo (服务器端) 由管理员完成,通常用命令行或服务器管理工具。
准备代码 mkdir project_dir; echo "..." > file 在本地创建文件夹并放入文件。
导入项目 svn import local_dir svn://url/repo -m "log" 右键文件夹 -> TortoiseSVN -> Import...
检出项目 svn checkout svn://url/repo local_work_copy 右键目标位置 -> TortoiseSVN -> Checkout...

核心要点:

  • 创建项目 = 创建仓库 + 导入初始代码
  • 导入 是一个一次性操作,用于将现有代码放入仓库。
  • 检出 是日常工作的开始,它创建一个与仓库同步的本地副本。
  • 导入完成后,原始的本地文件夹并不是工作副本,你需要从仓库重新检出一个新的副本才能开始使用 commit 等命令。
分享:
扫描分享到社交APP
上一篇
下一篇