我是Perforce的新手。你能在仓库的分支下添加一个新文件夹吗?我也尝试在我的工作场所添加一个,但我怎么能把它送到仓库?我必须进行合并/整合吗?
感谢。
答案 0 :(得分:23)
p4 add 不支持递归添加。
这是一个unix shell解决方案,可以在你想要添加的根文件夹中运行:
find . -type f -print | p4 -x - add
答案 1 :(得分:14)
从您的本地工作区,创建您想要进入其中的文件夹和文件。然后将其从可视客户端标记为添加,或从命令行进入该文件夹,然后键入...
p4 add ./new_folder/new_file_name.ext
提交时,新文件和文件夹将位于您的存储库中。这假设new_folder
是您现有工作区的子文件夹。如果不是,请告诉我,我会更新我的答案。
以上命令将在默认更改列表下添加文件。稍后如果您想查看if文件是否真的添加到默认更改列表
中p4 opened
对于已打开文件的提交,在默认更改列表下,到depot
p4 submit
答案 2 :(得分:12)
如果您的服务器版本是2012.1或更高版本,则可以使用reconcile命令执行此操作,并获得完整的通配符支持:
<script language="javascript">
var t1;
var t2;
var t3;
var st1, st2, st3;
function fn_sample() {
document.getElementById('reset').style.display = 'none';
document.getElementById('start').style.display = 'none';
document.getElementById('stop').style.display = 'inline-block';
running = true;
document.frm.txtS.value = parseInt(document.frm.txtS.value) + 1;
t1 = document.frm.txtS.value;
if(t1>60){
document.frm.txtS.value = 0;
fn_incMin();
}
st1 = window.setTimeout("fn_sample()", 1000);
}
function fn_incMin() {
document.frm.txtM.value = parseInt(document.frm.txtM.value) + 1;
t2 = document.frm.txtM.value;
if(t2>60){
document.frm.txtM.value = 0;
fn_incHrs();
}
st2 = window.setTimeout("fn_incMin()", 60000);
}
function fn_incHrs() {
document.frm.txtH.value = parseInt(document.frm.txtH.value) + 1;
t3 = document.frm.txtH.value;
st3 = window.setTimeout("fn_incHrs()", 3600000);
}
function fn_stop() {
document.getElementById('reset').style.display = 'inline-block';
document.getElementById('start').style.display = 'inline-block';
document.getElementById('stop').style.display = 'none';
window.clearTimeout(st1);
window.clearTimeout(st2);
window.clearTimeout(st3);
}
function fn_reset() {
document.frm.txtS.value = 0;
document.frm.txtM.value = 0;
document.frm.txtH.value = 0;
}
</script>
</head>
<body>
<form name="frm">
<input type="text" name="txtH" value="0" size="2"/>
<input type="text" name="txtM" value="0" size="2"/>
<input type="text" name="txtS" value="0" size="2"/>
<br /><br />
<input id="start" type="button" value="Start" onclick="fn_sample();"style="display:inline-block" />
<input id="stop" type="button" value="Stop" onclick="fn_stop();" style="display:none" />
<input id="reset" type="button" value="Reset" onclick="fn_reset();" style="display:inline-block" />
</form>
</body>
答案 3 :(得分:3)
使用命令
p4 add directory_to_be_added/...
这将以递归方式添加以“directory_to_be_added”开头的所有内容
答案 4 :(得分:2)
从perforce中的目录添加文件
p4 reconcile -f -c [changeList] -a <dir_path_to add>
答案 5 :(得分:0)
如果您使用p4v递归添加文件夹,则需要单击:
"Connection" -> "Edit Current Workspace"
然后手动将新文件夹的映射添加到您的软件仓库。
然后转到你的&#34;工作区&#34;查看并右键单击根文件夹,单击&#34;标记为添加&#34;和评论。其下的所有文件都应显示在新的待定更改列表中。
答案 6 :(得分:0)
我遇到的情况是我需要添加带有通配符名称的文件的整个文件夹,所以不得不通过命令行使用-f(强制),我使用“dir / b / s / ad | p4 -x - 添加-f“