使用本地SVN(TortoiseSVN)管理自己的软件版本

目录

如何使用本地SVN(TortoiseSVN)管理自己的软件版本

1. 安装TortoiseSVN.

2. 建立SVN数据库

3. 得到本地SVN数据库地址:

4. 为了方便管理, 可以在Svn中建立自己想要的文件结构

5. 上传代码:  最简单的, 直接把程序对应的文件夹拖进来即可

6 代码从SVN中下载.

7. 软件更改后的提交(上传)

8.  如何返回到任意一个的版本.

9. 一些使用建议:


如何使用本地SVN(TortoiseSVN)管理自己的软件版本

本文介绍 TortoiseSVN 部署在个人PC电脑上, 供自己一个人使用的方法.

,在没有遇到 TortoiseSVN之前,   自己软件的版本控制就是一堆 *.zip 压缩文件. 然后, 麻烦事来了:

1. 查找版本之间的差别, 还得解压各ZIP文件进行对比.

2. 常常因为改几句代码导致死机, 然后再也找不到自己想要的版本, 崩溃啊, 从头再移代码吧.

自从有了SVN版本控制软件, 真的是香啊. 

在公司团队使用中, SVN通常部署在服务器上,  进行团队协作开发, 解决成员之间代码同步,冲突等问题.  

很显然, 也可以把SVN部署在自己的本地电脑上,  对自己一个人写的软件进行版本控制, 代码对比等. 

//----------------------------------------------------------------------------------

本文介绍 TortoiseSVN 部署在个人PC电脑上, 供自己一个人使用的方法.

//----------------------------------------------------------------------------------

1. 安装TortoiseSVN.

一路默认安装下来即可. 安装成功后, 在桌面空白处, 点击鼠标右键菜单中可以看到有 TortoiseSVN 菜单选项.

2. 建立SVN数据库

一般新建一个文件夹, 在文件夹中建立一个SVN数据库. (后面所有代码提交都会放到这个数据库)

示例如下: 新建一个SvnBase文件夹,  鼠标右键可以弹出如下菜单项, 点击 "Create respository here"

                             

点击 "Create respository here"后, 会弹出如下选项,  自己一个人的项目, 直接点击OK即可  (可以不用点击 "Create folder structure / Start Repobrowser"之类)

可以看到, 在数据库文件夹中, 增加了一堆SVN自己的管理文件. 到此, SVN数据库就建立起来了.

//----------------------------------------------------------------------------------

3. 得到本地SVN数据库地址:

 在数据库文件夹中, 点击鼠标右键,选择 "Tortois-eSVN->Repo-browser", 弹出的地址也就是 SVN的数据库地址. 记下这个地址, 下次提交代码往这个地址提交即可.

可以看到, 目前SVN的数据库地址为 "file:///G:/SvnBase" , 目前数据库中还没有任何东西, 

//----------------------------------------------------------------------------------

4. 为了方便管理, 可以在Svn中建立自己想要的文件结构

  操作如下

     

建立一个 "客户支持"文件夹后, 效果如下, 接下来可以往里面添加代码了

//----------------------------------------------------------------------------------

5. 上传代码:  最简单的, 直接把程序对应的文件夹拖进来即可

.(建议先删除编译产生的中间文件, 如obj文件等, 再进行第一次上传, 建后文中的TIPS2)

每次上传代码时, 建议均写上 日志信息, 方便后面查看.

//----------------------------------------------------------------------------------

上传完成后, 记住SVN路径, 接下来就可以从这个路径下载代码了.

如此次上传路径为:

file:///G:/SvnBase/客户支持/20200612_SDK_AB530X_V06X_S5620

//----------------------------------------------------------------------------------

6 代码从SVN中下载.

可以把 本地文件夹 20200612_SDK_AB530X_V06X_S5620中的代码删除, 然后从SVN中把相同的代码下载下来, 这样, 代码就受SVN管理了.

代码下载下来后, 可以看到, 文件夹中多了一个  ".svn" 隐藏的管理文件,  源代码文件夹中含有 绿色勾. 这样就表示软件就受SVN 版本控制了

到此, 上传的第一个版本软件就受SVN 版本控制了.

//----------------------------------------------------------------------------------

7. 软件更改后的提交(上传)

如在程序main.c中增加了一个svn_test函数.

void hello_print(void)

{

    printf("hello_print\n");

}

代码更改后, 可以通过TortoiseSVN-->Check for modifications 查看软件中修改的地方:

代码修改如下:

同时, 若源代码与SVN版本库有不同时,  受版本控制的文件夹上会有 红色叹号, 如下图:

若确认好修改后, 就可以上传修改后的代码到 SVN库中了.

在文件夹空白处点右键, 弹出对话框中选则 SVN Commit即可上传修改的代码.

提交成功后, 可以通过TortoiseSVN-->Show log 查看每个版本信息, 同时, 可以看到底文件夹又变回了 绿色勾 (表示软件与SVN库中软件是一致)

//----------------------------------------------------------------------------------

8.  如何返回到任意一个的版本.

    通过TortoiseSVN-->Update to revision, 把软件返回到任意一个版本.

如下图, 可以通过查看日志, 返回到第4个版本

点上图OK, 更新到第4版本后, 可以查看日志, 黑色粗体日志表示目前版本已经在第4版了.

//----------------------------------------------------------------------------------

9. 一些使用建议:

TPS1:  尽量在关键修改完成后, 均上传版本, 方便后面返回到关键版本查看问题.

TIPS2:  上传到SVN库中的文件, 尽量把编译过程中的临时文件删除掉, 减少没有必要的上传.

           如果蓝讯530X工程中, 可以在第一次版本上传前, 运行一次图中的 Zdel.bat,删除可能存在的编译临时文件.

Zdel.bat文件中的内容如下:  可以看到删除了obj等与源代码无关的一些临时文件.

del app.layout  /q

del app.depend  /q

del app.bmarks  /q

del Output\bin\app.rv32  /q

del Output\bin\xcfg.xm.bak /q

rmdir Output\obj  /q /s 

//----------------------------------------------------------------------------------

TIPS3:  TortoiseSVN自带的比较软件不太好用, 建议在配置中改成ByondCompare进行比较.

//----------------------------------------------------------------------------------

以上介绍了本地TortoiseSVN常用操作, 更多操作可以自行探索.

本文结束.  Thanks.


 

  • 10
    点赞
  • 47
    收藏
    觉得还不错? 一键收藏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值