From 24a7c0f63d892483c02ff98374f4fb2e03fc0654 Mon Sep 17 00:00:00 2001
From: Fumiya Nakamura <nakamurafumiya003@gmail.com>
Date: Fri, 15 Feb 2013 04:51:01 -0800
Subject: [PATCH 1/2] Fix file_name for archive

---
 app/models/repository.rb | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/app/models/repository.rb b/app/models/repository.rb
index 6bfdf2255f2..9032905ce9a 100644
--- a/app/models/repository.rb
+++ b/app/models/repository.rb
@@ -151,7 +151,7 @@ class Repository
     return nil unless commit
 
     # Build file path
-    file_name = self.path_with_namespace + "-" + commit.id.to_s + ".tar.gz"
+    file_name = self.path_with_namespace.gsub("/","_") + "-" + commit.id.to_s + ".tar.gz"
     storage_path = Rails.root.join("tmp", "repositories")
     file_path = File.join(storage_path, file_name)
 
-- 
GitLab


From dc1d4eab22658b276214912bdab4155111299355 Mon Sep 17 00:00:00 2001
From: Fumiya Nakamura <nakamurafumiya003@gmail.com>
Date: Fri, 15 Feb 2013 06:03:22 -0800
Subject: [PATCH 2/2] Fix repository.rb archive

---
 app/models/repository.rb | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/app/models/repository.rb b/app/models/repository.rb
index 9032905ce9a..f9db6342603 100644
--- a/app/models/repository.rb
+++ b/app/models/repository.rb
@@ -153,14 +153,14 @@ class Repository
     # Build file path
     file_name = self.path_with_namespace.gsub("/","_") + "-" + commit.id.to_s + ".tar.gz"
     storage_path = Rails.root.join("tmp", "repositories")
-    file_path = File.join(storage_path, file_name)
+    file_path = File.join(storage_path, self.path_with_namespace, file_name)
 
     # Put files into a directory before archiving
     prefix = self.path_with_namespace + "/"
 
     # Create file if not exists
     unless File.exists?(file_path)
-      FileUtils.mkdir_p storage_path
+      FileUtils.mkdir_p File.dirname(file_path)
       file = self.repo.archive_to_file(ref, prefix,  file_path)
     end
 
-- 
GitLab