SVN changelist and commit
2015-08-25 15:35
197 查看
svn changelist(也可以简写为cl)是一个对本地副本库的文件进行分组的命令,它可以作为其它命令的参数,但是它仅仅是本地副本库的一个分组,不能在库中传播以及与其它用户分享。
还是以之前的计算器程序为例,首先我们简单修改下工作副本中的几个文件(在add.c add.h sub.c sub.h几个文件最后都加入一个空行)
root@letuknowit:/home/kris/calc/trunk# svn st
M sub.h
M add.c
M sub.c
M add.h
好了,做好改动后就要进行提交了,但是又不想把这四个文件一起提交,想把add的分为一组,sub的分为一组,这时候svn changelist就派上用场了。
root@letuknowit:/home/kris/calc/trunk# svn cl add add.*
Path 'add.c' is now a member of changelist 'add'.
Path 'add.h' is now a member of changelist 'add'.
root@letuknowit:/home/kris/calc/trunk# svn cl sub sub.c sub.h
Path 'sub.c' is now a member of changelist 'sub'.
Path 'sub.h' is now a member of changelist 'sub'.
上面的add和sub都是组名,其后是需要加入到改组中的文件,多个文件以空格隔开,支持通配符(例如那个add.*)。完成以上工作后,再通过svn st看看有什么变化
root@letuknowit:/home/kris/calc/trunk# svn st
--- Changelist 'add':
M add.c
M add.h
--- Changelist 'sub':
M sub.h
M sub.c
删除组中的文件也比较简单,具体如下
root@letuknowit:/home/kris/calc/trunk# svn cl --remove sub.c
Path 'sub.c' is no longer a member of a changelist.
root@letuknowit:/home/kris/calc/trunk# svn st
M sub.c
--- Changelist 'add':
M add.c
M add.h
--- Changelist 'sub':
M sub.h
由于每个文件只能属于一个组,因此在将某个文件从某个组中删除的时候,无需指定组名。
changelist作为参数
root@letuknowit:/home/kris/calc/trunk# svn diff --cl sub
Index: sub.h
===================================================================
--- sub.h (revision 6)
+++ sub.h (working copy)
@@ -1 +1,2 @@
int sub(int lhs,int rhs);
+
Index: sub.c
===================================================================
--- sub.c (revision 6)
+++ sub.c (working copy)
@@ -2,3 +2,4 @@
{
return lhs - rhs;
}
+
其他支持svn changelist的指令包括:changelist、commit、info、propdel、propget、proplist、propset、revert、status、update
将已在一个组中的文件加入另一个组
root@letuknowit:/home/kris/calc/trunk# svn cl add sub.c
svn: warning: Removing 'sub.c' from changelist 'sub'.
Path 'sub.c' is now a member of changelist 'add'.
root@letuknowit:/home/kris/calc/trunk# svn st
--- Changelist 'add':
M add.c
M sub.c
M add.h
--- Changelist 'sub':
M sub.h
由于每个文件在同一个工作拷贝中只能加入一个分类,在讲某个文件加入新的分组之前,会将其从原先的分组中删除。
对于未在svn版本控制下的文件,无法加入分组
root@letuknowit:/home/kris/calc/trunk# touch newfile
root@letuknowit:/home/kris/calc/trunk# svn st
? newfile
--- Changelist 'add':
M add.c
M sub.c
M add.h
--- Changelist 'sub':
M sub.h
root@letuknowit:/home/kris/calc/trunk# svn cl add newfile
svn: warning: 'newfile' is not under version control
svn changelist不允许将文件夹加入某个分组,但是可以将多个不同的文件夹中的文件归为一组。
原创文章请注明转载于知蚁博客,本文地址:http://www.letuknowit.com/archives/usage-of-svn-changelist
svn commit
--changelist clName -m "ci"
还是以之前的计算器程序为例,首先我们简单修改下工作副本中的几个文件(在add.c add.h sub.c sub.h几个文件最后都加入一个空行)
root@letuknowit:/home/kris/calc/trunk# svn st
M sub.h
M add.c
M sub.c
M add.h
好了,做好改动后就要进行提交了,但是又不想把这四个文件一起提交,想把add的分为一组,sub的分为一组,这时候svn changelist就派上用场了。
root@letuknowit:/home/kris/calc/trunk# svn cl add add.*
Path 'add.c' is now a member of changelist 'add'.
Path 'add.h' is now a member of changelist 'add'.
root@letuknowit:/home/kris/calc/trunk# svn cl sub sub.c sub.h
Path 'sub.c' is now a member of changelist 'sub'.
Path 'sub.h' is now a member of changelist 'sub'.
上面的add和sub都是组名,其后是需要加入到改组中的文件,多个文件以空格隔开,支持通配符(例如那个add.*)。完成以上工作后,再通过svn st看看有什么变化
root@letuknowit:/home/kris/calc/trunk# svn st
--- Changelist 'add':
M add.c
M add.h
--- Changelist 'sub':
M sub.h
M sub.c
删除组中的文件也比较简单,具体如下
root@letuknowit:/home/kris/calc/trunk# svn cl --remove sub.c
Path 'sub.c' is no longer a member of a changelist.
root@letuknowit:/home/kris/calc/trunk# svn st
M sub.c
--- Changelist 'add':
M add.c
M add.h
--- Changelist 'sub':
M sub.h
由于每个文件只能属于一个组,因此在将某个文件从某个组中删除的时候,无需指定组名。
changelist作为参数
root@letuknowit:/home/kris/calc/trunk# svn diff --cl sub
Index: sub.h
===================================================================
--- sub.h (revision 6)
+++ sub.h (working copy)
@@ -1 +1,2 @@
int sub(int lhs,int rhs);
+
Index: sub.c
===================================================================
--- sub.c (revision 6)
+++ sub.c (working copy)
@@ -2,3 +2,4 @@
{
return lhs - rhs;
}
+
其他支持svn changelist的指令包括:changelist、commit、info、propdel、propget、proplist、propset、revert、status、update
将已在一个组中的文件加入另一个组
root@letuknowit:/home/kris/calc/trunk# svn cl add sub.c
svn: warning: Removing 'sub.c' from changelist 'sub'.
Path 'sub.c' is now a member of changelist 'add'.
root@letuknowit:/home/kris/calc/trunk# svn st
--- Changelist 'add':
M add.c
M sub.c
M add.h
--- Changelist 'sub':
M sub.h
由于每个文件在同一个工作拷贝中只能加入一个分类,在讲某个文件加入新的分组之前,会将其从原先的分组中删除。
对于未在svn版本控制下的文件,无法加入分组
root@letuknowit:/home/kris/calc/trunk# touch newfile
root@letuknowit:/home/kris/calc/trunk# svn st
? newfile
--- Changelist 'add':
M add.c
M sub.c
M add.h
--- Changelist 'sub':
M sub.h
root@letuknowit:/home/kris/calc/trunk# svn cl add newfile
svn: warning: 'newfile' is not under version control
svn changelist不允许将文件夹加入某个分组,但是可以将多个不同的文件夹中的文件归为一组。
原创文章请注明转载于知蚁博客,本文地址:http://www.letuknowit.com/archives/usage-of-svn-changelist
svn commit
--changelist clName -m "ci"
相关文章推荐
- 关于mysql has gone away的解决办法
- 分享一款强大的图片查看器插件,手机PC 通吃,功能超级齐全!
- sql基础
- 服务器
- Jmeter学习笔记(一)
- 全排列
- 设计模式: 自己手动写一个装饰者模式
- 教你做一款高口碑的产品
- cloudant,nothing found on db path
- CLRS 4.5用主方法求解递归式
- openssl生成RSA格式,并转为pkcs8格式
- deep learning:Theano安装攻略
- Spring的数据源配置
- mysql空间扩展 VS PostGIS
- Opencv用鼠标绘制线段
- Java实现数据结构中的栈
- visual studio has encountered an exception .this may be caused by an extension
- Android自定义日期滚动控件
- FilterImageView
- POJ 3485 Highway (贪心, 区间选点)