- 1. SVN安装与配置
- 1.1 下载SVN
- 1.2 安装SVN
- 1.3 IDEA配置SVN
- 2. SVN基本命令
- 2.1 代码检出 checkout
- 2.2 提交代码 commit
- 2.3 更新代码 update
- 2.4 添加文件 add
- 2.5 删除文件 delete
- 2.6 查看日志 log
- 2.7 查看变动 diff
- 2.8 撤销修改 revert
- 2.9 添加忽略 ignore
- 3. SVN高级命令
- 3.1 查看状态 status
- 3.2 清理 cleanup
- 3.3 查看信息 info
- 3.4 查看文件列表 ls
- 3.5 查看文件内容
- 3.6 查看 blame
- 3.7 地址重定向
- 3.8 分支 *** 作
- 3.9 帮助命令
- 下载地址 https://tortoisesvn.net/downloads.html
如上图所示, 红框部分需要勾选下, 别的没什么需要注意的
1.3 IDEA配置SVN安装好以后 在设置里面配置哈子对应的路径即可
2. SVN基本命令- 免费的SVN服务器
- SVN文字教程
- SVN视频教程
- IDEA中使用SVN
2.1 代码检出 checkout
这个命令会把 SVN 服务器上的代码下载到我们电脑上,checkout 也可以简写为 co
svn checkout svn://svnbucket.com/xxx/xxx # 指定存储目录 svn checkout svn://svnbucket.com/xxx/xxx save-dir # 指定用户名密码。 svn checkout svn://svnbucket.com/xxx/xxx --username xxxx --password xxx2.2 提交代码 commit
此命令可以把我们本地的修改提交到 SVN 服务器,这样其他同事就能更新到我们的代码了。
commit 可以简写为 ci,-m 参数后面跟的是本次提交的描述内容
# 描述是必须的,但是可以填写空字符串,不指定 svn commit -m "提交描述" # 只提交指定文件或目录 svn commit /path/to/file-or-dir -m "提交指定文件" # 指定后缀的所有文件 svn commit *.js -m "提交所有 js 文件"2.3 更新代码 update
执行此命令后会把其他人提交的代码从 SVN 服务器更新到我们自己电脑上,update 也可以简写为 up
# 更新到最新 svn update # 更新到指定版本的代码。特别是最新版本代码有问题时,我们可以用这个命令回到之前的版本 svn update -r xxx # 仅更新指定文件或者目录 svn up /path/to/file-or-dir2.4 添加文件 add
新建的文件,我们需要用 add 命令把它们加入 SVN 的版本管理,然后我们才可以提交它。
注意:添加后还需要进行提交喔。
# 添加指定文件或目录 svn add /path/to/file-or-dir # 添加当前目录下所有 php 文件 svn add *.php2.5 删除文件 delete
此命令会从 SVN 移除版本控制,移除后你需要提交一下
svn delete /path/to/file-or-dir # 删除版本控制,但是本地依旧保留文件 svn delete /path/to/file-or-dir --keep-local2.6 查看日志 log
# 查看当前目录的日志 svn log # 查看指定文件或目录的提交日志 svn log /path/to/file-or-dir # 查看日志,并且输出变动的文件列表 svn log -v # 限定只输出最新的 5 条日志 svn log -l 52.7 查看变动 diff
# 查看当前工作区的改动 svn diff # 查看指定文件或目录的改动 svn diff /path/to/file-or-dir # 本地文件跟指定版本号比较差异 svn diff /path/to/file-or-dir -r xxx # 指定版本号比较差异 svn diff /path/to/file-or-dir -r 1:22.8 撤销修改 revert
# 撤销文件的本地修改 svn revert test.php # 递归撤销目录中的本地修改 svn revert -R /path/to/dir2.9 添加忽略 ignore
SVN 的忽略是通过设置目录的属性 prop 来实现的,添加后会有一个目录属性变动的修改需要提交,记得要提交一下喔,这样其他人也有了这个忽略配置。
# 忽略所有 log 文件。注意最后有个点号,表示在当前目录设置忽略属性。 svn propset svn:ignore "*.log" . # 递归忽略 global-ignores svn propset svn:global-ignores "*.log" . # 从文件读取忽略规则,一行一个规则。 svn propset svn:ignore -F filename.txt . # 打开编辑器修改忽略属性 svn propedit svn:ignore . # 查看当前目录的属性配置 svn proplist . -v # 删除当前目录的忽略设置 svn propdel svn:ignore .
3. SVN高级命令 3.1 查看状态 status忽略仅对还未添加到版本库的文件生效,已经在版本库里的文件,添加忽略后是不会自动删除的也不会忽略,需要手动 delete 命令删除下才行。
任何时候,你可以用下面的命令查看当前工作目录的 SVN 状态喔,会列出来哪些文件有变动。
svn status svn status /path/to/file-or-dir3.2 清理 cleanup
这个命令我们经常在 SVN 出现报错时可以执行一下,这样就会清理掉本地的一些缓存
svn cleanup3.3 查看信息 info
svn info3.4 查看文件列表 ls
svn ls # 指定版本号 svn ls -r 1003.5 查看文件内容
# 查看指定版本的文件内容,不加版本号就是查看最新版本的 svn cat test.py -r 23.6 查看 blame
显示文件的每一行最后是谁修改的(出了BUG,经常用来查这段代码是谁改的)
svn blame filename.php3.7 地址重定向
如果你的 SVN 地址变了,不需要重新 checkout 代码,只需要这样重定向一下就可以了。
svn switch --relocate 原 SVN 地址 新 SVN 地址3.8 分支 *** 作
# 创建分支,从主干 trunk 创建一个分支保存到 branches/online1.0 svn cp -m "描述内容" http://svnbucket.com/repos/trunk http://svnbucket.com/repos/branches/online1.0 # 合并主干上的最新代码到分支上 cd branches/online1.0 svn merge http://svnbucket.com/repos/trunk # 分支合并到主干 svn merge --reintegrate http://svnbucket.com/repos/branches/online1.0 # 切换分支 svn switch svn://svnbucket.com/test/branches/online1.0 # 删除分支 svn rm http://svnbucket.com/repos/branches/online1.03.9 帮助命令
# 查看SVN帮助 svn help # 查看指定命令的帮助信息 svn help commit
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)