可交付成果的版本控制 [英] Version control of deliverables

查看:172
本文介绍了可交付成果的版本控制的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我们需要在多个不同位置的许多开发人员之间定期同步许多数十种二进制文件(项目可执行文件和DLL),以便每个开发人员都有最新的环境来构建和测试。由于项目的性质,必须经常和按需进行更新(过夜更新是不够的)。这不是很漂亮,但我们一直坚持一段时间。

We need to regularly synchronize many dozens of binary files (project executables and DLLs) between many developers at several different locations, so that every developer has an up to date environment to build and test at. Due to nature of the project, updates must be done often and on-demand (overnight updates are not sufficient). This is not pretty, but we are stuck with it for a time.

我们结算了使用常规版本(源代码)控制系统:把所有东西放入二进制文件在测试之前先获取最新版本并检查更新的DLL。

We settled on using a regular version (source) control system: put everything into it as binary files, get-latest before testing and check-in updated DLL after testing.

它的工作正常,但版本控制客户端有很多功能没有意义对于我们和人们偶尔会感到困惑。

It works fine, but a version control client has a lot of features which don't make sense for us and people occasionally get confused.

有没有任何更适合任务的工具?或者可能是一个完全不同的方法?

Are there any tools better suited for the task? Or may be a completely different approach?

更新:我需要澄清一点,它不是一个紧密集成的项目 - 更像是可扩展系统堆插件,包括三方的。我们需要确保这些模块 - 插件可以很好地与最近的版本和核心一起工作。最初考虑了建议的集中式构建,但这不是一个选项。

Update: I need to clarify that it's not a tightly integrated project - more like extensible system with a heap of "plugins", including thrid-party ones. We need to make sure those modules-plugins works nicely with recent versions of each other and the core. Centralised build as was suggested was considered initially, but it's not an option.

推荐答案

我可能会看看rsync。

I'd probably take a look at rsync.

只需创建一个包含对所有正确参数的rsync调用的.CMD文件,并让人们调用。 rsync在决定哪些部分文件需要传输时非常聪明,所以即使涉及大文件也会非常快。

Just create a .CMD file that contains the call to rsync with all the correct parameters and let people call that. rsync is very smart in deciding what part of files need to be transferred, so it'll be very fast even when large files are involved.

什么rsync不做虽然是冲突解决(甚至是检测),但是在您描述的场景中,更像是从中心位置读取,这是rsync旨在处理的。

What rsync doesn't do though is conflict resolution (or even detection), but in the scenario you described it's more like reading from a central place which is what rsync is designed to handle.

这篇关于可交付成果的版本控制的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆