(转载)SVN使用说明
为了方便个人使用,转载过来的,如需查阅,请前往原文地址:http://blog.csdn.net/ideal_utopia/article/details/51883796
为什么要使用SVN?
Subversion是什么?
一:SVN服务器搭建和使用:
个人认为最好用VisualSVN server 服务端和 TortoiseSVN客户端搭配使用. 点开上面的VisualSVN连接,下载VisualSVN
server,下载完成后双击安装,如下图:
如下:
Location是指VisualSVN Server的安装目录,
Repositorys是指定你的版本库目录.
Server Port指定一个端口,
Use secure connection勾山表示使用安全连接,
点击Next,进入下一步,如下图:
再点击【Install】,进入如下安装图:
Server Manager,如图:
可以在窗口的右边看到版本库的一些信息,比如状态,日志,用户认证,版本库等.
要建立版本库,需要右键单击左边窗口的Repositores,如下图:
在弹出的右键菜单中选择Create New Repository或者新建->Repository:
empty: 创建的仓库里是空
single project repository: 创建的仓库有三个文件夹: trunk, branch, tags
进入下一步,如下图:
可以设置权限,在后期创建的SVN用户中也可以更改
点击【下一步】,如下图:
创建完成,这个url是当前创建仓库的地址
点击【create】,如下图:
点击【Finish】即可完成基本创建。
2. 需要建立用户和组,并且需要分配权限。
1. 在VisualSVN Server Manager窗口的左侧右键单击用户组,选择Create User或者新建->User,如图:
”svn小乌龟”后,进行安装。如:
2:checkout项目文件。
新建或者进入目录下(比如qianduan1),右键 --> Svn Checkout -->
copy下:
即可。
将复制的版本库URL粘贴上,如下图:
注意事项:
.svn这个隐藏目录记录着两项关键信息:工作文件的基准版本和一个本地副本最后更新的时间戳,千万不要手动修改或者删除这个.svn隐藏目录和里面的文件!!,否则将会导致你本地的工作拷贝(静态试图)被破坏,无法再进行操作。
1) TortoiseSVN图标介绍
一个新检出的工作复本使用绿色的对勾重载,表示Subversion状态正常。
在你开始编辑一个文件之后,状态就变成了已修改,而图标重载已变成了红色感叹号。通过这种方式,你可以很容易地看出那些文件从你上次更新工作复本被修改过,且需要提交。
如果在提交的过程中出现了冲突,图标就会变成了黄色感叹号。
加号告诉你有一个文件或者目录已经被计划加入到版本控制中。
文件里的内容,SVN认为不是版本库中的文件(无法识别)
在SVN中被忽略的文件/夹
2) TortoiseSVN Client基础操作:
1. SVN检出(SVN Checkout)
在文件夹或者目录下单击右键 –> 选择SVN检出,如下图所示
点击后,在弹开窗口的版本库url框中输入版本库的目录地址,然后点击确定,如下图
再点击ok按钮后,如下图:
在弹出的对话框中输入用户名和密码(可以选择性勾选“Save authentication”保存认证),验证成功后,项目文件开始从远程服务器下载到本地工作目录中。
点击ok按钮后,即可获取完成,如下图所示:
2. 增加(Add)
在test项目文件下,新建一个b.txt文件,提交到版本库的方法如下2种:
1. 先提到变更列表中,再commit到配置库中,选择新增文件,右键SVN菜单执行“Add“操作提交到”变更列表中”,然后右键SVN菜单执行”SVN Commit”提交到版本库中。
2. 不提交到变更列表中,而是直接commit配置库中,选择该文件,右键svn菜单执行”SVN Commit”操作。
3. 删除(Delete)
如果被删除的文件还未入版本库,则可以直接使用操作系统的删除操作删除该文件。
如果被删除的文件已入版本库,则删除的方法如下:
- 选择被删除文件,右键svn菜单执行”delete”操作,然后选择被删除文件的父目录,右键svn菜单执行”SVN Commit”.
使用操作系统的删除操作删除该文件,然后选择被删除文件的父目录,右键svn菜单执行”SVN Commit”,在变更列表中选择被删除的文件。如下图:
4. 改名(Rename)
修改文件名,选中需要重命名的文件或文件夹,然后右键“TortoiseSVNàRename“,在弹出的对话框中输入新名称,点击”ok”按钮,并将修改文件名后的文件或文件夹通过 “SVN Commit”提交到SVN服务器上。
5. SVN还原(SVN Revert)
右击想要回退的文件或者文件夹,在TortoiseSVN弹出菜单中选择”Update to reversion…” 然后会弹出一个窗口,如下:
比如说我们要回退到第10个版本只需要在Revision中填写相应的版本号,然后点击ok即可。
6. 检查更新(Check for modifications)
此功能可以显示你所做的修改有哪些还没有提交的,此功能不光能看到对文件的修改变化,所有的变化都能看到,包括增加文件或者目录,删除文件或者目录,移动文件或者目录等,如果你点击了检查版本库,那你还可以看到版本库里的改动,既别人提交了哪些文件的改动,你还没更新到本地,如下:
7. SVN更新(SVN Update)
更新本地代码与SVN服务器上最新的版本一致,只要在需要更新的文件夹上点击右键或者在文件下空白处点击右键,选择”SVN Update” (获取指定版本中的内容,点击右键执行SVN菜单中的“Update to reversion“),就可以了。
7.1 如何解决冲突文件
对于每个冲突的文件Subversion在你的目录下放置了三个文件:如下:
为什么会产生冲突代码呢?原因很简单就是因为不同的人,同时修改了同一个文件的同一个地方,这时候,他提交了,我没有提交,我就提交不了,这个时候我们要进行先更新,然后在进行提交即可,那如果产生冲突,会生成如上3个文件。
解决方案如下:
首先我们可以看下1.txt代码如下:
<<<<<<< .mine
aaaasdf11222333 dderderder
=======
b>>>>>>> .r5
然后我去掉多余的代码,1.txt变成这样
aaaasdf11222333 dderderder
进行提交,还是提交不了,如下所示:
为什么?因为冲突会产生上面的三个文件,有上面3个文件存在肯定提交不了,这三个文件代码及解释如下:
- 1.txt.mine 是冲突前自己的文件。可以看下内容如下:
aaaasdf11222333 dderderder
2. 1.txt.r4 是冲突前本地的版本文件
内容如下:aaaasdf11222333
3. 1.txt.r5 是别人赶在你之前提交的版本
内容如下: b
其中,<<<<<<<<.mine .....=======之间的代码是你自己的,而======......>>>>>>>.r5是别人与你冲突的代码部分
这样就不难理解为什么会产生冲突这种奇怪的东西了,因为你们修改的同一块代码,当然会产生冲突。
解决方案如下:
- 假如我现在的1.txt中的冲突内容如下:
<<<<<<< .mine
6666666666666600000
=======
66666666666aaaaaaaaaa666
>>>>>>> .r16
前面说过 <<<<<<< .mine …… =======
……之间的代码是我未产生冲突之前修改的代码,
======= ………>>>>>>> .r16 这中间……的代码是别人与我冲突代码的部分,从上面的代码可以看到 aaaaaaaaa是我同事新增的 ,00000是我后增加的。
- 使用revert(回滚)操作,该操作表示用户放弃自己的更新代码,然后直接提交,这个时候你的代码就会使服务器上最新的代码,即A用户提交的新代码,你的代码不会被提交,如下所示:
点击ok按钮后 可以看到其他三个文件都自动删掉了,1.txt代码变成如下代码:
66666666666aaaaaaaaaa666
也就是a用户提交的代码,我自己更新的代码需要自己动手复制进去即可提交commit。
- 假如我现在3.txt产生冲突代码如下:
<<<<<<< .mine
333333338888888888888=======
3333cccccccccc3333>>>>>>> .r16
通过第一点我们知道,333333338888888888888这个内容是我修改后,未产生冲突之前的内容,3333cccccccccc3333这个代码是A用户提交的代码,从上面得知 A用户新增内容是ccccccc,而我新增的内容是8888888。
那么第二种解决方法如下:
选择文件->右键Editconficts:这种方法需要冲突双方经过协商之后将代码更改统一之后再提交。不仅解决了冲突而且还保证了代码是正确的,因为只有一方的代码被提交.
如上图所示,红色的部分是冲突代码:theirs表示当前服务器端最新的代码,Mine表示自己修改后的代码,Merged表示合并后的代码。点击红色后右键选择:use this text block就可以将该部分代码作为合并后的代码
接下来再说说由于冲突导致重要代码被覆盖的情况。冲突发生时如果采取的措施不对可能会导致部分代码丢失,如果想要还原之前的代码也很容易。
选择文件->右键选择show log在这里面你可以看见之前提交的所有版本,找到你想要恢复的版本右键选择revert to this version 就可以恢复了.
SVN提交(SVN Commit)
Svn的提交是将在工作空间做的修改进行提交,包括文件内容的修改,文件或目录的添加,删除,命名,移动等操作。如下图所示:
8. 显示日志(Show log)
通过此功能可以查到谁,什么时候,对那个目录下的那些文件进行了那些操作,如下图:
9. 版本库浏览(Repo-browser)
此功能是用来浏览需要查看的资料库,在本地文件夹下点击右键,选择TortoiseSVNàRepo-browser,在弹出的对话框中输入资料库地址,再输入用户名和密码,就能查看到你需要查看到版本库的内容,在这你还能看到那些文件被谁锁定了,如下图:
三: 创建分支合并相互操作
项目中为何要创建分支,及合并?
比如我现在项目所有的文件放在主干上(trunk)中,由于需求的变更,需要增加新的需求,但是我们主干上还要继续往下开发,在此我们可以新建一个分支,来做增加新的需求那一块,主干上继续开发,等分支上代码没有问题的时候,再合并到主干上来。
创建分支的最大的目的就是跟主线进行并行开发时候不影响主线的开发。
如何操作?
假如我本地新建一个文件夹test下有2个文件夹trunk(存放主干上的代码)和branch(存放分支上的代码),如下所示:
一:先提取主干上的代码。
点击trunk --> 鼠标右键 --> 点击SVN Checkout --> 弹出一个对话框,如下图所示:
其中上面的URL是从服务器VisualSVN Server上获取的,如下所示:
直接右键qianduan3 --> Copy URL to Clipboard 即可。
其中qianduan3项目有如下文件,如下图所示:
最后点击上面的checkout按钮后,就可以在主干上把代码从远程服务器上获取到,如下所示:
二:新建分支
从trunk(主干上)创建分支(branch)步骤如下:
1. 右键trunk --> branch/Tag 如下图:
在弹出的对话框如下图:
点击ok按钮后,就可以在VisualSVN Serval服务器上新增newBranch,是从如上服务器qianduan3上的文件拷贝一份的,如下所示:
现在我们可以再来看看本地branch文件夹了,我现在直接进入branch文件下,右键 --> Chenckout下,就可以把newBranch下的所有文件提取出来了,如下所示:
点击ok按钮就可以把文件提取出来了,如下图所示:
分支目前建立在svn的服务器端,本地并没有更新,对本地branch文件夹 右键--> update即可,就可以更新到分支代码,如下所示:
四:合并分支到主干上
比如我现在对branch分支上新增3.txt文件,然后提交上去,如下所示:
我现在想把分支上的代码3.txt合并到主干上trunk,现在要怎么合并呢?步骤如下:
1. 回到我们刚刚的主干(trunk)文件夹下,鼠标右键该文件夹 --> TortoiseSVN --> Merge 如下图所示:
在弹出的窗口,如下图所示:
接着点击【Next】下一步,如下图所示:
再接着【Next】下一步,如下图所示:
就可以看到主干trunk上多加了一个3.txt,就是从分支上合并过来的。
五:合并主干到分支。
如果主干上有一些更新,比如说jar包更新等等,那么这些要更新到分支上去,如何操作呢?比如我现在在主干上新建一个4.txt文件,比如如下:
我现在的分支上目录如下:
现在是想把主干上的4.txt合并到分支上来,要如何操作?
步骤如下,还是和刚刚操作类似.
1. 我们在分支点击branch --> 右键TortoiseSVN --> Merge 如下图所示:
在弹出新窗口后,如下图所示:
接着点击【Next】下一步,如下图所示:
继续下一步,如下图:
最后直接merge,就可以看到分支branch上也有主干上的4.txt文件了,也就是说,合并主干到分支上也是可以的,如下图所示:
为什么要使用SVN?
Subversion是什么?
一:SVN服务器搭建和使用:
个人认为最好用VisualSVN server 服务端和 TortoiseSVN客户端搭配使用. 点开上面的VisualSVN连接,下载VisualSVN
server,下载完成后双击安装,如下图:
如下:
Location是指VisualSVN Server的安装目录,
Repositorys是指定你的版本库目录.
Server Port指定一个端口,
Use secure connection勾山表示使用安全连接,
点击Next,进入下一步,如下图:
再点击【Install】,进入如下安装图:
Server Manager,如图:
可以在窗口的右边看到版本库的一些信息,比如状态,日志,用户认证,版本库等.
要建立版本库,需要右键单击左边窗口的Repositores,如下图:
在弹出的右键菜单中选择Create New Repository或者新建->Repository:
empty: 创建的仓库里是空
single project repository: 创建的仓库有三个文件夹: trunk, branch, tags
进入下一步,如下图:
可以设置权限,在后期创建的SVN用户中也可以更改
点击【下一步】,如下图:
创建完成,这个url是当前创建仓库的地址
点击【create】,如下图:
点击【Finish】即可完成基本创建。
2. 需要建立用户和组,并且需要分配权限。
1. 在VisualSVN Server Manager窗口的左侧右键单击用户组,选择Create User或者新建->User,如图:
”svn小乌龟”后,进行安装。如:
2:checkout项目文件。
新建或者进入目录下(比如qianduan1),右键 --> Svn Checkout -->
copy下:
即可。
将复制的版本库URL粘贴上,如下图:
注意事项:
.svn这个隐藏目录记录着两项关键信息:工作文件的基准版本和一个本地副本最后更新的时间戳,千万不要手动修改或者删除这个.svn隐藏目录和里面的文件!!,否则将会导致你本地的工作拷贝(静态试图)被破坏,无法再进行操作。
1) TortoiseSVN图标介绍
一个新检出的工作复本使用绿色的对勾重载,表示Subversion状态正常。
在你开始编辑一个文件之后,状态就变成了已修改,而图标重载已变成了红色感叹号。通过这种方式,你可以很容易地看出那些文件从你上次更新工作复本被修改过,且需要提交。
如果在提交的过程中出现了冲突,图标就会变成了黄色感叹号。
加号告诉你有一个文件或者目录已经被计划加入到版本控制中。
文件里的内容,SVN认为不是版本库中的文件(无法识别)
在SVN中被忽略的文件/夹
2) TortoiseSVN Client基础操作:
1. SVN检出(SVN Checkout)
在文件夹或者目录下单击右键 –> 选择SVN检出,如下图所示
点击后,在弹开窗口的版本库url框中输入版本库的目录地址,然后点击确定,如下图
再点击ok按钮后,如下图:
在弹出的对话框中输入用户名和密码(可以选择性勾选“Save authentication”保存认证),验证成功后,项目文件开始从远程服务器下载到本地工作目录中。
点击ok按钮后,即可获取完成,如下图所示:
2. 增加(Add)
在test项目文件下,新建一个b.txt文件,提交到版本库的方法如下2种:
1. 先提到变更列表中,再commit到配置库中,选择新增文件,右键SVN菜单执行“Add“操作提交到”变更列表中”,然后右键SVN菜单执行”SVN Commit”提交到版本库中。
2. 不提交到变更列表中,而是直接commit配置库中,选择该文件,右键svn菜单执行”SVN Commit”操作。
3. 删除(Delete)
如果被删除的文件还未入版本库,则可以直接使用操作系统的删除操作删除该文件。
如果被删除的文件已入版本库,则删除的方法如下:
- 选择被删除文件,右键svn菜单执行”delete”操作,然后选择被删除文件的父目录,右键svn菜单执行”SVN Commit”.
使用操作系统的删除操作删除该文件,然后选择被删除文件的父目录,右键svn菜单执行”SVN Commit”,在变更列表中选择被删除的文件。如下图:
4. 改名(Rename)
修改文件名,选中需要重命名的文件或文件夹,然后右键“TortoiseSVNàRename“,在弹出的对话框中输入新名称,点击”ok”按钮,并将修改文件名后的文件或文件夹通过 “SVN Commit”提交到SVN服务器上。
5. SVN还原(SVN Revert)
右击想要回退的文件或者文件夹,在TortoiseSVN弹出菜单中选择”Update to reversion…” 然后会弹出一个窗口,如下:
比如说我们要回退到第10个版本只需要在Revision中填写相应的版本号,然后点击ok即可。
6. 检查更新(Check for modifications)
此功能可以显示你所做的修改有哪些还没有提交的,此功能不光能看到对文件的修改变化,所有的变化都能看到,包括增加文件或者目录,删除文件或者目录,移动文件或者目录等,如果你点击了检查版本库,那你还可以看到版本库里的改动,既别人提交了哪些文件的改动,你还没更新到本地,如下:
7. SVN更新(SVN Update)
更新本地代码与SVN服务器上最新的版本一致,只要在需要更新的文件夹上点击右键或者在文件下空白处点击右键,选择”SVN Update” (获取指定版本中的内容,点击右键执行SVN菜单中的“Update to reversion“),就可以了。
7.1 如何解决冲突文件
对于每个冲突的文件Subversion在你的目录下放置了三个文件:如下:
为什么会产生冲突代码呢?原因很简单就是因为不同的人,同时修改了同一个文件的同一个地方,这时候,他提交了,我没有提交,我就提交不了,这个时候我们要进行先更新,然后在进行提交即可,那如果产生冲突,会生成如上3个文件。
解决方案如下:
首先我们可以看下1.txt代码如下:
<<<<<<< .mine
aaaasdf11222333 dderderder
=======
b>>>>>>> .r5
然后我去掉多余的代码,1.txt变成这样
aaaasdf11222333 dderderder
进行提交,还是提交不了,如下所示:
为什么?因为冲突会产生上面的三个文件,有上面3个文件存在肯定提交不了,这三个文件代码及解释如下:
- 1.txt.mine 是冲突前自己的文件。可以看下内容如下:
aaaasdf11222333 dderderder
2. 1.txt.r4 是冲突前本地的版本文件
内容如下:aaaasdf11222333
3. 1.txt.r5 是别人赶在你之前提交的版本
内容如下: b
其中,<<<<<<<<.mine .....=======之间的代码是你自己的,而======......>>>>>>>.r5是别人与你冲突的代码部分
这样就不难理解为什么会产生冲突这种奇怪的东西了,因为你们修改的同一块代码,当然会产生冲突。
解决方案如下:
- 假如我现在的1.txt中的冲突内容如下:
<<<<<<< .mine
6666666666666600000
=======
66666666666aaaaaaaaaa666
>>>>>>> .r16
前面说过 <<<<<<< .mine …… =======
……之间的代码是我未产生冲突之前修改的代码,
======= ………>>>>>>> .r16 这中间……的代码是别人与我冲突代码的部分,从上面的代码可以看到 aaaaaaaaa是我同事新增的 ,00000是我后增加的。
- 使用revert(回滚)操作,该操作表示用户放弃自己的更新代码,然后直接提交,这个时候你的代码就会使服务器上最新的代码,即A用户提交的新代码,你的代码不会被提交,如下所示:
点击ok按钮后 可以看到其他三个文件都自动删掉了,1.txt代码变成如下代码:
66666666666aaaaaaaaaa666
也就是a用户提交的代码,我自己更新的代码需要自己动手复制进去即可提交commit。
- 假如我现在3.txt产生冲突代码如下:
<<<<<<< .mine
333333338888888888888=======
3333cccccccccc3333>>>>>>> .r16
通过第一点我们知道,333333338888888888888这个内容是我修改后,未产生冲突之前的内容,3333cccccccccc3333这个代码是A用户提交的代码,从上面得知 A用户新增内容是ccccccc,而我新增的内容是8888888。
那么第二种解决方法如下:
选择文件->右键Editconficts:这种方法需要冲突双方经过协商之后将代码更改统一之后再提交。不仅解决了冲突而且还保证了代码是正确的,因为只有一方的代码被提交.
如上图所示,红色的部分是冲突代码:theirs表示当前服务器端最新的代码,Mine表示自己修改后的代码,Merged表示合并后的代码。点击红色后右键选择:use this text block就可以将该部分代码作为合并后的代码
接下来再说说由于冲突导致重要代码被覆盖的情况。冲突发生时如果采取的措施不对可能会导致部分代码丢失,如果想要还原之前的代码也很容易。
选择文件->右键选择show log在这里面你可以看见之前提交的所有版本,找到你想要恢复的版本右键选择revert to this version 就可以恢复了.
SVN提交(SVN Commit)
Svn的提交是将在工作空间做的修改进行提交,包括文件内容的修改,文件或目录的添加,删除,命名,移动等操作。如下图所示:
8. 显示日志(Show log)
通过此功能可以查到谁,什么时候,对那个目录下的那些文件进行了那些操作,如下图:
9. 版本库浏览(Repo-browser)
此功能是用来浏览需要查看的资料库,在本地文件夹下点击右键,选择TortoiseSVNàRepo-browser,在弹出的对话框中输入资料库地址,再输入用户名和密码,就能查看到你需要查看到版本库的内容,在这你还能看到那些文件被谁锁定了,如下图:
三: 创建分支合并相互操作
项目中为何要创建分支,及合并?
比如我现在项目所有的文件放在主干上(trunk)中,由于需求的变更,需要增加新的需求,但是我们主干上还要继续往下开发,在此我们可以新建一个分支,来做增加新的需求那一块,主干上继续开发,等分支上代码没有问题的时候,再合并到主干上来。
创建分支的最大的目的就是跟主线进行并行开发时候不影响主线的开发。
如何操作?
假如我本地新建一个文件夹test下有2个文件夹trunk(存放主干上的代码)和branch(存放分支上的代码),如下所示:
一:先提取主干上的代码。
点击trunk --> 鼠标右键 --> 点击SVN Checkout --> 弹出一个对话框,如下图所示:
其中上面的URL是从服务器VisualSVN Server上获取的,如下所示:
直接右键qianduan3 --> Copy URL to Clipboard 即可。
其中qianduan3项目有如下文件,如下图所示:
最后点击上面的checkout按钮后,就可以在主干上把代码从远程服务器上获取到,如下所示:
二:新建分支
从trunk(主干上)创建分支(branch)步骤如下:
1. 右键trunk --> branch/Tag 如下图:
在弹出的对话框如下图:
点击ok按钮后,就可以在VisualSVN Serval服务器上新增newBranch,是从如上服务器qianduan3上的文件拷贝一份的,如下所示:
现在我们可以再来看看本地branch文件夹了,我现在直接进入branch文件下,右键 --> Chenckout下,就可以把newBranch下的所有文件提取出来了,如下所示:
点击ok按钮就可以把文件提取出来了,如下图所示:
分支目前建立在svn的服务器端,本地并没有更新,对本地branch文件夹 右键--> update即可,就可以更新到分支代码,如下所示:
四:合并分支到主干上
比如我现在对branch分支上新增3.txt文件,然后提交上去,如下所示:
我现在想把分支上的代码3.txt合并到主干上trunk,现在要怎么合并呢?步骤如下:
1. 回到我们刚刚的主干(trunk)文件夹下,鼠标右键该文件夹 --> TortoiseSVN --> Merge 如下图所示:
在弹出的窗口,如下图所示:
接着点击【Next】下一步,如下图所示:
再接着【Next】下一步,如下图所示:
就可以看到主干trunk上多加了一个3.txt,就是从分支上合并过来的。
五:合并主干到分支。
如果主干上有一些更新,比如说jar包更新等等,那么这些要更新到分支上去,如何操作呢?比如我现在在主干上新建一个4.txt文件,比如如下:
我现在的分支上目录如下:
现在是想把主干上的4.txt合并到分支上来,要如何操作?
步骤如下,还是和刚刚操作类似.
1. 我们在分支点击branch --> 右键TortoiseSVN --> Merge 如下图所示:
在弹出新窗口后,如下图所示:
接着点击【Next】下一步,如下图所示:
继续下一步,如下图:
最后直接merge,就可以看到分支branch上也有主干上的4.txt文件了,也就是说,合并主干到分支上也是可以的,如下图所示:
(转载)SVN使用说明的更多相关文章
- SVN使用说明
一,安装客户端SVN 1.下载 "svn小乌龟"后,进行安装.如下图: 安装完成后,右键项目文件夹就可以看到如下: 2:checkout项目文件. 新建或者进入目录下(比如qian ...
- [转载]SVN使用教程
SVN简介: 为什么要使用SVN? 程序员在编写程序的过程中,每个程序员都会生成很多不同的版本,这就需要程序员有效的管理代码,在需要的时候可以迅速,准确取出相应的版本. Subversion是什么? ...
- (转载)SVN 提交操作缩写(A D M R) .
前言: 今天使用SVN提交代码,发现提交后的代码找不到之前的版本. 操作的字母缩写为R.一般我们常见的操作为 A D M R A:add,新增 C:conflict,冲突 D:delete,删除 ...
- 转载-SVN常用命令
SVN(Subversion)是一个自由.开源的项目源代码版本控制工具.目前,绝大多数开源软件和企业代码管理,都使用SVN作为代码版本管理软件. Subversion将文件存放在中心版本库里,这个版本 ...
- [转载]SVN权限设置具体实例
原文地址:SVN权限设置具体实例作者:白菜豆腐 1 背景假设 厦门央瞬公司是一家电子元器件设备供应商,其中有个ARM部门,专门负责ARM芯片的方案设计.销售,并在北京.上海各设立了一个办事处.对于 ...
- [转载]SVN trunk、branch、tag的用法
Subversion有一个很标准的目录结构,是这样的. 比如项目是proj,svn地址为svn://proj/,那么标准的svn布局是 svn://proj/|+-trunk+-branches+-t ...
- [转载]SVN如何恢复已删除文件或文件夹
http://blog.sina.com.cn/s/blog_694d806e0100kaqz.html 用TortoiseSVN: 1.在本地working copy中,用TortoiseSVN-& ...
- 配置SVN、GIT总结
SVN使用说明 svn地址(可以是内网,也可以是外网的):svn://192.168.3.1/xxxhttp://192.168.3.1/xxxhttps://192.168.3.1/xxx 一个sv ...
- svn代码版本管理总结
svn代码版本管理 1.0开发,做dev1.0的branch此时的目录结构svn://proj/ +trunk/ (不负担开发任务) +branches ...
随机推荐
- CPA-计划
平时周一到周五上班晚上8点到12点,周末6-8个小时,然后没有节假日,一次差不多可以3.4科 审计 看150页 3小时,看完,做题 2天时间,5门课程,12小时考试,没想到能完整地挺过来.感觉税法战 ...
- Windows 常用配置 - 启用长路径
Windows 启用长路径支持 打开注册表编辑器:regedit 找到如下路径:HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\FileSyte ...
- ios 获取app版本号
let infoDictionary = Bundle.main.infoDictionary!let appversion = infoDictionary["CFBundleShortV ...
- Papa开启“点播孙子”模式,新型老年人服务能在国内扎根吗?
"互联网+"对多个行业的全面赋能和渗入,的确让我们的生活与工作处处充满了便利.很多"跑断腿"才能办的事,现在只要在PC.智能手机上滑动鼠标.点击屏幕就能轻松搞定 ...
- 2019-2020-1 20199324《Linux内核原理与分析》第五周作业
第四章 系统调用的三层机制(上) 知识点总结: 系统调用:系统调用是操作系统为用户态进程与硬件设备进行交互提供的一组接口. 系统调用的功能特性: 把用户从底层的硬件编程中解放出来: 极大地提高了系统的 ...
- icloud/onenote/onedrive/microoutlook/百度云账号都是怎么回事(未完成)
在用一些跨机器跨平台软件的时候,一旦换了电脑或者手机,我经常出现蒙的状态,不知道怎么同步或者使用了,在这里总结一下. 一.icloud账号 当我们买iphone或者macbook的时候,一开机它会让你 ...
- 疯狂收集个人信息的谷歌,为何不像Facebook那样让人毛骨悚然?
自从Facebook信息泄露丑闻事件发生后,互联网上的个人隐私及安全成为大众的"心病".而大众最讨厌的,是互联网企业收集自己的信息,因此都在积极讨伐这种行为.但他们却忘了,收集用户 ...
- cs231n spring 2017 lecture3 Loss Functions and Optimization
1. Loss function是用来量化评估当前预测的好坏,loss function越小表明预测越好. 几种典型的loss function: 1)Multiclass SVM loss:一般的S ...
- http 3种web会话管理方式
http是无状态的,一次请求结束,连接断开,下次服务器再收到请求,它就不知道这个请求是哪个用户发过来的.当然它知道是哪个客户端地址发过来的,但是对于我们的应用来说,我们是靠用户来管理,而不是靠客户端. ...
- linux下文件夹归置方式
/bin:二进制可执行命令./dev:设备特殊文件./etc:系统管理和配置文件./etc/rc.d:启动的配 置文件和脚本./home:用户主目录的基点,比如用户user的主目录就是/home/us ...