You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@allura.apache.org by br...@apache.org on 2012/09/26 18:19:46 UTC

[3/9] git commit: [#2809] Added explicit list of internal Hg files to skip during hook copy

[#2809] Added explicit list of internal Hg files to skip during hook copy

Signed-off-by: Cory Johns <jo...@geek.net>


Project: http://git-wip-us.apache.org/repos/asf/incubator-allura/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-allura/commit/8e34a3dd
Tree: http://git-wip-us.apache.org/repos/asf/incubator-allura/tree/8e34a3dd
Diff: http://git-wip-us.apache.org/repos/asf/incubator-allura/diff/8e34a3dd

Branch: refs/heads/master
Commit: 8e34a3dd3f2dc5b56d3cf6ecf4d3d98c57bcda24
Parents: d80a195
Author: Cory Johns <jo...@geek.net>
Authored: Fri Sep 21 14:58:59 2012 +0000
Committer: Dave Brondsema <db...@geek.net>
Committed: Wed Sep 26 16:18:58 2012 +0000

----------------------------------------------------------------------
 ForgeHg/forgehg/model/hg.py                    |   24 ++++++++++++++++--
 ForgeHg/forgehg/tests/model/test_repository.py |    1 +
 2 files changed, 22 insertions(+), 3 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/incubator-allura/blob/8e34a3dd/ForgeHg/forgehg/model/hg.py
----------------------------------------------------------------------
diff --git a/ForgeHg/forgehg/model/hg.py b/ForgeHg/forgehg/model/hg.py
index 9d28377..a3e18ee 100644
--- a/ForgeHg/forgehg/model/hg.py
+++ b/ForgeHg/forgehg/model/hg.py
@@ -49,6 +49,26 @@ class Repository(M.Repository):
 
 class HgImplementation(M.RepositoryImplementation):
     re_hg_user = re.compile('(.*) <(.*)>')
+    skip_internal_files = set([
+            '00changelog.i',
+            'requires',
+            'branch',
+            'branch.cache',
+            'dirstate',
+            'inotify.sock',
+            'patches',
+            'wlock',
+            'undo.dirstate',
+            'undo.branch',
+            'journal.dirstate',
+            'journal.branch',
+            'store',
+            'lock',
+            'journal',
+            'undo',
+            'fncache',
+            'data',
+        ])
 
     def __init__(self, repo):
         self._repo = repo
@@ -264,9 +284,7 @@ class HgImplementation(M.RepositoryImplementation):
             source = os.path.join(source_path, '.hg', name)
             target = os.path.join(
                     self._repo.full_fs_path, '.hg', os.path.basename(source))
-            if os.path.exists(target):
-                # skip existing files, presumably internal
-                # hg files that would be the same anyway
+            if name in self.skip_internal_files:
                 continue
             if os.path.isdir(source):
                 shutil.copytree(source, target)

http://git-wip-us.apache.org/repos/asf/incubator-allura/blob/8e34a3dd/ForgeHg/forgehg/tests/model/test_repository.py
----------------------------------------------------------------------
diff --git a/ForgeHg/forgehg/tests/model/test_repository.py b/ForgeHg/forgehg/tests/model/test_repository.py
index e0e2ebf..f3154a3 100644
--- a/ForgeHg/forgehg/tests/model/test_repository.py
+++ b/ForgeHg/forgehg/tests/model/test_repository.py
@@ -150,6 +150,7 @@ class TestHgRepo(unittest.TestCase, RepoImplTestBase):
         self.assertEquals(cp.get('hooks', 'changegroup.sourceforge'), 'curl -s http://localhost//auth/refresh_repo/p/test/src-hg/')
         self.assertEquals(cp.get('hooks', 'changegroup.external'), '.hg/external-changegroup')
         self.assertEquals(cp.get('hooks', 'commit'), 'python:hgext.notify.hook')
+        assert not os.path.exists('/tmp/testrepo.hg/.hg/undo.branch')
         shutil.rmtree(dirname)
 
     def test_index(self):