我总是发现checkin(commit)邮件非常有用,可以跟踪其他人在代码库/存储库中的工作.如何设置SVN以在每次提交时通过电子邮件发送通讯组列表?
我在Windows上运行客户端,在Linux上运行Apache Subversion服务器.以下针对各种平台的答案可能对其他人有用.
我在笔记本电脑(Ubuntu)上使用HTTP代理的网络(只允许http连接).
当我使用svn up for url如'http:// .....'一切都很酷(google chrome存储库工作完美),但是现在我需要从服务器svn up'svn:// .... '我看到连接被拒绝了.
我在/ etc/subversion/servers中设置了代理配置,但它没有帮助.
有人有意见/解决方案吗?
将我的存储库视为SVN存储库,我得到:
svn co http://myrepo/foo/trunk foo
...
foo/
bar/
baz/ -> http://myrepo/baz/trunk
Run Code Online (Sandbox Code Playgroud)
把它作为Git回购处理,我得到:
git svn clone http://myrepo/foo --trunk=trunk --branches=branches --tags=tags
...
foo/
bar/
Run Code Online (Sandbox Code Playgroud)
我可以将baz克隆到其他地方的本地机器并添加一个符号链接,但这只是一个黑客攻击.有没有办法git svn rebase在更新其他所有内容时自动提取这些更改,就像这样svn up做?
我有一个我已经从SVN克隆的存储库.我一直在用它的Git形式在这个存储库中做一些工作,我不想再通过克隆来丢失这个结构.但是,当我最初克隆存储库时,我无法正确指定svn.authors属性(或语义相似的选项).有没有什么办法可以指定SVN作者映射,因为存储库完全是Git-ified?最好,我想纠正所有旧提交作者代表Git作者而不是原始SVN用户名.
我正在寻找一种方法来进行日常部署并使数据库脚本与发布保持一致.
目前,我们有一个相当不错的部署源代码的方式,我们有单位代码覆盖,持续集成和回滚程序.
问题是使数据库脚本与发布保持一致.每个人似乎都尝试在测试数据库上运行脚本,然后在实时运行它们,当ORM映射更新(即更改生效)时,它会选择新列.
第一个问题是没有任何脚本可以写在任何地方,通常每个人都"尝试"将它们放入Subversion文件夹,但是一些懒惰的人只是在现场运行脚本,大多数时候没人知道谁做了什么到数据库.
第二个问题是我们有4个测试数据库,它们总是脱节,真正排列它们的唯一方法是从实时数据库进行恢复.
我非常相信,这样的流程需要简单,直接且易于使用,以帮助开发人员,而不是阻碍他们.
我正在寻找的技术/想法使开发人员想要记录他们的数据库脚本很容易,因此它们可以作为发布过程的一部分运行.开发人员希望遵循的流程.
任何故事,用例甚至链接都会有所帮助.
我有我认为的简单场景 - 使用TortoiseSVN:
1)我创建了一个应用程序的分支(B2)(用于实现图像精灵和JAWR).
2)测试和开发在主干上正常进行.
3)在过去的几天里,我通过以下几次重新设立了分支机构:
3.1)合并主干(按修订范围)到我的branch-b2工作副本,解决合并期间的冲突.
3.2)(在测试branch-b2之后),我提交了基于重新分支的-b2.
这一切都像我预期的那样奏效.但是将分支合并到主干中是有道理的:
4)在branch-b2中提交的所有更新之后; 我确保在trunk和branch-b2上进行SVN更新.
5)然后,我尝试将branch-b2中的(修订范围)合并到主干中.但是,对于任何已添加到主干的新文件,以及随后在我重新添加时添加到branch-b2的新文件,我会遇到树冲突.我不确定解决这些冲突的正确方法是什么.
我见过的最典型的建议是从trunk中删除树冲突文件,然后合并分支; 或者删除整个中继,将分支文件复制过来,然后在中继中将它们作为新版本提交.这些选项似乎都不是一个好主意 - 首先是痛苦,而且看起来他们都会丢失文件修订历史.
我做错了什么,我该如何解决?
有时我在项目的不同目录中包含许多文件.现在我在提交之前将所有文件逐个添加到我的项目中.是否有任何Linux终端命令可以将所有未版本控制的文件添加到Subversion?
如果我想添加除一个或两个文件之外的所有文件怎么办?
我们是否应该为所有公司提供一个单独的存储库,其中包含许多开发项目或每个项目的存储库?关于经验/最佳实践的任何想法?
使用DropBox作为Subversion存储库的备份系统是一个坏主意吗?
有没有人尝试过将Subversion与DropBox等在线文件共享实用程序一起使用?你有什么经历?
我担心这是否会起作用 - 主要是因为Subversion保持锁定并且它非常具体.我不确定DropBox和Subversion是否可以一起工作?
ps我正在考虑将这个用于我的Xcode项目,不,我不想使用github,因为它不是免费的 - 你不能保持你的存储库私有与免费帐户(和其他原因).
参考文献:
DropBox(文件同步,共享和在线备份)
Subversion(开源版本控制系统)
Subversion手册说明:
'!'
项目丢失(例如,您在不使用svn的情况下移动或删除了它).这也表示目录不完整(结帐或更新被中断).
但就像Subversion一样,没有迹象表明如何解决这个问题.
通常,我会使用我信任的Fix_Subversion.command,但这次它是trunk,它将需要永远.
那么有更快的选择吗?