@@ -694,8 +694,17 @@ func (inst *Installer) Info(repos []*repo.Repo, remote bool) error {
694694// remoteRepoInfo prints information about the specified repo. If `vm` is
695695// non-nil, the output indicates whether a remote update is available.
696696func (inst * Installer ) remoteRepoInfo (r * repo.Repo , vm * deprepo.VersionMap ) {
697+ var prefix_char string
698+
697699 ri := inst .gatherInfo (r , vm )
698- s := fmt .Sprintf (" * %s:" , r .Name ())
700+
701+ if r .IsExternal (r .Path ()) {
702+ prefix_char = "@"
703+ } else {
704+ prefix_char = "*"
705+ }
706+
707+ s := fmt .Sprintf (" %s %s:" , prefix_char , r .Name ())
699708
700709 s += fmt .Sprintf (" %s" , ri .commitHash )
701710 if ri .installedVer == nil {
@@ -720,12 +729,20 @@ func (inst *Installer) remoteRepoInfo(r *repo.Repo, vm *deprepo.VersionMap) {
720729// project itself). It does nothing if the project is not a git repo.
721730func (inst * Installer ) localRepoInfo (r * repo.Repo ) {
722731 ri := inst .gatherInfo (r , nil )
732+ var prefix_char string
733+
723734 if ri .commitHash == "" {
724735 // The project is not a git repo.
725736 return
726737 }
727738
728- s := fmt .Sprintf (" * %s (project):" , r .Name ())
739+ if r .IsExternal (r .Path ()) {
740+ prefix_char = "@"
741+ } else {
742+ prefix_char = "*"
743+ }
744+
745+ s := fmt .Sprintf (" %s %s:" , prefix_char , r .Name ())
729746
730747 s += fmt .Sprintf (" %s" , ri .commitHash )
731748 if ri .dirtyState != "" {
0 commit comments