解决Mercurial错误「waiting for lock on repository」

有的时候因为家里网速的问题在hgpull-u时候会手动关闭CMD窗口,赶上某些时间点时候会造成下次再更新时候会出现提示waitingforlockonrepository造成Mercurial无法更新版本库,但Mercurial本身没有unlock之类的命令。最后发现在.hg/store/文件夹中有一个lock文件,删除此文件即可解决如下图:

精彩继续

吐槽贴

最近使用我提供的SAE图片站代码的人会发现数据没办法自动更新了,每次import时候都是提示None,那是因为我之前在setting.py中提供的APPKEY是我在open.weibo.com中随便申请的一个应用,根本没提交过审核。而性浪微博在2012-07-24时候上线了一个机制是未通过审核的应用不能再使用旧版的接口,具体见这里。而晒美胸代码中却正好使用了一个旧版接口因为新版接口中没有对应的方法,所以也没更新成2.0的接口加上百度同学一直不收录俺的图片站收录了一个,但基本不更新,下午没有写Sqlserver存储过程的状态,就拿出Python给图片站更新了两个方法,一个用来返回sitemap.xml一个用来返回robots.txt。具体代码看bitbucket的更新……看起来搞不好哪天这个代码也就没办法用了,见性浪微博官方说法未切换新版接口的应用将被陆续停止旧版接口使用权限俺还是趁能用的时...

精彩继续

在SAE部署美胸站点图文教程

被问太多次要如何在SAE部署晒美胸的问题了,本来在代码的README中已经说明了安装部署步骤,但好像有的同学还是无从下嘴。如果部署到SAE请直接看SAE的官方文档第一次安装直接将install.sql导入SAE的数据库修改setting.py中站点标题及open.weibo.com中申请到的APPKEY即可修改config.yaml中版本号及name为你自己的如果之前已经下载过我提供过的上一版本代码,需执行update.sql后台地址http://xxx.sinaapp.com/admin(注意没有最后的/)默认用户名111@1.cn密码111,可进后台修改,不可直接修改数据库中用户名首先登陆SAE,选择创建应用选择刚创建的应用,然后在服务管理中点击MySQL,并且点击点此初始化Mysql的按钮初始化MySQL,并导入install.sql(SAE的Mysql管理就是phpmyadmin,...

精彩继续

坑爹的pylibmc官方安装文档

上午才说过redis4you挂掉了,为了保险准备给vps安装memcached支持,最开始准备简单安装python-memcached,简单的easy_installpython-memcached即可,但是在windows机器上下载了python-memcache代码发现这个是纯python实现的,而且看到SAE使用了pylibmc来做python的memcache库。easy_install-mpython-memcached卸载python-memcached(还需要rm/usr/local/python/lib/python2.7/site-packages/python_memcached-1.48-py2.7.egg)后找到pylibmc的安装文档。然后按照文档安装,安装完后importpylibmc却提示「ImportError:libmemcached.so.11:cann...

精彩继续

吐槽贴:网站上个线而已,也要关评

周五我的QQ签名是「被休假」为什么是被休假呢?因为周六(7月7日)公司的网站有一个大的release版本上线,周六时候我需要加班。本来计划是周五时候准备好各种上线文件、文档,然后交由#NETWORK的同事在周六早10点前更新到线上服务器。结果周四下午时候被通知周五强制休假一天,因为老美的习惯是大的release时候所有不需要必须上班的员工均可以休假一天。当然,如果是按老美的习惯来大家都会觉着比较爽。但是,这一条变成了「本土化」的操作方式:周六需要加班的人周五强制休假,但因为之前一些准备工作是计划周五时候做的,这样周五要做的工作需要在家远程支持。当然,是自愿免费支持。如果仅此而已,那么我的文章标题就不会是「网站上个线而已,也要关评」了周六上线各种顺利不顺利就不说了。上线完成收到老美CTO的「congratulations」后的第二天(周日)收到leader的短信「不要在微博上发表任何有关网站...

精彩继续

兼容IE的javascript跳转(可传递referer)

window.location方式跳转页面,会造成IE下跳转到的页面无法获取到跳转来源(referer)。stackoverflow中评论里贴出了一段代码是在页面的body中增加了一个a标签,然后通过javascript点击此a标签来解决ie的此问题,但俺觉着通过UserAgent来判断IE不是很靠谱(众所周知的国内各种加壳版本浏览器),正好记着以前看到过一个IE的特性就是.click是IE特有的一个属性。修改了下。stackoverflow的脚本就有了现在俺在用的这个版本:functiongoTo(url){vara=document.createElement("a");if(!a.click){//onlyIEhasthis(atthemoment);window.location=url;return;}a.setAttribute("href",url);a.style.disp...

精彩继续

图片预加载(jQuery插件)

本博客使用了mootools的一个lazyload图片效果的js脚本,但因为某些图片放在国外的free.fr免费空间里,国内访问并不是很顺畅,会出现图片加载比较慢的情况。虽然前两天简单写了一个『基于SAE的图床』,但博客里一些图片实在不想再去一个一个拿下来上传到SAE上去了。为了加快图片显示速度就想到了『图片预加载』这个概念,Google一圈以后找到一个很简单的jQuery版本,本来想转换成Mootools版本来使用,后来才想起来图片都是插入到文章里的,把文章中文件全部抽取出来还是要修改typecho本身代码,俺是个懒人…就放弃做此修改了。不过此版jQuery预加载图片插件还是很简单,也很不错的,之后自己写的一些小程序可以考虑图片预加载这一点,尤其现在的一些仿pinterest的图片比较多的站点可以考虑使用一下此脚本,预先加载一部分图片供页面快速显示。插件代码:(function($){v...

精彩继续

Python的staticmethod和classmethod装饰器用法、区别

Python的staticmethod和classmethod装饰器会迷惑一些人,有的人总会纠结什么时候用怎么用。俺写了个简单的例子,很清楚就能看出来这几种方法的区别。什么时候用怎么用就不用再多说了吧。#-*-coding:utf-8-*-classA(object):deffoo(self,x):print"executingfoo(%s,%s)"%(self,x)@classmethoddefclass_foo(cls,x):print"executingclass_foo(%s,%s)"%(cls,x)cls().foo(x)@staticmethoddefstatic_foo(x):print"executingstatic_foo(%s)"%xa=A()a.foo(1)print'1'a.class_foo(1)print'2'A.class_foo(1)print'3'a.st...

精彩继续

Python版本短网址还原脚本

看了别人写的一个PHP版本的短网址还原代码,感慨下PHP的强大,但这么简单的一个功能写了好长一段代码。PHP版本代码如图:尝试用Python重写了一下,发现其实这个功能只需要四行代码就可以实现。再次感叹下Python的方便:#-*-coding:utf-8-*-importurllib2,socketrequest=urllib2.urlopen(urllib2.Request(url='http://t.cn/zOyhXrZ',headers={'User-Agent':'Mozilla/8.0(compatible;MSIE8.0;Windows7)'}))socket.setdefaulttimeout(5)printrequest.url

精彩继续