我的服务器上有一个更新后的挂钩,这样当我
git push
它会对实时网络目录进行拉动.但是,虽然推送总是成功,但更新后的挂钩有时会失败.
钩子非常简单:
#!/bin/sh
#
# An example hook script to prepare a packed repository for use over
# dumb transports.
#
# To enable this hook, rename this file to "post-update".
cd /var/www
env -i git pull
我正在推动来自各个地方的更新,但有时我必须在服务器上以root用户身份登录,并且manuall会做一个
env -i git pull
我只需要做20%的时间.任何想法为什么会随机失败?另外,如何记录错误消息,因为它可能作为无法写入文件系统的人运行?
我有以下defun
(defun a-test-save-hook()
  "Test of save hook"
  (message "banana")
  )
我通过以下钩子使用
(add-hook 'after-save-hook 'a-test-save-hook)
这按预期工作.我想做的是将钩子限制到特定模式,在这种情况下是组织模式.关于我如何做到这一点的任何想法?
提前致谢.
WordPress钩子有两种使用方式:
使用回调函数名称和适当的函数
add_action( 'action_name', 'callback_function_name' );
function callback_function_name() {
    // do something
}
使用匿名函数(闭包)
add_action( 'action_name', function() {
    // do something
} );
WordPress的使用方法有什么区别吗?什么是首选方式和原因?
我在GitHub的开放小说中保留的一个东西是我想自动设置第一行的单词列表,这是字典中单词的数量.我的第一个选择是编写一个预提交钩子,它读取文件,计算单词,重写第一行并再次写回.这是代码
PRE_COMMIT {
  my ($git) = @_;
  my $branch =  $git->command(qw/rev-parse --abbrev-ref HEAD/);
  say "Pre-commit hook in $branch";
  if ( $branch =~ /master/ ) {
     my $changed = $git->command(qw/show --name-status/);
     my @changed_files = ($changed =~ /\s\w\s+(\S+)/g);
     if ( $words ~~ @changed_files ) {
       my @words_content = read_file( $words );
       say "I have $#words_content words";
       $words_content[0] = "$#words_content\n";
       write_file( $words, @words_content );
     }
   }
};
但是,由于该文件已经暂存,我收到此错误
错误:checkout将覆盖对以下文件的本地更改:text/words.dic请在提交更改或存储更改之前切换分支.中止
可能最好将它作为一个后提交钩子并将其更改为下一次提交?或者做一些完全不同的事情?一般问题是:如果您想在提交期间处理和更改文件的内容,那么正确的方法是什么?
您遇到过哪些有用的Mercurial钩子?
Mercurial书中有一些示例钩子:
我个人认为这些非常有用.我想看看:
请坚持使用bat和bash或Python的钩子.这样,*nix和Windows用户都可以使用它们.
我正在开发的桌面应用程序需要知道在运行应用程序时哪些窗口处于活动状态.目前它每250毫秒执行一次GetForegroundWindow()呼叫user32.dll.方法不是很准确.
是否有任何Windows(WINAPI?)事件在每次活动(聚焦)窗口更改时触发?我想订阅我的回调函数.
谢谢.
我想在git commit之前检查提交消息.我使用预提交钩子来做到这一点,但无法在.git/pre-commit脚本中找到获取提交消息的方法.我怎么能得到它?
我试图以编程方式更改我的应用程序的标题栏和边框颜色.我尝试了很多东西,但没有成功,并决定在整个系统中更改这些颜色.因为我可以在应用程序运行时更改标题栏和边框颜色,并在应用程序结束时将其还原.(托管环境,运行少量应用程序)
是否可以动态更改这些颜色(在整个过程范围内,或在系统范围内更改,除非可以进行整个过程的更改)?你能建议任何方法来达到这个目的吗?
我尝试了类似下面的东西,但它没有做我想要的:
int aElements[2] = {COLOR_WINDOW, COLOR_ACTIVECAPTION};
DWORD aOldColors[2];
DWORD aNewColors[2];
aOldColors[0] = GetSysColor(aElements[0]); 
aOldColors[1] = GetSysColor(aElements[1]); 
aNewColors[0] = RGB(0x80, 0x80, 0x80);  // light gray 
aNewColors[1] = RGB(0x80, 0x00, 0x80);  // dark purple 
SetSysColors(2, aElements, aNewColors);
SetSysColors(2, aElements, aOldColors);
提前致谢
编辑
这正是我想要的:
我想通过提供一个调用用户功能的界面,为我的一个模块的用户提供扩展功能的能力.例如,我想让用户在创建类的实例时获得通知的能力,并且在使用它之前有机会修改实例.
我实现它的方法是声明一个模块级工厂函数来进行实例化:
# in mymodule.py
def factory(cls, *args, **kwargs):
    return cls(*args, **kwargs)
然后,当我需要mymodule中的一个类的实例时,我会factory(cls, arg1, arg2)而不是cls(arg1, arg2).
为了扩展它,程序员会在另一个模块中写一个这样的函数:
def myFactory(cls, *args, **kwargs):
    instance = myFactory.chain(cls, *args, **kwargs)
    # do something with the instance here if desired
    return instance
上面回调的安装如下所示:
myFactory.chain, mymodule.factory = mymodule.factory, myFactory
这对我来说似乎很简单,但我想知道,作为一名Python程序员,你是否期望一个函数能够注册一个回调而不是一个赋值,或者你是否还有其他方法.我的解决方案对您来说是否可行,惯用且清晰?
我希望尽可能保持简单; 我不认为大多数应用程序实际上需要链接多个用户回调,例如(尽管使用上述模式无限链接"免费").我怀疑他们需要删除回调或指定优先级或订单.像python-callbacks或PyDispatcher这样的模块在我看来就像矫枉过正,尤其是后者,但如果对使用我的模块的程序员有很大的好处,我会向他们开放.
据我所知,你必须使用com.instagram.photo获得常规选项和com.instagram.exclusivegram为documentinteractioncontroller的UTI如果你真的只想要的Instagram +使用正确的扩展.ig一般和.igo独家Instagram的.
出于某种原因,我看到了多个选项,而不仅仅是我喜欢的Instagram ...
我忘记了什么吗?它有不同的做法吗?
UIImage *image = (UIImage *)[info valueForKey:UIImagePickerControllerOriginalImage];
NSURL *instagramURL = [NSURL URLWithString:@"instagram://"];
if ([[UIApplication sharedApplication] canOpenURL:instagramURL]) {
    CGRect rect = CGRectMake(0,0,0,0);
    CGRect cropRect=CGRectMake(0,0,612,612);
    // ig voor gewone instagram, igo voor exclusive instagram
    NSString *jpgPath=[NSHomeDirectory() stringByAppendingPathComponent:@"Documents/temp/photo.igo"];
    CGImageRef imageRef = CGImageCreateWithImageInRect([image CGImage], cropRect);
    UIImage *img = [[UIImage alloc] initWithCGImage:imageRef];
    CGImageRelease(imageRef);
    [UIImageJPEGRepresentation(img, 1.0) writeToFile:jpgPath atomically:YES];
    NSURL *igImageHookFile = [[NSURL alloc] initWithString:[[NSString alloc] initWithFormat:@"file://%@",jpgPath]];
    // exclusive zou direct in de instagram app …