Jerry 已将 array.c 文件添加到存储库中. Tom 还会查看最新代码并开始工作.
[tom @ CentOS~] $ svn co http://svn.server.com/svn/project_repo --username = tom
以上命令将产生以下结果.
A project_repo/trunkA project_repo/trunk/array.cA project_repo/branchesA project_repo/tagsChecked out revision 2.
但是,他发现有人已经添加了代码.所以他很好奇是谁做了那个并且他使用以下命令检查日志消息以查看更多细节:
[tom @ CentOS trunk] $ svn log
以上命令将产生以下结果.
------------------------------------------------------------------------r2 | jerry | 2013-08-17 20:40:43 +0530 (Sat, 17 Aug 2013) | 1 lineInitial commit------------------------------------------------------------------------r1 | jerry | 2013-08-04 23:43:08 +0530 (Sun, 04 Aug 2013) | 1 lineCreate trunk, branches, tags directory structure------------------------------------------------------------------------
当 Tom 观察 Jerry的代码时,他立即注意到了一个错误.杰里没有检查阵列溢出,这可能会导致严重的问题.所以汤姆决定解决这个问题.修改后, array.c 将如下所示.
#include <stdio.h>#define MAX 16int main(void){ int i, n, arr[MAX]; printf("Enter the total number of elements: "); scanf("%d", &n); /* handle array overflow condition */ if (n > MAX) { fprintf(stderr, "Number of elements must be less than %d\n", MAX); return 1; } printf("Enter the elements\n"); for (i = 0; i < n; ++i) scanf("%d", &arr[i]); printf("Array has following elements\n"); for (i = 0; i < n; ++i) printf("|%d| ", arr[i]); printf("\n"); return 0;}
Tom 想要使用状态操作查看挂起的更改列表.
[tom@CentOS trunk]$ svn statusM array.c
array.c 文件被修改,这就是Subversion在文件名之前显示 M 字母的原因.接下来 Tom 编译并测试他的代码,它运行正常.在进行更改之前,他想通过查看他所做的更改来仔细检查它.
[tom@CentOS trunk]$ svn diffIndex: array.c===================================================================--- array.c (revision 2)+++ array.c (working copy)@@ -9,6 +9,11 @@ printf("Enter the total number of elements: "); scanf("%d", &n); + if (n > MAX) {+ fprintf(stderr, "Number of elements must be less than %d\n", MAX);+ return 1;+ }+ printf("Enter the elements\n"); for (i = 0; i < n; ++i)
Tom 在 array.c 文件中添加了几行,这就是Subversion在新行之前显示 + 符号的原因.现在他已准备好进行更改.
[tom@CentOS trunk]$ svn commit -m "Fix array overflow problem"
上述命令将产生以下结果.
Sending trunk/array.cTransmitting file data .Committed revision 3.
Tom的更改已成功提交到存储库.
免责声明:以上内容(如有图片或视频亦包括在内)有转载其他网站资源,如有侵权请联系删除
-
设计总结|如何更好地表达活动品牌?
-
谈谈“目标思维”的落地
编辑导读:我们在做数据分析之前,一定要搞清楚需求方的目标到底是什么,要根据目标来重新定义业务方提出的问题,这就是目标思维。目标思维有多重要呢?应该如何落地呢...
-
在线教育平台竞品分析:网易云课堂vs腾讯课堂
本文从移动端出发,对当前比较热门的两款在线教育平台软件-网易云课堂和腾讯课堂进行比较和分析,不足之处还请大家多提意见。 市场分析 随着国内互联网技术的发展和移...
-
即学即用|父亲节活动的4种运营策略
-
B端产品经理和体验设计师的工作职责边界梳理
-
豆果美食电商分支用户体验报告及建议
-
数据分析师如何提高工作效率
在我们的日常工作中,提高工作效率是每个岗位都需要实现的,在工作中,面对比较凌乱的事情时,首先我们需要梳理清楚,按重要级进行开展;本文作者分享了关于...
-
2016中国云计算SaaS移动办公平台年度综合报告
-
网易大布局教育事业:网易公开课、网易云课堂和MOOC分析
-
一篇文章搞懂语音交互的来龙去脉