亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? monotone.py

?? 一份linux上的比較工具meld的源代碼
?? PY
字號:
### Copyright (C) 2002-2005 Stephen Kennedy <stevek@gnome.org>### Copyright (C) 2005 Daniel Thompson <daniel@redfelineninja.org.uk>### Redistribution and use in source and binary forms, with or without### modification, are permitted provided that the following conditions### are met:###### 1. Redistributions of source code must retain the above copyright###    notice, this list of conditions and the following disclaimer.### 2. Redistributions in binary form must reproduce the above copyright###    notice, this list of conditions and the following disclaimer in the###    documentation and/or other materials provided with the distribution.### THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR### IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES### OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.### IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT,### INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT### NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,### DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY### THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT### (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF### THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.import osimport reimport timeimport _vcclass Vc(_vc.Vc):    CMD = "mtn"    NAME = "Monotone"    PATCH_STRIP_NUM = 0    PATCH_INDEX_RE = "^[+]{3,3} ([^  ]*)\t[0-9a-f]{40,40}$"    def __init__(self, location):        self._tree_cache = None        location = os.path.normpath(location)        def find_folder(where, tofind):            while where != "/":                cur = os.path.join(where,tofind)                if os.path.isdir(cur):                    return where                where = os.path.dirname(where)        # for monotone >= 0.26        mtn = find_folder(location,"_MTN")        if mtn:            self.root = mtn            return        # for monotone <= 0.25 (different metadata directory, different executable)        mt = find_folder(location,"MT")        if mt:            self.root = mt            self.CMD = "monotone"            return        raise ValueError    def commit_command(self, message):        return [self.CMD,"commit","-m",message]    def diff_command(self):        return [self.CMD,"diff"]    def update_command(self):        return [self.CMD,"update"]    def add_command(self, binary=0):        #if binary:        #    return [self.CMD,"add","-kb"]        return [self.CMD,"add"]    def remove_command(self, force=0):        return [self.CMD,"drop"]    def revert_command(self):        return [self.CMD,"revert"]    def get_working_directory(self, workdir):        return self.root    def cache_inventory(self, rootdir):        self._tree_cache = self.lookup_tree()    def uncache_inventory(self):        self._tree_cache = None    def lookup_tree(self):        while 1:            try:                entries = os.popen(self.CMD + " automate inventory").read().split("\n")[:-1]                break            except OSError, e:                if e.errno != errno.EAGAIN:                    raise        statemap = {            '   ' : _vc.STATE_NORMAL,   # unchanged            '  P' : _vc.STATE_MODIFIED, # patched (contents changed)            '  U' : _vc.STATE_NONE,     # unknown (exists on the filesystem but not tracked)            '  I' : _vc.STATE_IGNORED,  # ignored (exists on the filesystem but excluded by lua hook)            '  M' : _vc.STATE_MISSING,  # missing (exists in the manifest but not on the filesystem)	    # Added files are not consistantly handled by all releases:	    #   0.28: although documented as invalid added files are tagged ' A '.	    #   0.26, 0.27: ???	    #   0.25: added files are tagged ' AP'.            ' A ' : _vc.STATE_NEW,      # added (invalid, add should have associated patch)            ' AP' : _vc.STATE_NEW,      # added and patched            ' AU' : _vc.STATE_ERROR,    # added but unknown (invalid)            ' AI' : _vc.STATE_ERROR,    # added but ignored (seems invalid, but may be possible)            ' AM' : _vc.STATE_EMPTY,    # added but missing from the filesystem            ' R ' : _vc.STATE_NORMAL,   # rename target            ' RP' : _vc.STATE_MODIFIED, # rename target and patched            ' RU' : _vc.STATE_ERROR,    # rename target but unknown (invalid)            ' RI' : _vc.STATE_ERROR,    # rename target but ignored (seems invalid, but may be possible?)            ' RM' : _vc.STATE_MISSING,  # rename target but missing from the filesystem            'D  ' : _vc.STATE_REMOVED,  # dropped            'D P' : _vc.STATE_ERROR,    # dropped and patched (invalid)            'D U' : _vc.STATE_REMOVED,  # dropped and unknown (still exists on the filesystem)            'D I' : _vc.STATE_ERROR,    # dropped and ignored (seems invalid, but may be possible?)            'D M' : _vc.STATE_ERROR,    # dropped and missing (invalid)            'DA ' : _vc.STATE_ERROR,    # dropped and added (invalid, add should have associated patch)            'DAP' : _vc.STATE_NEW,      # dropped and added and patched            'DAU' : _vc.STATE_ERROR,    # dropped and added but unknown (invalid)            'DAI' : _vc.STATE_ERROR,    # dropped and added but ignored (seems invalid, but may be possible?)            'DAM' : _vc.STATE_MISSING,  # dropped and added but missing from the filesystem            'DR ' : _vc.STATE_NORMAL,   # dropped and rename target            'DRP' : _vc.STATE_MODIFIED, # dropped and rename target and patched            'DRU' : _vc.STATE_ERROR,    # dropped and rename target but unknown (invalid)            'DRI' : _vc.STATE_ERROR,    # dropped and rename target but ignored (invalid)            'DRM' : _vc.STATE_MISSING,  # dropped and rename target but missing from the filesystem            'R  ' : _vc.STATE_REMOVED,  # rename source            'R P' : _vc.STATE_ERROR,    # rename source and patched (invalid)            'R U' : _vc.STATE_REMOVED,  # rename source and unknown (still exists on the filesystem)            'R I' : _vc.STATE_ERROR,    # rename source and ignored (seems invalid, but may be possible?)            'R M' : _vc.STATE_ERROR,    # rename source and missing (invalid)            'RA ' : _vc.STATE_ERROR,    # rename source and added (invalid, add should have associated patch)            'RAP' : _vc.STATE_NEW,      # rename source and added and patched            'RAU' : _vc.STATE_ERROR,    # rename source and added but unknown (invalid)            'RAI' : _vc.STATE_ERROR,    # rename source and added but ignored (seems invalid, but may be possible?)            'RAM' : _vc.STATE_MISSING,  # rename source and added but missing from the filesystem            'RR ' : _vc.STATE_NEW,      # rename source and target            'RRP' : _vc.STATE_MODIFIED, # rename source and target and target patched            'RRU' : _vc.STATE_ERROR,    # rename source and target and target unknown (invalid)            'RRI' : _vc.STATE_ERROR,    # rename source and target and target ignored (seems invalid, but may be possible?)            'RRM' : _vc.STATE_MISSING   # rename source and target and target missing        }        tree_state = {}        for entry in entries:            mstate = entry[0:3]            rename_tracking = entry[4:7] # unused            fname = entry[8:]            if mstate in statemap:                state = statemap[mstate]                if state == _vc.STATE_ERROR:                    print "WARNING: invalid state ('%s') reported by 'automate inventory'" % mstate            else:                state = _vc.STATE_ERROR                print "WARNING: impossible state ('%s') reported by 'automate inventory' (version skew?)" % mstate            tree_state[os.path.join(self.root, fname)] = state;        return tree_state    def get_tree(self):        if self._tree_cache is None:            return self.lookup_tree()        else:            return self._tree_cache    # TODO: if get_tree() could be called later,    # we wouldn't need this override for lookup_files()    def lookup_files(self, dirs, files):        tree = self.get_tree()        _vc.Vc.lookup_files(self, dirs, files)    def _get_dirsandfiles(self, directory, dirs, files):        retfiles = []        retdirs = []        vcfiles = {}        for path,state in tree.iteritems():            mydir, name = os.path.split(path)            if path.endswith('/'):                mydir, name = os.path.split(mydir)            if mydir != directory:                continue            rev, date, options, tag = "","","",""            if path.endswith('/'):                retdirs.append( _vc.Dir(path[:-1], name, state))            else:                retfiles.append( _vc.File(path, name, state, rev, tag, options) )            vcfiles[name] = 1        for f,path in files:            if f not in vcfiles:                # if the ignore MT filter is not enabled these will crop up                ignorelist = [ 'format', 'log', 'options', 'revision', 'work' ]                if f not in ignorelist:                    print "WARNING: '%s' was not listed by 'automate inventory'" % f                # if it ain't listed by the inventory it's not under version                # control                state = _vc.STATE_NONE                retfiles.append( _vc.File(path, f, state, "") )        for d,path in dirs:            if d not in vcfiles:                # if the ignore MT filter is not enabled these will crop up                ignorelist = [ 'MT' ]                if d in ignorelist:                    state = _vc.STATE_NONE                else:                    # monotone does not version (or inventory) directories                    # so these are always normal                    state = _vc.STATE_NORMAL                retdirs.append( _vc.Dir(path, d, state) )        return retdirs, retfiles

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
亚洲最大成人综合| 麻豆国产精品一区二区三区| 日日摸夜夜添夜夜添国产精品| 狠狠色伊人亚洲综合成人| 色噜噜狠狠色综合中国| 久久精品一区四区| 日韩影院在线观看| 日本丰满少妇一区二区三区| 国产午夜精品福利| 蜜臀久久99精品久久久画质超高清| 99精品一区二区三区| 久久久亚洲精华液精华液精华液 | 欧美极品xxx| 日本不卡一二三| 色嗨嗨av一区二区三区| 国产精品久久久久aaaa| 国产露脸91国语对白| 欧美精品777| 亚洲动漫第一页| 色综合久久88色综合天天| 欧美高清在线视频| 国产一区二区三区四区在线观看| 欧美一区在线视频| 亚洲va国产va欧美va观看| 欧美午夜宅男影院| 亚洲一区在线看| 欧美影院精品一区| 亚洲一本大道在线| 日本丰满少妇一区二区三区| 一区二区三区四区在线免费观看| av在线不卡观看免费观看| 国产精品白丝在线| 91丨porny丨国产入口| 亚洲美女少妇撒尿| 91久久精品国产91性色tv| 亚洲一二三专区| 欧美日韩第一区日日骚| 欧美aaaaaa午夜精品| 精品久久久久久最新网址| 极品美女销魂一区二区三区免费| 精品国产免费一区二区三区香蕉 | 丁香亚洲综合激情啪啪综合| 久久久.com| av在线这里只有精品| 亚洲一区二区视频在线| 91精品在线免费观看| 国内一区二区视频| 国产精品乱码一区二区三区软件| 99热精品一区二区| 亚洲一区二三区| 日韩欧美一级特黄在线播放| 韩国精品主播一区二区在线观看 | 日韩一区二区高清| 国产成人午夜精品5599| 亚洲视频精选在线| 8x8x8国产精品| 国产精品911| 亚洲精品午夜久久久| 这里是久久伊人| 成人黄色在线网站| 午夜精品福利在线| 国产欧美在线观看一区| 欧美综合欧美视频| 激情久久五月天| 亚洲激情综合网| 日韩美女在线视频| 一本色道久久综合亚洲91| 日韩av中文字幕一区二区三区| 国产亚洲精品bt天堂精选| 色综合天天性综合| 久久91精品国产91久久小草| 亚洲欧洲日韩一区二区三区| 欧美猛男男办公室激情| 国产91富婆露脸刺激对白| 午夜在线成人av| 欧美精彩视频一区二区三区| 欧美日韩国产在线观看| 岛国精品在线播放| 日产欧产美韩系列久久99| 中文字幕高清一区| 日韩精品一区二区三区在线观看| 一本色道综合亚洲| 国产九色sp调教91| 偷窥少妇高潮呻吟av久久免费| 中文在线免费一区三区高中清不卡| 欧美视频你懂的| 91视视频在线观看入口直接观看www | 26uuu久久天堂性欧美| 欧美三片在线视频观看| caoporen国产精品视频| 国产伦精品一区二区三区在线观看 | 久久精品国产亚洲高清剧情介绍| 亚洲国产高清在线| 精品三级av在线| 在线播放91灌醉迷j高跟美女| 99在线视频精品| 国产成人av电影在线观看| 国产一区久久久| 日本亚洲三级在线| 偷窥国产亚洲免费视频| 洋洋av久久久久久久一区| 中文字幕一区二区三区四区| 国产欧美一二三区| 国产无一区二区| 欧美国产精品一区二区三区| ww亚洲ww在线观看国产| 欧美精品一区二区蜜臀亚洲| 日韩一区二区免费在线电影| 日韩你懂的在线播放| 日韩美女视频一区二区在线观看| 欧美一区二区免费观在线| 欧美精品v国产精品v日韩精品| 欧美日韩夫妻久久| 欧美一级专区免费大片| 制服.丝袜.亚洲.另类.中文| 欧美一区中文字幕| 日韩美女一区二区三区| 久久久久久免费网| 欧美国产日韩在线观看| 中文欧美字幕免费| 国产精品久久久久一区二区三区共| 中文字幕不卡在线| 日韩美女精品在线| 亚洲一区在线观看免费观看电影高清 | 午夜一区二区三区在线观看| 亚洲国产精品自拍| 日韩国产精品久久久| 日本亚洲天堂网| 国精产品一区一区三区mba桃花 | 国产精品三级av| 国产精品成人一区二区三区夜夜夜| 国产精品国产自产拍高清av王其| 亚洲天堂网中文字| 水野朝阳av一区二区三区| 久久精品国产第一区二区三区| 国产美女娇喘av呻吟久久| aaa亚洲精品一二三区| 在线观看视频一区二区欧美日韩| 欧美精品三级在线观看| 日韩你懂的电影在线观看| 亚洲国产高清在线| 亚洲图片欧美视频| 国产乱子伦一区二区三区国色天香| 成人综合在线观看| 欧美视频完全免费看| 久久亚洲精精品中文字幕早川悠里| 国产精品乱码久久久久久| 午夜精品久久久久久不卡8050| 国产一区二区三区四| 91成人免费电影| 国产亚洲欧美中文| 亚洲一区av在线| 国产乱码一区二区三区| 欧美三级欧美一级| 亚洲国产高清在线观看视频| 午夜欧美视频在线观看 | 久久99精品久久久久| 99re在线精品| 久久久久久久久久久电影| 亚洲国产精品欧美一二99| 成人精品鲁一区一区二区| 宅男在线国产精品| 国产精品国产三级国产普通话蜜臀 | 精品国产自在久精品国产| 国产精品久久网站| 免费欧美在线视频| 色先锋资源久久综合| 久久久91精品国产一区二区精品 | 在线不卡中文字幕播放| 国产精品久久久久久久久搜平片| 日韩**一区毛片| 欧美性大战久久| 亚洲欧洲精品一区二区三区不卡| 麻豆91在线看| 欧美丰满一区二区免费视频| 亚洲精品国产无套在线观| 成人精品小蝌蚪| 久久色在线视频| 免费久久99精品国产| 色哦色哦哦色天天综合| 国产精品青草久久| 国产精品一二三四| 欧美成人性战久久| 麻豆成人91精品二区三区| 51精品秘密在线观看| 亚洲欧美日韩小说| 99re66热这里只有精品3直播| 久久久久久97三级| 国产成人综合在线播放| 欧美www视频| 麻豆一区二区99久久久久| 91精品国产综合久久国产大片 | 国产传媒日韩欧美成人| 精品1区2区在线观看| 另类小说综合欧美亚洲| 欧美白人最猛性xxxxx69交| 青草av.久久免费一区| 日韩午夜激情免费电影| 丝袜美腿亚洲色图| 欧美一区二区三区精品|