为什么接受变更集时找不到所有变更集? [英] Why can't all change sets be found when accepting change sets?
问题描述
有时我接受变更集时会收到以下消息:
Occasionally when I am accepting I change set I receive the following message :
要解决此问题,我将更改作为补丁应用,然后合并到工作空间" 为什么找不到所有变更集?我的代码是否有可能与流目标不同步?
To resolve this I apply the changes as a patch and then 'Merge into workspace' the changes Why cannot all of the change sets be found ? Is there a danger my code could become out of sync with the flow target ?
推荐答案
一旦应用补丁,危险就不在于同步,而是最终代码的 integrity :
您正在接受基于尚未交付的 other 变更集的变更集.
不能保证它能正常工作.
The danger is not so much the out of sync, but the integrity of the resulting code, once the patches are applied:
You are accepting change set based on other change sets that are not delivered.
There is no guarantee that it works.
如此线程:
在S1中,假设有两个更改集已修改文件
foo.java
:CS-23
和CS-35
.
您已请求CS-35
,但未请求CS-23
.
但是CS-35
中文件foo.java
的状态包含来自CS-23
的更改.因此,除非您也具有CS-23
,否则您将无法获得CS-35
(即导致此更改的更改集"设置").
In S1, suppose there are two change sets that have modified file
foo.java
:CS-23
andCS-35
.
You have requestedCS-35
, but notCS-23
.
But the state of filefoo.java
inCS-35
contains the changes fromCS-23
... So you can't getCS-35
unless you also haveCS-23
(i.e. "the change set that led up to this change set").
只要开发人员A交付所有变更集到一定程度,就可以不交付他/她的所有变更集是可以的.
It is ok for a developer A to not deliver all his/her change set, provided he/she delivers all change sets up to a certain point.
在部分交付的情况下会出现警告(开发人员根据变更集A
交付B
,但是不交付变更集A
)
The warning appears in case of a partial deliver (the developer delivers B
, based on change set A
, but does not deliver change set A
)
That might not be an issue, if there is no functional dependency (similar to git cherry-pick
) between the two change sets (if B
doesn't rely on code in A
to compile, for instance).
这篇关于为什么接受变更集时找不到所有变更集?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!