package alternates import ( "fmt" "path/filepath" "strings" ) // Env returns the alternate object directory environment variables. func Env(repoPath, objectDirectory string, alternateObjectDirectories []string) []string { var env []string if objectDirectory != "" { env = append(env, fmt.Sprintf("GIT_OBJECT_DIRECTORY=%s", filepath.Join(repoPath, objectDirectory))) } if len(alternateObjectDirectories) > 0 { var dirsList []string for _, dir := range alternateObjectDirectories { dirsList = append(dirsList, filepath.Join(repoPath, dir)) } env = append(env, fmt.Sprintf("GIT_ALTERNATE_OBJECT_DIRECTORIES=%s", strings.Join(dirsList, ":"))) } return env }