mercurial/hg.py
changeset 901 120cba94d5aa
parent 900 ba8cf1f2210c
child 903 71be6dd282d1
equal deleted inserted replaced
900:ba8cf1f2210c 901:120cba94d5aa
   873             commit = c + a
   873             commit = c + a
   874             remove = d
   874             remove = d
   875 
   875 
   876         if not commit and not remove and not force:
   876         if not commit and not remove and not force:
   877             self.ui.status("nothing changed\n")
   877             self.ui.status("nothing changed\n")
   878             return
   878             return None
   879 
   879 
   880         if not self.hook("precommit"):
   880         if not self.hook("precommit"):
   881             return 1
   881             return None
   882 
   882 
   883         p1, p2 = self.dirstate.parents()
   883         p1, p2 = self.dirstate.parents()
   884         c1 = self.changelog.read(p1)
   884         c1 = self.changelog.read(p1)
   885         c2 = self.changelog.read(p2)
   885         c2 = self.changelog.read(p2)
   886         m1 = self.manifest.read(c1[0])
   886         m1 = self.manifest.read(c1[0])
   930             edittext = "\n" + "HG: manifest hash %s\n" % hex(mn)
   930             edittext = "\n" + "HG: manifest hash %s\n" % hex(mn)
   931             edittext += "".join(["HG: changed %s\n" % f for f in new])
   931             edittext += "".join(["HG: changed %s\n" % f for f in new])
   932             edittext += "".join(["HG: removed %s\n" % f for f in remove])
   932             edittext += "".join(["HG: removed %s\n" % f for f in remove])
   933             edittext = self.ui.edit(edittext)
   933             edittext = self.ui.edit(edittext)
   934             if not edittext.rstrip():
   934             if not edittext.rstrip():
   935                 return 1
   935                 return None
   936             text = edittext
   936             text = edittext
   937 
   937 
   938         user = user or self.ui.username()
   938         user = user or self.ui.username()
   939         n = self.changelog.add(mn, new, text, tr, p1, p2, user, date)
   939         n = self.changelog.add(mn, new, text, tr, p1, p2, user, date)
   940 
       
   941         tr.close()
   940         tr.close()
   942 
   941 
   943         self.dirstate.setparents(n)
   942         self.dirstate.setparents(n)
   944         self.dirstate.update(new, "n")
   943         self.dirstate.update(new, "n")
   945         self.dirstate.forget(remove)
   944         self.dirstate.forget(remove)
   946 
   945 
   947         if not self.hook("commit", node=hex(n)):
   946         if not self.hook("commit", node=hex(n)):
   948             return 1
   947             return None
       
   948         return n
   949 
   949 
   950     def walk(self, node = None, files = [], match = util.always):
   950     def walk(self, node = None, files = [], match = util.always):
   951         if node:
   951         if node:
   952             for fn in self.manifest.read(self.changelog.read(node)[0]):
   952             for fn in self.manifest.read(self.changelog.read(node)[0]):
   953                 if match(fn): yield 'm', fn
   953                 if match(fn): yield 'm', fn