opista / svn-blamer

📝 SVN Blamer - A VS Code extension to visually SVN-blame your code
https://marketplace.visualstudio.com/items?itemName=beaugust.blamer-vs
MIT License
18 stars 11 forks source link

No more credentials or we tried too many times #5

Open bardware opened 6 years ago

bardware commented 6 years ago

Hi,

I install your plugin and start blaming via command palette and get the message: No more credentials or we tried too many times. Authentication failed Do I have to be authorized at the repo? Can I set my passowrd somewhere at the plugin. Will it ask for the password? What SVN does the plugin use?

To be honest, I have TortoiseSVN and SliSkVN installed and available on the %PATH%. When I call svn on the command line TortoiseSVN is being invoked. In the bultin Terminal in VSCode I called svn info --show-item revision http://myhost/svn/myproject/trunk and was asked for the password. Then your plugin worked nicely.

metacurb commented 6 years ago

Under the hood it fires these commands (which I wrote using the TortoiseSVN documentation):

To retrieve revisions against each line svn blame -x "-w --ignore-eol-style" <FILE_PATH>

To grab the commit information against a specific revision svn log -r<REVISION_NUMBER> <FILE_PATH>

Are you on Windows? Do you normally enter your credentials every time you use SVN?

I'll take a look into this, but I'm struggling to replicate.

tkharris commented 5 years ago

I have the same problem under ubuntu. And the same workaround worked as with @bardware. I open the vscode terminal and do an svn info that touches the repo. It prompts me for a username and password and after that svn blame works.

siraykut commented 5 years ago

I have same problem under MobaExterm tool. same workaround worked as with @bardware . Thanks.

bodydisplaynone commented 4 years ago

+1 I have the same problem on Windows 10 Pro, VS code 1.5, blamer 0.5.2. My credentials are correct. If I open a terminal and write "svn info" it gives me the info. Did not ask for the credentials, just refuses to connect every single time.

bodydisplaynone commented 4 years ago

Oh ok. So I have to write the full command above mentioned by the op. Entering just "svn info" was not enough.

jstolte commented 3 years ago

Pretty sure this used to work for me when I was in the office and working on Ubuntu 18.04.5 LTS distribution of Linux. Now, with COVID, I am working from home on a Windows 10 laptop. I connect to the office network via a VPN. I am using VSCode 1.52.1... and I connect up to my linux box in the office using the Remote - SSH plugin which is where my workspace/file physical reside... (I do not do a local Window 10 checkout... the build tool chain that we use needs a Linux environment to properly build and the target embedded controller is also on the VPN in my work office... so if I edited files locally, I would need to checkin from Windows, PuTTy or Terminal into the Linux box, update checkout on Linux box and then launch the build process from Linux terminal connection). Using VSCode and Remote - SSH plugin, I can setup my VSCode workspace to directly edit the files checked out on my remote Linux box... then in the Terminal built into VSCode I can launch the build system which builds the application on the Linux box and pushes it over to an embedded controller that is also on the work VPN in my office at work. This allows me to verify that my updates work before checking code into SVN repository.) The SVN plugin by Chris Johnston is working fine as I can update/commit files to the SVN repository that are checked out on my Linux box. The workaround mentioned above does NOT appear to work in my setup. Yes, it prompts me for credentials... but trying "blame" after successfully running "svn info --show-item revision http ://xx/xx/xx/xx/xx/xx/xx.xx" still generates the following error message in VSCode... svn: E170013: Unable to connect to a repository at URL 'http ://xx/xx/xx/xx/xx/xx/xx.xx' svn: E215004: No more credentials or we tried too many times. Authentication failed

xsautejeau commented 1 year ago

Hello,

I am accessing a Centos machine via SSH from a windows setup.

Extension and authentication used to work just fine until I had to modify my SVN config on the Centos machine so as to use gnome keyring for authentication as per company policy.

Then the extension stopped working and I started getting E170013 errors when using the remote setup (windows) from home. The extension is working OK when using the local setup (Centos) at the office.

I am also using chris johnston SVN extension and it is not giving me such errors.

The related issue in the SVN extension is https://github.com/JohnstonCode/svn-scm/issues/188

Hope this helps

vmesgmv commented 4 months ago

Hello all,

Let me describe my development environment:

I've tried the "svn info" commands as described in previous posts: from VSC terminal, from Win terminal, directly on the Linux device (connecting with Moba) and any other many combinations...

SVN Blamer output doesn't provide too much information, just these kind of entries: 2024-06-26 09:41:38.565 [error] Failed to blame file {"err":{}} after each file it tries to blame.

Any suggestion?

Thanks!

Austinhs commented 2 months ago

On Ubuntu and probably many others the fix/workaround to this problem is fairly simple actually:

@vmesgmv @xsautejeau @guluguru @jstolte @bodydisplaynone

vmesgmv commented 2 months ago

Many Thanks @Austinhs !!! I confirm that it works, but just another question. I have to write the svn in plain text in that option (what I don't like too much). Is there any environment variable to use in that field? "svn --username= --password=

Ideally I would like to have this: svn --username= --password=

Austinhs commented 2 months ago

Many Thanks @Austinhs !!! I confirm that it works, but just another question. I have to write the svn in plain text in that option (what I don't like too much). Is there any environment variable to use in that field? "svn --username= --password=

Ideally I would like to have this: svn --username= --password=

I believe you would need to add these additional flags to make that work (stackoverflow): --non-interactive --no-auth-cache --username XXXX --password YYYY

Another wild idea if that does not work would be creating some bash function you can call that swaps out auth-keys or maybe even changes users for the svn execution since another user might have the key cached... but thats probably a bit much hopefully the above works :smile: