This repository was archived by the owner on Jun 21, 2023. It is now read-only.
-
Notifications
You must be signed in to change notification settings - Fork 1.2k
Unify the repository list and URL tabs in the clone dialog #2197
Merged
Conversation
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
If user enters a valid repository URL, expose it as the selected repository.
Search for URLs that contain the Filter rather than requiring an exact match.
15 tasks
Add IRepositoryCloneViewModel.Url property. Select the tab corresponding to the host. Don't select a tab when host doesn't match.
This looks good to me functionality wise. ✅ |
StanleyGoldman
approved these changes
Feb 1, 2019
Looks good. What about that last todo? |
We will also need to update the documentation for this unified dialog here: https://github.com/github/VisualStudio/blob/master/docs/using/cloning-a-repository-to-visual-studio.md#clone-repositories. I'm happy to do that. |
Sign up for free
to subscribe to this conversation on GitHub.
Already have an account?
Sign in.
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.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
It appears users rarely change the tab they're initially presented with. This is despite the fact that the different tabs are useful in different circumstances. If the user is cloning a repository they own or have contributed to, the GitHub/GitHub Enterprise tab makes sense. If they're cloning a public repository owned by a different user, it would be necessary to use the URL tab.
What this PR does
This PR combines the repository list and URL tabs so that a user can clone any repository without needing to understand the difference between tabs.
/
or.git
URL
tabTo do
/
or.git
when searchingHow to test
Finding a repository by its URL
File > Open > Open from GitHub...
Search or enter a URL
Your repositories
sectionCloning a public repository by its URL
File > Open > Open from GitHub...
Search or enter a URL
Clone
button is clickableRe-cloning a repository
File > Open StartPage
https://
link underRecent
Search or enter a URL
boxCloning a GitHub Enterprise repository by its URL
File > Open > Open from GitHub...
Search or enter a URL
boxWhat this PR doesn't do
What if the user has already logged into a GitHub/Enterprise account, but not the one they they want to clone from? At the moment they would need to open
Team Explorer - Connect
and sign out/sign in to the correct account. This isn't very discoverable.This is out of scope for this PR since it also wasn't possible with the previous implementation. Should we offer an explicit login/sign out option in another PR?
It would be nice if we could automatically check that a repository exists when the user enters a URL. The repository could be automatically added to a section called something like
Public repositories
.Alternatively, we could automatically fire off a search and supplement the repository list when the user starts entering a query. This would allow users to find public repositories they about without visiting github.com.
We can easily see if a repository has been starred, but we don't currently surface this information. This is likely a useful signal when scanning for a repository in a potentially long list.
Fixes #2187