【问题标题】:Perforce adding a folder to depotPerforce 将文件夹添加到仓库
【发布时间】:2012-08-15 17:42:25
【问题描述】:

我是 Perforce 的新手。你能在仓库的分支下添加一个新文件夹吗?我也尝试在我的工作场所添加一个,但我怎样才能将它送到仓库?我是否必须进行合并/集成或其他操作?

谢谢。

【问题讨论】:

  • 请注意,Perforce 不知道文件夹和任何文件。因此,在 Dave 的回答中,您需要在新文件夹中有一个占位符文件。

标签: perforce


【解决方案1】:

p4 add 不支持递归添加。

这是一个在您要添加的根文件夹中运行的 unix shell 解决方法:

find . -type f -print | p4 -x - add

【讨论】:

  • 从 2015.1 版本开始(参见发行说明 900158),p4 add 支持 ... 语法,并将执行递归添加。
【解决方案2】:

从您的本地工作区,创建您的文件夹和一个您想要放入其中的文件。然后要么从可视化客户端将其标记为添加,要么从命令行进入文件夹,然后键入...

p4 add ./new_folder/new_file_name.ext

当您提交时,新文件和文件夹将在您的存储库中。这假定 new_folder 是您现有工作区的子文件夹。如果不是,请告诉我,我会更新我的答案。

以上命令将在默认更改列表下添加文件。稍后如果您想查看 if 文件是否真的添加到默认更改列表中

p4 opened

并且对于提交打开的文件,在默认更改列表下,到仓库

p4 submit 

【讨论】:

    【解决方案3】:

    如果您的服务器版本是 2012.1 或更高版本,您可以使用 reconcile 命令执行此操作,并完全支持通配符:

    p4 reconcile //depot/path/to/folder/...
    

    【讨论】:

      【解决方案4】:

      使用命令

      p4 add directory_to_be_added/...
      

      这将递归添加从 drom "directory_to_be_added" 开始的所有内容

      【讨论】:

        【解决方案5】:

        在 perforce 中从目录添加文件

        p4 reconcile -f -c [changeList] -a <dir_path_to add>

        【讨论】:

        • 无法以这种方式添加尚未在仓库中的文件。
        【解决方案6】:

        我有一种情况,我需要添加带有通配符名称的文件的整个文件夹,所以必须通过命令行使用 -f(强制)来完成,我使用了“dir /b /s /a-d | p4 -x -添加 -f"

        【讨论】:

          【解决方案7】:

          如果是使用p4v递归添加文件夹,需要点击:

          "Connection" -> "Edit Current Workspace"

          然后手动将新文件夹的映射添加到您的 depot。

          然后转到“工作区”视图并右键单击根文件夹,单击“标记为添加”并发表评论。其下的所有文件都应显示在新的挂起更改列表中。

          【讨论】:

            猜你喜欢
            • 1970-01-01
            • 1970-01-01
            • 1970-01-01
            • 2012-10-31
            • 1970-01-01
            • 2013-09-29
            • 2020-12-08
            • 1970-01-01
            • 1970-01-01
            相关资源
            最近更新 更多