Join GitHub today
GitHub is home to over 50 million developers working together to host and review code, manage projects, and build software together.
Sign upSupport hierarchical (with owner) or flat repository directory layout #2430
+291
−72
Conversation
Adds DefaultRepositoryLocation and DefaultRepositoryLayout
Make RepositoryCloneService responsible for storing the default clone path and deciding on the default clone path for a given repository URL.
Factor out RepositoryLayout related logic into RepositoryLayoutUtilities.
Make sure unknown layouts don't throw.
When users clone into a directory with the same name as the repository owner, expect the case of the owner to match. This avoids a false positive when cloning a repository from the "github" organization into a direcotry called "GitHub". This is the default directory that GitHub Desktop uses and could be very anoying.
When remembering the default clone directory, use same capitalization as underlying sile system.
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
jcansdale commentedOct 17, 2019
•
edited
Remember the repository directory and layout after a user clones a repository. This mirrors a similar feature which has been used for a long time in GitHub Desktop. It means users don't need to discover the default clone location directory option.
What this PR does
owner/repositoryName)PackageSettingsGen.ttfileInferring Directory Layout
https://github.com/jcansdale/repo_nameintoC:\Source\GitHub\repo_name, infer a default directory ofC:\Source\GitHuband a flat directory layouthttps://github.com/jcansdale/repo_nameintoC:\Source\GitHub\jcansdale\repo_name, infer a default directory ofC:\Source\GitHuband a directory layout that includes the repositoryownernameorowner/namecomponent of the local path whenever a different repository is selected (or edited)How to test
...
Fixes #2428