Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Suggestion: Allow upload to repository #413

Open
smbkr opened this issue Oct 11, 2017 · 38 comments
Open

Suggestion: Allow upload to repository #413

smbkr opened this issue Oct 11, 2017 · 38 comments

Comments

@smbkr
Copy link

smbkr commented Oct 11, 2017

Issuehunt badges

By @shanalikhan

Before starting this feature, Settings Sync required code requires refactoring. You can take #937 as a baseline for refactoring to start working.

Following are the feature i see for git sync.

1. It should ask either backup needs to be saved on Github Gist or simple Git Repository.
2. Once the User select the Git Repo, it should setup accordingly.
3. Provide user option to either use Github or GitLab and create a repository from there by their profile tokens.
4. By Download means, user can do `git pull` forcefully. 
5. By Upload means, user can do `git push` forcefully.
6. Allow user to setup branches or profiles like `master` and `office` and keep the selected profile / branch in Sync Global Settings and download/ upload to that branch.
7. When user is switched to Gist, it should not upload the Git folder there.
8. Support Github and Gitlab Enterprise versions
9. Complete New UI with integrated with above features to allow users to change via UI

Originally by @smbkr

It would be useful to be able to upload the settings to a repo instead of a gist, the way that JetBrains IDEs sync, so that the changes could be versioned and rolled back as desired.


IssueHunt Summary

Backers (Total: $200.00)

Become a backer now!

Or submit a pull request to get the deposits!

Tips


IssueHunt has been backed by the following sponsors. Become a sponsor

@shanalikhan
Copy link
Owner

#396 (comment)

Thanks, will look into this later on.

@chris-c-thomas
Copy link

Also like this idea.

@colonelpopcorn
Copy link

colonelpopcorn commented Aug 27, 2018

I thought gists were repos.

Edit: I commented on this issue because I think it could be useful to merge when downloading instead of just clobbering the local configuration. Is this feature on the roadmap for this project? Would you consider a pull request?

@shanalikhan
Copy link
Owner

shanalikhan commented Sep 13, 2018

Is this feature on the roadmap for this project?

Yes, but not in short time. Will work on it later on.

Would you consider a pull request?

Definitely, I will more happy to accept PR. But anyone wants to send PR it would be great to discuss as its currently tightly coupled with GIST logics.

@shanalikhan
Copy link
Owner

shanalikhan commented Sep 13, 2018

Following are the feature i see for git sync.

  1. It should ask either backup needs to be saved on Github Gist or simple Git Repository.
  2. Once the User select the Git Repo, it should setup accordingly.
  3. Provide user option to either use Github or GitLab and create a repository from there by their profile tokens.
  4. By Download means, user can do git pull forcefully.
  5. By Upload means, user can do git push forcefully.
  6. Allow user to setup branches or profiles like master and office and keep the selected profile / branch in Sync Global Settings and download/ upload to that branch.
  7. When user is switched to Gist, it should not upload the Git folder there.
  8. Support Github and Gitlab Enterprise versions

@IssueHuntBot
Copy link

@BoostIO funded this issue with $200. Visit this issue on Issuehunt

@IssueHuntBot
Copy link

@shanalikhan funded this issue with $230. Visit this issue on Issuehunt

@shanalikhan
Copy link
Owner

This feature is funded, anyone is welcome to work and get the money 😄

@IssueHuntBot
Copy link

@mortezaPRK has started working. Visit this issue on Issuehunt

@IssueHuntBot
Copy link

@shanalikhan funded this issue with $130. Visit this issue on Issuehunt

@shanalikhan
Copy link
Owner

@mortezaPRK
any update on this ? i can assist you if need any help

@shanalikhan shanalikhan added this to the Backlog milestone Oct 11, 2018
@mortezaPRK
Copy link

mortezaPRK commented Oct 11, 2018 via email

@shanalikhan
Copy link
Owner

shanalikhan commented Oct 11, 2018

Thats great, make sure you write the test cases.
We need to decouple modules in order to implement repo sync rather then writing complete other logic for it.

It would be great you have send me PR with work in progress so i can see and evaluate it mean while you are doing else once all work is completed it would be difficult to change at end if we found any.

@mortezaPRK
Copy link

mortezaPRK commented Oct 11, 2018 via email

@shanalikhan
Copy link
Owner

I already do about 80% of the work

@mortezaPRK its been almost a month. It would be great if you can send work in progress PR so i can evaluate at least.

Repository owner deleted a comment from IssueHuntBot Oct 16, 2018
@shanalikhan
Copy link
Owner

shanalikhan commented Oct 28, 2018

If i don't get the PR in a week. I will have to assign the paid issue to someone else.

@OrangeDrangon
Copy link

I might be interested to looking into this

Repository owner deleted a comment from IssueHuntBot Nov 4, 2018
@shanalikhan
Copy link
Owner

shanalikhan commented Nov 4, 2018

I might be interested to looking into this

@OrangeDrangon
you can start work by opening the link from issue hunt and assigning the issue hunt ticket to yourself.

Anyone feel free to start working on it, this issue or any other.

Currently the bounties for 4 issues are above 500$.

See the article here.
https://dev.to/shanalikhan/settings-sync-paid-issues---fix--earn---nov-18-1ooj

@wasikuss
Copy link

Is someone working on it? I can finish first version tomorrow. I have support for detection of gist vs repo url. For now only github, but gitlab API is not so hard to integrate.

@shanalikhan
Copy link
Owner

@wasikuss no you can start working on it.

I can finish first version tomorrow. I have support for detection of gist vs repo url

How do you intend to do it, Have a look on steps mentioned in first post - We need to just create git init and stage entire user folder.

@wasikuss
Copy link

git init isn't required. Both Github and Gitlab APIs allows to publish commits with files directly.

@smbkr
Copy link
Author

smbkr commented Nov 13, 2018

We would want to git init locally at least though, right? This would allow rolling back the user config to a specific commit, which is one of the main advantages of putting the config in a repo instead of a gist.

@shanalikhan
Copy link
Owner

The main goal for repository is to create Git Repo, not tightly coupled with github.
Once the repo with git init or creating locally will provide user to connect with any git client.

If you look on the steps, it main focus to create git repository and do pull / push to that repo and then provide some interface options to connect to github.

@wasikuss
Copy link

So sync with local repo only wraps credentials and git push/pull for local repository allowing upload/download sittings but reverting will be done manually?

@shanalikhan ok, using any client/server convince me to use local repo. but I see upload/download actions acts only as alias for regular git commands and it's only for convenience ( to not enter manually to local repo )?

@wasikuss
Copy link

I saw similar behavior while using gists (manual change + download).

@shanalikhan
Copy link
Owner

shanalikhan commented Feb 6, 2019

Issue is available for bounty worth $200.

https://issuehunt.io/repos/47984369/issues/413

Repository owner deleted a comment from IssueHuntBot Feb 20, 2019
Repository owner deleted a comment from IssueHuntBot Feb 20, 2019
@shanalikhan shanalikhan pinned this issue Feb 22, 2019
@knyhle
Copy link
Contributor

knyhle commented Mar 25, 2019

If nobody’s working on this, I’ll start on it when I get home in a few hours.

@benkoska
Copy link

benkoska commented Sep 8, 2019

Is this still relevant. I can do this!

@shanalikhan
Copy link
Owner

Is this still relevant. I can do this!

@DeveloperBen

To implement this feature, we need to Refactor the complete extension. @arnohovhannisyan and other users have attempted the refactoring thing before.

You can use this PR for reference.
#937

@vladfrangu
Copy link

Hi! I used this plugin previously, and I wondered if you still need help with this, or if someone is working on it already! I'd love helping out! 😄

@shanalikhan
Copy link
Owner

OPEN FOR PR!

@AndersHogqvist
Copy link

This feature would be awesome. Our development environment doesn't have any Internet connection and we have a self-hosted BitBucket server without any snippet add-on.

@Diogo-Rossi
Copy link

Diogo-Rossi commented Aug 6, 2022

I've made a trick workaround to get this, using a python script to sync extensions
This workaround uses no extension at all, but requires python, git and code (vscode cli)
It also may require the bash shell or the powershell as default terminal. I'm sharing if someone wants to use it, in this gist

@kiprasmel
Copy link

FWIW, your gist is a fully-fledged repository.
You can clone it from the URL, e.g.

git clone https://gist.github.com/kiprasmel/de9160a0602463fb752f2d84d7aa4fd8

and from here, you can do all your standard git stuff - amend, reset, force push, etc.

e.g. if i sometimes override between syncs, i cd into the repo, pull, reset, and undo the deletions, then commit & push to the gist, and then sync the gist back into vscode. cheers.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests