我想在XCode 4中设置一个宏来检查Perforce中的当前文件。我怎样才能做到这一点?我不将perforce与我的项目集成,并且不希望这样做。这在Visual Studio中非常简单,但我不知道XCode等效。
答案 0 :(得分:4)
刚刚在Perforce.com上看到了这种做法。我试过了,这很不错。
http://answers.perforce.com/articles/KB/2997
根据评论,它也适用于Xcode 5。
现在它已在Xcode 6中测试并运行了!
编辑:
如果这不起作用,并且你正在使用OS X Mavericks,那么这个人就修改了脚本以继续工作。只需确保脚本正确引用p4即可。我必须将其从/usr/local/bin/p4
更改为/usr/bin/p4
。
答案 1 :(得分:2)
xcodeunlock.sh
#!/bin/bash
# Xcode4 doesn't setup the environment
source ~/.bashrc
# Delete the URL part from the file passed in
fn=${BASH_ARGV#file://localhost}
echo "fn=" $fn
if [ -a ${fn} ]; then
res=$(/usr/local/bin/p4 edit ${fn})
# TODO: Report the status back to the user in Xcode
# This output goes to the console.
echo $res
else
echo "FnF" ${fn}
fi
正确设置后,在Xcode中解锁文件应该运行此脚本并尝试签出文件。不幸的是,任何输出都转到'/var/log/system.log'。我不确定如何通知Xcode 4此脚本中的失败。
答案 2 :(得分:1)
我能想到的最接近的是服务,所以看起来Xcode 4 Perforce Services可以完成这项工作。不过,我还没有尝试过。我偶然发现了this question。
答案 3 :(得分:1)
试图让XCode与Perforce一起工作令人抓狂。以下是我提出的解决方案:
一次性设置如下:
/usr/bin
(或其他)并在其上执行chmod + x。有关官方设置说明,如果您需要执行任何自定义环境变量技巧,请参阅this tech note。完成此操作后,假设您正在使用XCode,并且您正在查看要检出的源代码文件。这是严格的:
Shift Command Enter
以获取DTerm窗口p4 edit
,然后点击Shift Command V
以粘贴活动文件的文件名,然后点击返回我有一段时间没有这样做,所以如果你遇到任何故障请告诉我,我会在这里更新我的信息,以尽可能轻松。但除此之外,这是我找到的最佳解决方案。