rcleartool 签入是原子的吗?

发布于 2024-10-17 17:49:43 字数 254 浏览 3 评论 0 原文

我有一种不好的预感,答案是否定的,但是 ClearCase Remote Client 在单命令模式下的签入命令无论如何都是原子的吗?

例如,我有三个文件 A、B 和 C。我对每个文件进行更改并执行签入。 A 签入,B 签入,但 C 发生合并冲突。在这种情况下,会发生什么?所有文件的签入都会失败,还是仅 C 文件会失败(在这种情况下,存储库处于损坏状态)。

如果是后者,有没有办法仅使用 rcleartool 使其原子化?

任何帮助将不胜感激!

I have a bad feeling that the answer is no, but is the checkin command of ClearCase Remote Client in single-command mode in anyway atomic?

For example, I have three files A, B, and C. I make changes to each file and perform a checkin. A checks in, B checks in, but C gets a merge conflict. In that case, what happens? Will the checkin for all files fail, or will it fail for only C (in which case, the repo is in a broken state).

If it is the latter, is there a way to make it atomic using just rcleartool?

Any help would be appreciated!

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

温柔嚣张 2024-10-24 17:49:43

我还没有测试过它,但还没有测试过:

  1. 原子签入 需要在要执行原子签入的目标 Vob 上启用
  2. 它仅适用于基本 ClearCase
  3. 您需要 7.1.2 (否则您将拥有 执行多个文件签入时大多数对象类型都会出错)
  4. 在原子签入期间,无法对 Vobs 进行其他(读/写)操作
    (这让我认为 rcleartool 不应该能够通过 WAN 执行原子签入:它会阻塞 Vob 太长时间)。

Checkin 的最新(7.1.2)描述确实提到:

选择此选项(也称为原子签入)可指定签入操作在单个批量事务中进行。如果任何正在签入的资源由于任何原因失败,则整个签入操作都会失败。
当您选择此选项时,即使版本与其先前版本相同,也会自动选择签入选项,因为相同的文件会导致整个签入失败。

因此,如果发生合并冲突,它将中止所有事务。

I haven't tested it yet, but not that:

  1. atomic checkin needs to be enabled on the target Vob in which you want to perform atomic checkins.
  2. It is only for base ClearCase
  3. You need 7.1.2 (otherwise you will have an error for most of the object type when doing multiple files checkins)
  4. No other (read/write) operations on the Vobs are possible during an atomic checkin.
    (which makes me think that rcleartool shouldn't be able to perform -- over WAN -- an atomic checkin: it would block a Vob for way too much time).

The latest (7.1.2) description of Checkin does mention:

Select this option (which is also known as atomic checkin) to specify that the checkin operation takes place in a single, bulk transaction. If any of the resources being checked in fails for any reason, the entire checkin operation fails.
When you select this option, the Checkin even if the version is identical to its predecessor option is automatically selected since an identical file would cause the entire checkin to fail.

So in case of a merge conflict, it will abort the all transaction.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文