1

我需要确定文件/文件夹是否在特定的源代码控制之下。最简单的方法是找到一些隐藏文件夹。(这并不能保证部分文件受源代码控制,但有一定的可能性表示使用了此源代码控制)

SVN、GIT 非常简单,因为它们有隐藏文件夹。

但是我找不到 Perforce 和 ClearCase 相同的东西。是否有任何通用方法来理解在这些特殊情况下使用什么 VSC?

4

3 回答 3

2

Perforce 不会乱扔驱动器,而是将信息保存在服务器上。此外,文件可以以不同的结构映射,并与非受控文件混合,因此您无法通过查看文件本身来确定。

但是,您可以简单地询问 Perforce。例如,在 CLI 中:

P4 fstat FILENAME

如果文件受源代码控制,将为您提供有关文件的信息。

于 2013-02-06T16:16:49.707 回答
1

如果您需要为 Perforce 编写脚本,有一个选项 (-s) 可以让事情变得更容易(因为 p4 的退出代码并不表示 Perforce 命令的成功或失败)。因此,对于类似 bourne 的 shell,这样的东西应该可以工作:

if p4 -s fstat FILENAME | grep 'exit: 0' >/dev/null 2>&1 ; then
  echo "Perforce knows this file"
else
  echo "Perforce don't care"
fi 
于 2013-02-06T21:54:04.060 回答
0

对于 ClearCase,您会在(快照)视图的根目录中 找到一个名为的隐藏文件。view.dat

如果文件位于 M:\ (Windows) 或 /view/vobs (Unix) 下,则无需查找隐藏文件或目录:您知道它是动态视图。

另一种方法是在文件的父目录中执行:

cleartool lsview -cview.

如果该目录在视图中,则该命令将返回其名称。

同样,您可以运行类似p4 reconcileor的命令p4 status,并且它不会返回错误,您可能在 Perforce 工作区中。

于 2013-02-06T16:15:52.687 回答