@@ -846,7 +846,33 @@ func (s *RepositorySuite) TestCloneDetachedHEAD(c *C) {
846846 objects , err := r .Objects ()
847847 c .Assert (err , IsNil )
848848 objects .ForEach (func (object.Object ) error { count ++ ; return nil })
849- c .Assert (count , Equals , 31 )
849+ c .Assert (count , Equals , 28 )
850+ }
851+
852+ func (s * RepositorySuite ) TestCloneDetachedHEADAndSingle (c * C ) {
853+ r , _ := Init (memory .NewStorage (), nil )
854+ err := r .clone (context .Background (), & CloneOptions {
855+ URL : s .GetBasicLocalRepositoryURL (),
856+ ReferenceName : plumbing .ReferenceName ("refs/tags/v1.0.0" ),
857+ SingleBranch : true ,
858+ })
859+ c .Assert (err , IsNil )
860+
861+ cfg , err := r .Config ()
862+ c .Assert (err , IsNil )
863+ c .Assert (cfg .Branches , HasLen , 0 )
864+
865+ head , err := r .Reference (plumbing .HEAD , false )
866+ c .Assert (err , IsNil )
867+ c .Assert (head , NotNil )
868+ c .Assert (head .Type (), Equals , plumbing .HashReference )
869+ c .Assert (head .Hash ().String (), Equals , "6ecf0ef2c2dffb796033e5a02219af86ec6584e5" )
870+
871+ count := 0
872+ objects , err := r .Objects ()
873+ c .Assert (err , IsNil )
874+ objects .ForEach (func (object.Object ) error { count ++ ; return nil })
875+ c .Assert (count , Equals , 28 )
850876}
851877
852878func (s * RepositorySuite ) TestCloneDetachedHEADAndShallow (c * C ) {
0 commit comments