Where does VSCODE sync setting feature saves users' setting data? - visual-studio-code

I went going through the following article and I learned about the built-in sync setting feature:
https://code.visualstudio.com/docs/editor/settings-sync
I am not able to find where exactly VSCODE stores my sync data.
Where does VSCODE sync setting feature saves users' setting data?

From documentation, it says:
Selecting the Sign in & Turn on button will ask you to choose between signing in with your Microsoft or GitHub account.
If you are talking about where it saves in cloud, there's no information about that. Remember that vs code it's owned by Microsoft, here's the vscode repository. Couldn't find anything concretely helpful, but i'm sure they have their own databases for this services.

Related

Any chance Github Copilot steals closed source code?

I am pretty sure the answer is "no" or we'd hear about it, but wanted to double-check. Does Github Copilot even send any local code to the backend?
Ideally, I'd want an AI autocompletion tool to share proprietary code within an organization, and only there.
All calculations of GitHub Copilot happen on their Servers, none on your local machine. And if you don't disable telemetry as explained in their FAQ your interaction with Copilot (accepting/rejecting Suggestions) might be used to improve copilot, even tho they say your code will not be used. All this Information can be found in the FAQ: https://github.com/features/copilot (bottom of the page)
There are other competitors to Copilot that offer what you are looking for. Especially AI Learning on proprietary Code for your organization. But I won't disclose any names here since it could be seen as advertisement.

Does GitHub rate-limit access to public "raw" files?

Does GitHub have public access restrictions?
Example file:
https://raw.githubusercontent.com/vuejs/vue/dev/package.json
What will happen if a million users download this file?
This is from a GitHub employee in regard to "raw" file access:
I spoke with our engineering team and learnt that there's a limit of
5000 requests per hour per IP address. Additionally, due to internal
routing and caching, that 5000 figure isn't going to be exact. We may
accept more but it's sometimes possible that we'll accept less too.
As was pointed out to me, if you're at risk of hitting this limit,
then you're probably doing something wrong and there's a better way to
obtain or even store the file.
After 1+ year of waiting, they still haven't confirmed if this is accurate or updated Docs, so I'm guessing routing requests via the GitHub API and using tokens might be more reliable.
Ref: https://github.com/littlebizzy/slickstack/issues/180
Ref: https://github.com/github/docs/issues/8031
I don't think there is any limitations. i have deployed many simple static website on github which gets accessed by a lot lot of users. At times, i have seen it being slow a lil bit(during heavy traffic). But limitations, there is not any limitations.
GitHib definitions for "public" code access are very vague online so hope this helps anyone who was as confused as I was!
GitHub confuses "public" with "open source".
The first is a permission-based access designation and "git" workflow strategy on GitHub, the latter a licensing issue and a broader code access paradigm. But they mix the two together to create a new workflow on their website for how code gets shared using source control git. That confused me.
In general, GitHub "public" repositories means close to the same thing as "open source" in terms of access and use. In general it means any public GitHub repo can be viewed, downloaded, forked, etc. But anything beyond that starting with "write" access on the owners original code base requires the "owner" of the repo to add that person as a "collaborator". I interpret that to mean unlimited and unrestricted access to copy, download, and view your code by any known person, machines, process., etc.!
However, the sample open source licenses (like GNU 3.0, etc.) they recommend you create or use for your projects might legally limit some use of your code. By they are not going to help you enforce or limit that. Once your code is online there is no script or lawyer or enforcing entity that can stop any of that. That is why its called "open source". I have used the GNU "free beer" license for distribution of my personal code before and like it though Ive never seen a need to enforce it as far as limiting much. The main thing it would help with is making sure you remain copyright owner on the code in the USA and in a few other countries....AND....stop big corporate entities from taking your code and claiming copyright, limiting free use, etc.
HOW GITHUB DEFINES "public"
Note: The following applies to GiHub individuals, not organizations or enterprise accounts which have much more granular control over GitHub code projects and repositories.
When you go public on GitHub, meaning you turn your repo to "public" access, you are allowing some form of "open source" or "free" use of the code. In the "git" world this could be many different things as far as both access and use. But in the GitHub world it implies full rights for people or machines to have "read" access by default when your repo is "public". What does that really mean as far as access and use? Well it means:
Anyone or any machine can view the code (they call it "visible") or code files online for free, including manually copy the code in a web browser. That means unlimited views and use of your code.
Anyone or any machine can "download" the code via their code download link. In the GitHub world that means a zip or other compacted wrapper of all the code files into a format you can download in one file. That means unlimited downloads of your code.
Anyone or any machine can "fork" (not "clone") the code. In the GitHub world that means GitHub copies the code and sticks that copy into your GitHub online web account, if you have one. This copy is a "fork" to them, though traditionally that's not what "forked software" means. With this copy a user can then download a "clone" of the forked code to their local machine and start modifying it and push changes to the GitHub forked copy. They cannot do anything with those changes as far as changing your original code base without you setting them up as a "collaborator". But it does includes sharing that with the world as well, which increases views and downloads of your code base to even more people you cannot track! So "public" means all the public clones, mirrors, or forks can be downloaded and shared as well.
BTW...."forking" the code in the GitHub world means copying the code with all the commit and git source history to their GitHub account so later - with more permissions granted by you - they can submit your code back to the original repository code base with a pull request for changes.
This confused me at first, as I thought a "public" repository at GitHub meant anyone can "clone" the original repo to their local box only, which would allow anyone to use a local copy of the GitHub remote repo and pull code updates. In that model they could never do push or pull request updates without additional permissions, which makes sense, but also could never share copies of your code online (unless they explicitly created a new repo at GitHub from your code base).
But that is not what "public" means to them. They want people to directly fork or copy projects into the public site and modify code on their platform using forks. That is the workflow GitHub encourages on "public" projects on their site. This allows any user or machine to make a full copy of everything and do whatever they like to that copy, including sharing and distributing it to others. This is why "public access" does open up your code to lots of crazy things including copies of your code spreading quickly across GitHub with no way to know how many people have truly used it in projects or even care to contribute back to your original.
Personally, at all the companies I have worked at that use Git, I have never seen that type of model for distribution of repositories. We always cloned a master in a development environment and built branches remotely and locally from there. It feels like this was not thought through as it opens up distribution of your code into millions of versions of forks most people never asked for, cannot sync, and will forget about over time.

File encryption in Github

I’m a relative Github newbie. I’m developing a Python app which I’m holding in Github. Currently a private repo but will be public soon. The app holds config data in an ini file which includes various api credentials for the web services the app uses. I want to hold the ini file with the code in Github for ease of version control but need it to be encrypted. Not talking banking level encryption here - just want to avoid unauthorised people using my test web services credentials. What is the best/most transparent way of doing this? My devt environment is MS Visual Studio 2017. I’ve seen a number of plugins that enable encryption/decryption on the fly but don’t know how good/secure they are. Any recommendations?
You aren't in the right direction.
You can't hold both your credentials and who is using them in the same repository.
In this situation, you will always have to decrypt them, and anyone else will be able to put a breakpoint after the decryption and get them. Just as you can.
Of course there will be a case in which you send encrypted keys to another service that decrypt and uses them.
You have two options:
Hold your credentials in environment variables.
Remove your .ini file from git.
Pay attention!
Your credentials is now in the git history!
Even if you solve your problems, anyone can go back in the history and see what checked in today, for example.
There are ways to edit strings in history or to remove a file from history. Look for solutions on the Internet.
You can try the git-secret tool.

Visual Studio Online - Possible to prevent solution downloading?

I'm trying to create a "Read-only" user account within Visual Studio Online. I've created the user and set all permissions to "Deny" except for "View project-level information", which is set at "Allow".
I've noticed that the user still has the ability to download the solution in its entirety and/or by directory. Is it possible to disable/prevent downloading functionality?
Ideally, I'd like only for this user to browse the solution's directory-tree and corresponding file contents.
Thanks for your help
There is a default Readers group (see https://your_account.visualstudio.com/DefaultCollection/your_project/_admin/_security).
Add the user to this group, and do not forget to restore the defaults permissions.
If people can read the files, then you can't prevent them downloading those files. In any case, even if you could, once the source is on screen people can always copy and paste the contents.
The 'Read' permission will only stop them from uploading any changes.

Disable Source tab in Google Code

How to disable source tab in Google Code? I don't want any random users to look at my code.
Before you say that this can't be done, that Google Code is by default open source. Someone managed to do it, somehow.
Edit: Before you downvote me further, take a look at the link I provided. It's possible to do it, despite whatever you want to say. And I want to know how.
I don't want any random users to look at my code.
You can't prevent people from downloading the source code. Google's SVN repositories are open to anonymous browsing and checkout. For example, in the project you cited (the StackOverflow clone), notice that
svn checkout http://cnprog.googlecode.com/svn/trunk/ cnprog-read-only
works just fine for downloading the source.
If you don't want people looking at your source code, don't use a free public-hosting service. Setting up a local svn repository is very easy, in any case: here's how you'd go about setting one up and adding stuff to it.
In your GC page Administer|Tabs then check the hide checkbox next to Source. Your code will still be available via SVN though.
The whole point of Google Code is that it is for open source. That means everyone is allowed to see it. If you don't want people looking at your code, use some closed source hosting site.
You can replace tabs with Wiki pages (for example, to point to your GitHub repository), but you can't prevent access to the Google SVN server.