changeset 299:7c239fad0f27

Merge with TAH -----BEGIN PGP SIGNED MESSAGE----- Hash: SHA1 Merge with TAH manifest hash: 5a7d047acc6df6ba03db532657f54c0d38e4cffe -----BEGIN PGP SIGNATURE----- Version: GnuPG v1.4.0 (GNU/Linux) iD4DBQFCqIECywK+sNU5EO8RAg56AJ95hB6uw7Fc55XgwgZls4UUNRt1jACYrkrq V9VJhhv29Fd/LEZy+ydoGQ== =unEK -----END PGP SIGNATURE-----
author mpm@selenic.com
date Thu, 09 Jun 2005 09:48:50 -0800
parents a3d83bf86755 (diff) 91c9fd6a7c70 (current diff)
children d3400605d246 15a9e55e7ea5
files mercurial/hg.py
diffstat 1 files changed, 6 insertions(+), 1 deletions(-) [+]
line wrap: on
line diff
--- a/mercurial/hg.py	Thu Jun 09 09:24:08 2005 +0100
+++ b/mercurial/hg.py	Thu Jun 09 09:48:50 2005 -0800
@@ -19,6 +19,8 @@
     if (s & 0100 != 0) == mode:
         return
     if mode:
+        # Turn on +x for every +r bit when making a file executable
+        # and obey umask.
         umask = os.umask(0)
         os.umask(umask)
         os.chmod(f, s | (s & 0444) >> 2 & ~umask)
@@ -913,8 +915,10 @@
             if f in m2:
                 s = 0
 
+                # are files different?
                 if n != m2[f]:
                     a = ma.get(f, nullid)
+                    # are both different from the ancestor?
                     if n != a and m2[f] != a:
                         self.ui.debug(" %s versions differ, resolve\n" % f)
                         merge[f] = (m1.get(f, nullid), m2[f])
@@ -924,7 +928,8 @@
                         mode = ((a^b) | (a^c)) ^ a
                         merge[f] = (m1.get(f, nullid), m2[f], mode)
                         s = 1
-                    elif m2[f] != a:
+                    # is this an unmodified file or are we clobbering?
+                    elif mw[f] == m1[f] or force:
                         self.ui.debug(" remote %s is newer, get\n" % f)
                         get[f] = m2[f]
                         s = 1