Perforce不知道我有提交的更改

时间:2011-09-24 19:09:01

标签: version-control perforce

我是Perforce的新手。我对Git和Subversion更加满意。

无论如何,这就是发生的事情:

  1. 我在自己的机器上的位置A的p4v中为自己创建了一个分支。
  2. 我在位置B创建了一个Java项目 将其复制到我计算机上的位置A.
  3. 我创建并提交了Java项目的更改列表。
  4. 我意识到我需要做出另一个改变,所以我回到Eclipse并编辑了项目。但是,我忘记了Eclipse中的项目指向位置B中的项目。
  5. 因此,我将项目从位置B复制到位置A,其中分支是。
  6. 但是现在我无法为编辑创建更改列表,因为Perforce认为没有提交更改。

    我做错了什么,如何修复它,以及Perforce最佳做法是什么以避免将来出现这种疯狂行为?

2 个答案:

答案 0 :(得分:5)

有一个Eclipse plugin for Perforce。如果您安装了这个,那么您将能够在Eclipse的位置A使用该项目。

如果你对任何文件或设置进行编辑,Perforce会自动检出文件并将其放在默认的更改列表中。

然后,您可以从那里重新检入,或使用P4V管理您的更改列表。

正如@jamesdlin指出Perforce有效地“拥有”了这些文件,如果没有“请求权限”,则不应该通过显式p4 edit命令或通过IDE插件进行任何编辑。

如果您在没有的情况下进行了更改,请先查看该文件,您只需拨打p4 edit电话即可。这不会覆盖本地文件,只要将文件标记为可写,就Perforce而言。 Perforce 应该然后会识别出有待处理的编辑,然后让您将其签入。

答案 1 :(得分:4)

在编辑文件之前,您需要对文件执行p4 edit。通常情况下,文件被标记为只读,以强烈阻止您修改文件而不先将其标记为编辑。

最佳做法是不要争取只读权限。