如何删除 Perforce 中的功能分支(或任何分支)?
How to delete a feature branch (or any branch) in Perforce?
我是 Perforce 的新手,我才刚刚开始熟悉 Perforce 的分支功能。我不明白的一件事是如何在我完成使用后删除 feature 分支,并且更改已合并回主线分支,就像您对功能分支所做的那样在 Git.
你能删除 perforce 中的分支还是永久保留在 Perforce 中?
如果它是任务流(这是我推荐的短期 "feature branch" 类型流),您可能想要 "unload" 它:
p4 unload -s //depot/task_stream
这基本上类似于使用 "p4 stream -d" 删除流,不同之处在于您可以稍后将其取回。与 "p4 stream -d" 一样,它也不会删除流中的所有文件;您修改的文件保留在仓库中(以便您可以根据需要将合并记录返回到原始提交),但所有未修改的文件都已卸载(而 "stream -d" 它们已经消失了没有任何方便的记录它们在父级中匹配的确切版本——你可以在事后重建它,但它更难)。使用 "p4 reload" 使任务流恢复生机。
如果它是一个普通流 and/or 你想永远摆脱它,包括它的仓库路径中的原始更改,你需要是管理员(在 Perforce 中提交的更改通常被认为是非常重要和不可变的除非你是管理员)并使用 "obliterate" 命令,然后删除流规范:
p4 obliterate -y //depot/your_stream/...
p4 stream -d //depot/your_stream
鉴于您的描述,我绝对建议您使用任务流来实现功能,并在您完成后 "unloading" 使用它们。
如果您根本不使用流,那么使用分支的标准做法是在使用完它们后离开它们,或者重用它们(即有一个正在进行的开发分支,您可以将其合并到完成每个功能时的主线)。您可以删除一个分支(如上文流示例中所述),但由于这需要管理员权限,因此并不常见。
我是 Perforce 的新手,我才刚刚开始熟悉 Perforce 的分支功能。我不明白的一件事是如何在我完成使用后删除 feature 分支,并且更改已合并回主线分支,就像您对功能分支所做的那样在 Git.
你能删除 perforce 中的分支还是永久保留在 Perforce 中?
如果它是任务流(这是我推荐的短期 "feature branch" 类型流),您可能想要 "unload" 它:
p4 unload -s //depot/task_stream
这基本上类似于使用 "p4 stream -d" 删除流,不同之处在于您可以稍后将其取回。与 "p4 stream -d" 一样,它也不会删除流中的所有文件;您修改的文件保留在仓库中(以便您可以根据需要将合并记录返回到原始提交),但所有未修改的文件都已卸载(而 "stream -d" 它们已经消失了没有任何方便的记录它们在父级中匹配的确切版本——你可以在事后重建它,但它更难)。使用 "p4 reload" 使任务流恢复生机。
如果它是一个普通流 and/or 你想永远摆脱它,包括它的仓库路径中的原始更改,你需要是管理员(在 Perforce 中提交的更改通常被认为是非常重要和不可变的除非你是管理员)并使用 "obliterate" 命令,然后删除流规范:
p4 obliterate -y //depot/your_stream/...
p4 stream -d //depot/your_stream
鉴于您的描述,我绝对建议您使用任务流来实现功能,并在您完成后 "unloading" 使用它们。
如果您根本不使用流,那么使用分支的标准做法是在使用完它们后离开它们,或者重用它们(即有一个正在进行的开发分支,您可以将其合并到完成每个功能时的主线)。您可以删除一个分支(如上文流示例中所述),但由于这需要管理员权限,因此并不常见。