diff --git a/cfg/config.go b/cfg/config.go
index 8e3e107..0b8b91a 100644
--- a/cfg/config.go
+++ b/cfg/config.go
@@ -6,6 +6,7 @@
 	"reflect"
 	"strings"
 
+	"github.com/Masterminds/glide/msg"
 	"github.com/Masterminds/glide/util"
 	"github.com/Masterminds/vcs"
 	"gopkg.in/yaml.v2"
@@ -293,8 +294,11 @@
 
 	// Get the root name for the package
 	o := d.Name
+	msg.Debug("before name: %s", o)
 	d.Name = util.GetRootFromPackage(d.Name)
+	msg.Debug("after name: %s", d.Name)
 	subpkg := strings.TrimPrefix(o, d.Name)
+	msg.Debug("subpkg: %s", subpkg)
 	if len(subpkg) > 0 && subpkg != "/" {
 		d.Subpackages = append(d.Subpackages, strings.TrimPrefix(subpkg, "/"))
 	}
diff --git a/cmd/util.go b/cmd/util.go
index 0ae85dc..8083845 100644
--- a/cmd/util.go
+++ b/cmd/util.go
@@ -10,6 +10,7 @@
 	"strings"
 
 	"github.com/Masterminds/cookoo"
+	"github.com/Masterminds/glide/msg"
 )
 
 // Quiet, when set to true, can suppress Info and Debug messages.
@@ -21,6 +22,7 @@
 func BeQuiet(c cookoo.Context, p *cookoo.Params) (interface{}, cookoo.Interrupt) {
 	Quiet = p.Get("quiet", false).(bool)
 	IsDebugging = p.Get("debug", false).(bool)
+	msg.IsDebugging = IsDebugging
 	return Quiet, nil
 }
 
diff --git a/util/util.go b/util/util.go
index fb8267a..c17c03c 100644
--- a/util/util.go
+++ b/util/util.go
@@ -12,6 +12,7 @@
 	"regexp"
 	"strings"
 
+	"github.com/Masterminds/glide/msg"
 	"github.com/Masterminds/vcs"
 )
 
@@ -35,6 +36,7 @@
 		}
 
 		if m[1] != "" {
+			msg.Debug("GetRootFromPackage (regex): %s", m[1])
 			return m[1]
 		}
 	}
@@ -42,7 +44,7 @@
 	// There are cases where a package uses the special go get magic for
 	// redirects. If we've not discovered the location already try that.
 	pkg = getRootFromGoGet(pkg)
-
+	msg.Debug("GetRootFromPackage (getRootFromGoGet): %s", pkg)
 	return pkg
 }
 
@@ -150,6 +152,7 @@
 				continue
 			} else {
 				u = f[0]
+				msg.Debug("go-import: %s", u)
 				return
 			}
 
