mercurial/commands.py
changeset 1435 22b44fd9a166
parent 1431 16a5d349963c
child 1436 db6d7b4005ba
equal deleted inserted replaced
1434:696851b1bba9 1435:22b44fd9a166
  1212     o = repo.findincoming(other)
  1212     o = repo.findincoming(other)
  1213     if not o:
  1213     if not o:
  1214         return
  1214         return
  1215     o = other.newer(o)
  1215     o = other.newer(o)
  1216     for n in o:
  1216     for n in o:
       
  1217         parents = [p for p in other.changelog.parents(n) if p != nullid]
       
  1218         if opts['no_merges'] and len(parents) == 2:
       
  1219             continue
  1217         show_changeset(ui, other, changenode=n)
  1220         show_changeset(ui, other, changenode=n)
  1218         if opts['patch']:
  1221         if opts['patch']:
  1219             prev = other.changelog.parents(n)[0]
  1222             prev = (parents and parents[0]) or nullid
  1220             dodiff(ui, ui, other, prev, n)
  1223             dodiff(ui, ui, other, prev, n)
  1221             ui.write("\n")
  1224             ui.write("\n")
  1222 
  1225 
  1223 def init(ui, dest="."):
  1226 def init(ui, dest="."):
  1224     """create a new repository in the given directory"""
  1227     """create a new repository in the given directory"""
  1271     for st, rev, fns in changeiter:
  1274     for st, rev, fns in changeiter:
  1272         if st == 'window':
  1275         if st == 'window':
  1273             du = dui(ui)
  1276             du = dui(ui)
  1274         elif st == 'add':
  1277         elif st == 'add':
  1275             du.bump(rev)
  1278             du.bump(rev)
       
  1279             changenode = repo.changelog.node(rev)
       
  1280             parents = [p for p in repo.changelog.parents(changenode)
       
  1281                        if p != nullid]
       
  1282             if opts['no_merges'] and len(parents) == 2:
       
  1283                  continue
       
  1284 
  1276             br = None
  1285             br = None
  1277             if opts['keyword']:
  1286             if opts['keyword']:
  1278                 changes = repo.changelog.read(repo.changelog.node(rev))
  1287                 changes = repo.changelog.read(repo.changelog.node(rev))
  1279                 miss = 0
  1288                 miss = 0
  1280                 for k in [kw.lower() for kw in opts['keyword']]:
  1289                 for k in [kw.lower() for kw in opts['keyword']]:
  1289             if opts['branch']:
  1298             if opts['branch']:
  1290                 br = repo.branchlookup([repo.changelog.node(rev)])
  1299                 br = repo.branchlookup([repo.changelog.node(rev)])
  1291 
  1300 
  1292             show_changeset(du, repo, rev, brinfo=br)
  1301             show_changeset(du, repo, rev, brinfo=br)
  1293             if opts['patch']:
  1302             if opts['patch']:
  1294                 changenode = repo.changelog.node(rev)
  1303                 prev = (parents and parents[0]) or nullid
  1295                 prev, other = repo.changelog.parents(changenode)
       
  1296                 dodiff(du, du, repo, prev, changenode, fns)
  1304                 dodiff(du, du, repo, prev, changenode, fns)
  1297                 du.write("\n\n")
  1305                 du.write("\n\n")
  1298         elif st == 'iter':
  1306         elif st == 'iter':
  1299             for args in du.hunk[rev]:
  1307             for args in du.hunk[rev]:
  1300                 ui.write(*args)
  1308                 ui.write(*args)
  1324     dest = ui.expandpath(dest)
  1332     dest = ui.expandpath(dest)
  1325     other = hg.repository(ui, dest)
  1333     other = hg.repository(ui, dest)
  1326     o = repo.findoutgoing(other)
  1334     o = repo.findoutgoing(other)
  1327     o = repo.newer(o)
  1335     o = repo.newer(o)
  1328     for n in o:
  1336     for n in o:
       
  1337         parents = [p for p in repo.changelog.parents(n) if p != nullid]
       
  1338         if opts['no_merges'] and len(parents) == 2:
       
  1339             continue
  1329         show_changeset(ui, repo, changenode=n)
  1340         show_changeset(ui, repo, changenode=n)
  1330         if opts['patch']:
  1341         if opts['patch']:
  1331             prev = repo.changelog.parents(n)[0]
  1342             prev = (parents and parents[0]) or nullid
  1332             dodiff(ui, ui, repo, prev, n)
  1343             dodiff(ui, ui, repo, prev, n)
  1333             ui.write("\n")
  1344             ui.write("\n")
  1334 
  1345 
  1335 def parents(ui, repo, rev=None):
  1346 def parents(ui, repo, rev=None):
  1336     """show the parents of the working dir or revision"""
  1347     """show the parents of the working dir or revision"""
  1870          [('p', 'strip', 1, _('path strip')),
  1881          [('p', 'strip', 1, _('path strip')),
  1871           ('f', 'force', None, _('skip check for outstanding changes')),
  1882           ('f', 'force', None, _('skip check for outstanding changes')),
  1872           ('b', 'base', "", _('base path'))],
  1883           ('b', 'base', "", _('base path'))],
  1873          _("hg import [-f] [-p NUM] [-b BASE] PATCH...")),
  1884          _("hg import [-f] [-p NUM] [-b BASE] PATCH...")),
  1874     "incoming|in": (incoming,
  1885     "incoming|in": (incoming,
  1875          [('p', 'patch', None, _('show patch'))],
  1886          [('M', 'no-merges', None, _("do not show merges")),
       
  1887           ('p', 'patch', None, _('show patch'))],
  1876          _('hg incoming [-p] [SOURCE]')),
  1888          _('hg incoming [-p] [SOURCE]')),
  1877     "^init": (init, [], _('hg init [DEST]')),
  1889     "^init": (init, [], _('hg init [DEST]')),
  1878     "locate":
  1890     "locate":
  1879         (locate,
  1891         (locate,
  1880          [('r', 'rev', '', _('revision')),
  1892          [('r', 'rev', '', _('revision')),
  1888          [('I', 'include', [], _('include path in search')),
  1900          [('I', 'include', [], _('include path in search')),
  1889           ('X', 'exclude', [], _('exclude path from search')),
  1901           ('X', 'exclude', [], _('exclude path from search')),
  1890           ('b', 'branch', None, _('show branches')),
  1902           ('b', 'branch', None, _('show branches')),
  1891           ('k', 'keyword', [], _('search for a keyword')),
  1903           ('k', 'keyword', [], _('search for a keyword')),
  1892           ('r', 'rev', [], _('revision')),
  1904           ('r', 'rev', [], _('revision')),
       
  1905           ('M', 'no-merges', None, _("do not show merges")),
  1893           ('p', 'patch', None, _('show patch'))],
  1906           ('p', 'patch', None, _('show patch'))],
  1894          _('hg log [-I] [-X] [-r REV]... [-p] [FILE]')),
  1907          _('hg log [-I] [-X] [-r REV]... [-p] [FILE]')),
  1895     "manifest": (manifest, [], _('hg manifest [REV]')),
  1908     "manifest": (manifest, [], _('hg manifest [REV]')),
  1896     "outgoing|out": (outgoing,
  1909     "outgoing|out": (outgoing,
  1897          [('p', 'patch', None, _('show patch'))],
  1910          [('M', 'no-merges', None, _("do not show merges")),
       
  1911           ('p', 'patch', None, _('show patch'))],
  1898          _('hg outgoing [-p] [DEST]')),
  1912          _('hg outgoing [-p] [DEST]')),
  1899     "parents": (parents, [], _('hg parents [REV]')),
  1913     "parents": (parents, [], _('hg parents [REV]')),
  1900     "paths": (paths, [], _('hg paths [NAME]')),
  1914     "paths": (paths, [], _('hg paths [NAME]')),
  1901     "^pull":
  1915     "^pull":
  1902         (pull,
  1916         (pull,