在svn的服务器上是看不到上传的东西的,提交一次svn会自动生成一个版本文件,这个文件是经过处理的,同样也看不到原文件。 *** 作方法如下:
1、首先在本地仓库创建一个项目。
2、第一次提交代码都需要进行添加,右键项目,选择TortoiseSVN 。
3、然后选择add选项。
4、通过选择项目内文件,哪些需要提交和不需要提交。
5、最后确认上传的项目相关文件和路径,如下图,点击ok,即添加完成。
我猜测你是不是这么 *** 作的:1、新建B、C目录(此时未提交)
2、通过 *** 作系统的文件剪切、粘贴方式将A目录下的部分子目录移动到B、C目录中
3、在B、C目录上点右键,但没有出现Tortoisesvn的提交菜单
如果是这样,就事论事解决的话,你需要先搜索B、C目录下的所有子目录,每个子目录中应该都有一个隐藏文件夹svn,将这个文件夹统统删除,然后在B、C目录上右键,选择Tortoisesvn----增加菜单,刷新后看这两个目录应该有一个蓝色加号标记,这时在B、C目录上点右键,就会出现提交的选项了。
当然,上面的 *** 作基于这样一个前提:A目录不是SVN版本库的根目录,只能是版本库根目录下的某层子目录,否则上述方法就肯定失效了。
如果A真的是版本库的根目录,建议你在A下面新建3个文件夹:AA、BB、CC,然后将原来A下面的所有子文件夹移动到AA、BB、CC下面,然后参考上述步骤。
上面只是就事论事的做法,当然不是最好的做法,最好的做法是不用 *** 作系统的剪切、粘贴
1、客户端建立B、C文件夹,右键菜单TortoiseSVN----增加,然后右键菜单提交
2、右键菜单TortoiseSVN----版本库浏览器,在版本库浏览器中拖动A目录中的子文件夹到B、C中(这时会自动提交)
3、在客户端执行更新你说的是用tortoiseSVN客户端提交到svn服务器的意思吧? 如果你之前没checkout 你想把文件提交 那就用import导入到你想传输svn服务器的路径,如果说你已经checkout过svn服务器上的文件了 你做了修改或者增加了一些文件 那就直接add+commit就可以了(先add)把下面代码添加了svn/hooks/post-commit里(替换部分路径)。当有svn提交,系统发现提交的代码涉及相关目录,就会通过rsync把代码同步到web服务器。不过这里还需要做一个rsync免输密码的设置。
#!/bin/sh
lines="$(cd /projects && svn up | wc -l)"
if [ $lines -gt 1 ]
then
cd /projects && rsync -rv root@myservercom:/var/>获取服务器仓库地址就可以了。
TortoiseSVN | 最佳实践:开始
>你可以用svn2web通过FTP将每个已提交的文件上传到服务器。Svn2web是一组php脚本,你可以使用它作为SVN的hook。你可以将ftp服务器的地址、用户名和密码设置为目录上的SVN属性。效果很好!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)