Allow explicit publication stores in Git metadata
This commit is contained in:
@@ -56,6 +56,23 @@ func normalizeRepositoryRoot(root string) (string, error) {
|
||||
return resolved, nil
|
||||
}
|
||||
|
||||
// MetadataDirectories returns the checkout's private and shared Git directories.
|
||||
func MetadataDirectories(ctx context.Context, directory string) ([]string, error) {
|
||||
var directories []string
|
||||
for _, flag := range []string{"--absolute-git-dir", "--git-common-dir"} {
|
||||
output, err := run(ctx, directory, nil, "rev-parse", "--path-format=absolute", flag)
|
||||
if err != nil {
|
||||
return nil, fmt.Errorf("resolve Git metadata directory: %w", err)
|
||||
}
|
||||
resolved, err := normalizeRepositoryRoot(output)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
directories = append(directories, resolved)
|
||||
}
|
||||
return directories, nil
|
||||
}
|
||||
|
||||
// DiscoverRepositoryRoot finds a containing checkout or confirms standalone use.
|
||||
func DiscoverRepositoryRoot(ctx context.Context, directory string) (string, bool, error) {
|
||||
if directory == "" {
|
||||
|
||||
Reference in New Issue
Block a user