0

    TortoiseSVN 5分钟快速入门

    2023.06.01 | admin | 203次围观

    TortoiseSVN 是 Subversion 版本控制系统的一个免费开源客户端,可以超越时间的管理文件和目录。文件保存在中央版本库,除了能记住文件和目录的每次修改以外,版本库非常像普通的文件服务器。你可以将文件恢复到过去的版本,并且可以通过检查历史知道数据做了哪些修改,谁做的修改。

    一、安装SVN客户端

    首先安装SVN客户端,windows一般选择乌龟客户端:。 根据系统位数选择相应客户端进行安装。

    二、获取仓库代码

    假如项目已经在服务器的仓库里,那么现在你要做的就是把它检出到本地。 首先创建一个空文件夹,用来存放项目源代码。在空文件夹内右键,选择SVN检出(SVN Checkout ...)菜单项。

    在Checkout界面,填入项目的版本库地址,选择确定。

    此时会弹出一个对话框让你输入账号密码,输入你的账号密码即可。记得勾选保存认证,不然每次操作都会让你输入。

    此时在指定的目录下就能看到checkout下来的项目代码了。

    SVN的修订号是怎么回事?

    svn commit 操作可以作为一个原子事务操作发布任意数量文件和目录的修改。在你的工作副本中,你可以改变文件内容,创建、删除、改名和复制文件和目录,然后作为一个整体提交。

    在版本库中,每次提交被当作一次原子事务操作:要么所有的改变发生,要么都不发生,Subversion 努力保持原子性以应对程序错误、系统错误、网络问题和其他用户行为。每当版本库接受了一个提交,文件系统进入了一个新的状态,叫做版本,每个版本被赋予一个独一无二的自然数,一个比一个大,初始修订号是 0,只创建了一个空目录,没有任何内容。

    可以形象的把版本库(Repository)看作一系列树,想象有一组版本号,从 0 开始,从左到右,每一个修订号有一个目录树挂在它下面,每一个树好像是一次提交后的版本库“快照”。

    不像其它版本控制系统,Subversion 的版本号是针对整个目录树的,而不是单个文件。每一个版本号代表了一次提交后版本库整个目录树的特定状态,另一种理解是版本 N 代表版本库已经经过了 N 次提交。

    如何查看SVN上当前代码库的最新版本号是多少?

    TortoiseSVN 5分钟快速入门

    打开右键菜单中的show log,然后看到一系列版本更新历史,最上面的那一行,即是最新版本号,所谓的head revision。

    如何查看本地SVN管理的代码库的当前版本号是多少?

    打开右键菜单中的show log,然后看到一系列版本更新历史,显示为粗体的那一行即你本地当前的版本。

    如何将本地代码库的版本回退到某一个旧版本?

    打开右键菜单中的update to revision 在弹出的对话框中进行版本号指定即可,如果选择head revision则更新为最新版本。

    三、提交代码到仓库

    如果你更新了目录中的文件,提交代码需要用到commit功能,commit的功能不仅仅是上传,他会和服务器上面的文件进行对比,假如你更新了某个文件而服务器上面也有人更新了这个文件,并且是在你checkout之后做的更新,那么它会尝试将你的更新和他人的更新进行融合(merge),假如自动merge不成功svn下载项目到本地卡掉,那么报告conflict,你必须自己来手动merge,也就是把你的更新和别人的更新无冲突的写在一起。

    commit的时候,最好填写Log信息,这样保证别人可以看到你的更新究竟做了写什么。这就相当于上传文件并且说明自己做了那些修改svn下载项目到本地卡掉,多人合作的时候log非常重要。

    TortoiseSVN的commit只会上传原先checkout然后又被修改了的文件,假如你新加入了某些文件,需要右键点击文件选择Add,然后文件上面会出现一个加号,在下次commit的时候它就会被upload并且被标记为绿色对勾。没有绿色对勾的文件不会被commit。

    TortoiseSVN图标不能显示的解决方案?

    右键->TortoiseSVN->setting->Icon Overlays->Status cache->default/Shell,然后重启电脑。

    TortoiseSVN的Settings窗口:

    我们在日常使用中,最常用的是更新(SVN Update)和提交(SVN Commit)操作。这两个步骤务必要非常熟练。

    版权声明

    本文仅代表作者观点。
    本文系作者授权发表,未经许可,不得转载。

    发表评论