XCode Version 7.1 (7B91b) and TFS 2013 GIT Authentication Failure - xcode

We are working on Xcode Project connected to our local TFS 2013 (Update 3) Server via TFS Provided Git Repository.
When we use older version of Xcode, we are successfully able to check-in the files and perform all other Git operations. We are also able to perform all Git Operations via command line Git.
The trouble is when we use latest version of Xcode - Version 7.1 (7B91b).
On entering valid credentials, we are getting error saying
Authentication failed because the user name or password was incorrect.
The same credentials / configuration work on older version of Xcode and Git Command Line Options.
To add more to the surprises, we are able to connect to github.com successfully.
We are able to reproduce issue on other systems too. Please provide us the best way to resolve this error.

For us it turned out to be because Xcode 7 does not support Windows Authentication. The solution described here solved it for us:
"This happens because XCode 7 doesn't support Windows Authentication.
I don't know why. It seems to be a common problem amongst users
because there are many posts about it in google.
To make it all work you should enable Basic Authentication in your IIS
TFS website on "tfs" virtual folder.
Be careful though because basic authentication sends your credentials
over network as plain text. You definitely must use SSL in this case."
(source)

Related

Does using Visual Studio with TFS require a persistent connection to TFS from VS?

I'm an IT project manager. A developer on my team is complaining that she keeps losing her connection to TFS and that VS requires a constant connection to TFS to work for her. Our CIO is asking me why she doesn't only need a connection to TFS while checking in and out code. I do not know the answer.
Thank you,
Val
TFVC, Team Foundation Version Control, is one of the ways to store sources in Team Foundation Server (TFS), if your TFS serves is 2015 or later, Git is the new default. TFVC is a centralized version control system and assumes your developer has a persistent connection to the server. This is especially true when the workspace of the developer is configured as a "server" workspace, in which case each file system operation is synced to the central server.
In Workspace Type = Server mode your options are:
Use the Go Offline option to temporarily disconnect from the server and work locally in isolation.
Of Change the workspace type to local, which creates a local folder with a compressed copy of each file in the workspace.
This will reduce the number of interactions with the server, making it more pleasant to work when authentication is messed up. But a developer should be checking in and out code at a regular interval, preferably each change that puts the code in a stable state. I'd get VERY frustrated when even something as a checkin/checkout requires an auth prompt.
But your real problem
Is not whether TFS is prompting for auth, it's why the workstation or the server infra isn't (allowing the) caching of the credentials. This can have many causes:
The TFS server isn't configured with a secure connection (https)
The TFS server name doesn't match the server configuration
A proxy server is interfering
A local development proxy (like Fiddler) is turned on and not configured to ignore the TFS server
The Active Directory policy is forcing the credentials to not be stored
The TPM of the computer isn't working well and keeps resetting
There is a VPN interfering
Some endpoint monitoring system is detecting suspicious behavior and is triggering a re-auth
An incorrect credential is cached in the Windows Credential Manager.
The TFS server is in the wrong internet security zone
The Internet security zone settings are configured to not store credentials
...
...
Solve that and the developer will be much happier.
And TFVC is getting old (and most teams have moved to Git)
As others already commented, TFVC is getting old and many development teams have migrated to Git. Git gives developers a local copy of the sources and its history to work with, giving much more power to the developers to work locally without a need to connect to a central server.
If migration isn't an option (yet), tools like git tfs can help a developer to start working in Git locally, while still connecting to a central TFVC server to send the changes to the rest of the team.
But the long-term solution is to upgrade your development tools and get rid of TFVC.
TFS is getting old (is now Azure DevOps Server)
And while you're at it, TFS is getting old. It has been renamed in 2018 and is now called Azure DevOps Server. Azure DevOps Server 2020 is the latest. If you're having issues with TFS, making sure it's up to date and installed on a recent Windows Server version helps too.

How to provide password for Web Deploy on Visual Studio (Mac)

Environment
MacOS 10.14.6 Mojave, Visual Studio For Mac v8.7.9
API service built on .NET Core framework
Issue: I have a .NET Core project that has a web deploy publish profile to deploy updates to the windows server running on EC2 (IIS).
When I was working on windows, I could easily deploy it through the web deploy UI in the visual studio but after I migrated to the macOS, cannot find such option in the visual studio. I can click on the existing web deploy publish option but it always fails because I need to provide the password somewhere. I tried to add <Password> under the pubxml file but it doesn't read as a valid tag.
Existing publish profiles
Error
/usr/local/share/dotnet/sdk/3.1.403/Sdks/Microsoft.NET.Sdk.Publish/targets/PublishTargets/Microsoft.NET.Sdk.Publish.MSDeploy.targets(140,5): error : Web deployment task failed. (Connected to the remote computer using the Web Management Service, but could not authorize. Make sure that you are using the correct user name and password, that the site you are connecting to exists, and that the credentials represent a user who has permissions to access the site. Learn more at: http://go.microsoft.com/fwlink/?LinkId=221672#ERROR_USER_UNAUTHORIZED.)
/usr/local/share/dotnet/sdk/3.1.403/Sdks/Microsoft.NET.Sdk.Publish/targets/PublishTargets/Microsoft.NET.Sdk.Publish.MSDeploy.targets(140,5): error : Make sure the site name, user name, and password are correct. If the issue is not resolved, please contact your local or server administrator.
/usr/local/share/dotnet/sdk/3.1.403/Sdks/Microsoft.NET.Sdk.Publish/targets/PublishTargets/Microsoft.NET.Sdk.Publish.MSDeploy.targets(140,5): error : Error details:
/usr/local/share/dotnet/sdk/3.1.403/Sdks/Microsoft.NET.Sdk.Publish/targets/PublishTargets/Microsoft.NET.Sdk.Publish.MSDeploy.targets(140,5): error : Connected to the remote computer ("ec2-3-92-105-216.compute-1.amazonaws.com") using the Web Management Service, but could not authorize. Make sure that you are using the correct user name and password, that the site you are connecting to exists, and that the credentials represent a user who has permissions to access the site. Learn more at: http://go.microsoft.com/fwlink/?LinkId=221672#ERROR_USER_UNAUTHORIZED.
/usr/local/share/dotnet/sdk/3.1.403/Sdks/Microsoft.NET.Sdk.Publish/targets/PublishTargets/Microsoft.NET.Sdk.Publish.MSDeploy.targets(140,5): error : The remote server returned an error: (401) Unauthorized.
Publish failed to deploy.
Currently I have not yet found the answer for that but I've found a kind of work around.
I publish the project to a folder (be careful with dotnet parameters) and after that manually copy files in "bin/Release/netcoreapp3.1/publish" v. ftp to my server.
In order to save a lot of time, it makes sense to copy only newer / different size files.
Not elegant at all, but this is the way how it works for me now.
Will be happy to hear, someone found a solution how to store the password for webdeploy on MacOS

Connecting to TortoiseSVN repository using AnkhSVN on VS 2012

I am using AnkhSVN v2.5 and TortoiseSVN 1.9.4
I am not able to browse through the directories on my local drive.
Running as administrator didn't help either. However when using VisualSVN the issue is resolved.
Unfortunately, I can only use AnkhSVN, please help.
TortoiseSVN 1.9.x is based on Subversion 1.9. Local repository it creates and that you access via file:/// has FSFS format 7, by default. This FSFS format is new in SVN 1.9; SVN 1.8 and older clients and servers will not be able to read this repository unless you dump-load its data into an clean repository with older format.
AnkhSVN 2.5.x is based on SVN 1.8 (via SharpSVN) and this explains why it is unable to access this repository. The problem is that AnkhSVN does not display full error message in your case. The error could help you find out what's going on. I'm not sure, but I guess that this is the error that AnkhSVN had to display in your case: svnadmin: E125006: 'REPOS\db\format' contains invalid filesystem format option 'addressing physical'.
These steps should help you solve the problem:
Install VisualSVN Server or another Subversion server on Windows and access your repositories via HTTP(S) or svnserve instead of local file:/// access. The repository internals will not matter for your client in this case as the client will communicate with the server, not with the repository directly. This will help you avoid such problems in future.
Update to AnkhSVN 2.6.x. It should be compatible with SVN 1.9.x and Visual Studio 2012. I guess will access that repository without errors. I'm not sure, but I guess that there is no practical reason to use older AnkhSVN builds.

Deploying to Azure from Visual Studio fails when connecting

I have been using Visual Studio to deploy a Web Service to Azure; downloaded my publish profile to enable that and it was working fine for the past few weeks.
Today I tried to deploy an update and now all my deployments fail with the following:
17:25:03 - Preparing deployment for WindowsAzure1 - 25/03/2013 17:24:53 with Subscription ID 'xxx' using Service Management URL 'https://management.core.windows.net/'...
17:25:03 - Connecting...
17:25:04 - Object reference not set to an instance of an object.
17:25:04 - Deployment failed with a fatal error
I'm not sure what's failing here; is this saying it's unable to connect to the Service Management URL?
Last week I installed an SSL certificate on Azure and now I'm not seeing the option to download my publish settings. I know it used to be there but isn't now. Does having an SSL prevent me from somehow connecting to the management page?
Edit
Before leaving work I removed the certificate but when I then checked for the PublishProfile it was still not showing.
The PublishProfile is not available for any of the other users attached to the subscription - so I don't think it's related to my login.
Edit 2
A bit more drastic; I've now tried deleting my storage and service, to start from scratch. I created a new publishsettings file by removing the subscriptions already imported into Visual Studio and then following the link to "Sign in to download credentials". Next I created a new service and storage in Azure and tried to publish but the deployment still fails when connecting with
Object reference not set to an instance of an object
I have no idea what else I could try or what could be wrong, or where to look to find out.
I got the same error today. Why it wasn't working was because I hadn't uploaded the certificate in the managementportal prior to the publish.
After adding the certificate, everything worked just fine!
You can read more here: http://www.amido.co.uk/mark-omahoney/publishing-in-windows-azure-object-reference-not-set-to-an-instance-of-an-object/
The best way to solve above problem is to download the latest PublishSettings from Azure Management Portal and then use it with Visual Studio. This way your connection to Windows Azure Management Portal from local machine will be verified and validated. Once you have the basic connection working then you can publish your application to specific Windows Azure Service.
Also you can log into your Azure Management Portal and remove all old management certificates which are added in previous publishsettings download attempts.
The problem, in my case, was that my solution Cloud project had the thumbprint of the SSL certificate I'd uploaded in its ServiceDefinition.csdef and ServiceConfiguration.Cloud.cscfg. In my first edit I said that I'd removed the certificate from Azure, but hadn't then removed it from the project files; commenting them out allowed me to publish from Visual Studio again.
I'm not sure why this happened though, I had uploaded the certificate to Azure and was able to connect to my service on https in FireFox so the SSL was "working".
Web Deploy v3.6 BETA3 was released that fixes this issue. To resolve this error, you can download the Web Deploy beta and patch your VS2013 installation. http://azure.microsoft.com/blog/2014/08/11/web-deploy-3-6-beta-released/
Test Validate Connection once you installed the above Web Deploy. If it works, then fine else you can modify the proxy settings used by msbuild.exe (msbuild.exe.config) and check you can now publish from behind a proxy with Web Deploy.
Regards,
Logesh Shan
I think the certificate got corrupt. Deleting the solution .suo file and the .ccproj.user file in my Azure project did it for me.

Using git from Package Manager Console in Visual Studio

I'm trying to use git from Package Manager Console window in Visual Studio 2010. And most git commands running as expected, except network-related.
When I tried git push origin master Studio stops responding. The code were pushed to github.com account. I've noticed that ssh-* applications were fired and start hanging in system memory, so I switched to https authentication. But the Studio still not responding (and there is no ssh related stuff in memory).
Does anybody knows how overcome this issue?
Any reason that you can't drop down to MSysGit and use the package manager, along with git, from there? That would be my approach. Plus you get all benefits of bash.
Do you have your github account setted on generic credentials in windows credential manager?
I'm using Git on my Nuget Package Manager for a while now with the credentials saved on windows without any problem. I use also posh-git on my Package Manager that help me a lot.

Resources