code: func (r ReferenceStorage) Commit() error {
  	for name := range r.deleted {
  		if err := r.ReferenceStorer.RemoveReference(name); err != nil {
  			return err
  		}
  	}
  
  	iter, err := r.temporal.IterReferences()
  	if err != nil {
  		return err
  	}
  
  	return iter.ForEach(func(ref *plumbing.Reference) error {
  		return r.ReferenceStorer.SetReference(ref)
  	})
  }
docs: // Commit it copies the reference information of the temporal storage into the
  // base storage.