From 5de74551ace7b6df9fdb2a3c8aa30c836d693728 Mon Sep 17 00:00:00 2001
From: Lin Jen-Shin <godfat@godfat.org>
Date: Tue, 15 Nov 2016 06:55:54 +0800
Subject: [PATCH] Branch could be nil if it's an empty repo

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

diff --git a/app/models/repository.rb b/app/models/repository.rb
index 89293fa8b4d..c4bdc84348e 100644
--- a/app/models/repository.rb
+++ b/app/models/repository.rb
@@ -901,10 +901,15 @@ class Repository
       branch,
       source_branch: source_branch) do |ref|
       index = rugged.index
-
-      last_commit = find_branch(ref).dereferenced_target
-      index.read_tree(last_commit.raw_commit.tree)
-      parents = [last_commit.sha]
+      branch_commit = find_branch(ref)
+
+      parents = if branch_commit
+                  last_commit = branch_commit.dereferenced_target
+                  index.read_tree(last_commit.raw_commit.tree)
+                  [last_commit.sha]
+                else
+                  []
+                end
 
       actions.each do |action|
         case action[:action]
-- 
GitLab