Standard Practice to Create Repository

A standard practice to create repository should always be;

  1. Main branch should always have a .gitignore and readme file.
  2. Create a working branch from main
  3. Develop feature in your working branch
  4. Before committing, do a merge from remote main to working branch and resolve any conflicts in working branch. This will help you to get team changes merged into your working branch.
  5. Commit your changes. Create a PR and you are done.

I hope this will help.

How to add gitignore file in existing solution using Visual Studio

Stop tracking the files that should be ignored in Git

How to add gitignore file in existing solution using Visual Studio

Recently I came across an issue where existing projects were showing .vs folder checked-in and being tracked. Developers were having code conflict problems and were not able to create PR request.

Here is the work around to add gitignore file in existing solution using Visual Studio.

Remove .vs folder from main branch and working branch. If there are PR policy in place, disable that for fixing this. After .vs folder removal, enable PR policy.

Open Visual Studio and make sure it’s connected to Git branch. Click on Git->Settings.

This will add gitignore file in the root of project folder. Switch to Git changes window in your working branch and commit / sync your changes.

Now we need to stop tracking all .vs folder changes that’s been created on developer machines to build and run the project. Use these magic commands, one time only;

git rm -r –cached .
git add .
git commit -am “remove ignored files”

For added piece of mind, sync your main branch and do a merge from main branch to work branch locally. Resolve any cache files and conflicts. You might need to run above three command again.

After this, Create PR and it should merge with main branch. This will take your pain away.

I hope this will help.

Standard Practice to Create Repository

Stop tracking the files that should be ignored in Git

Unbind solution from TFS

My problem, I was opening a solution from the internet and the original author had forgotten to remove the TFS bindings, so every time I open the solution I’d get an annoying popup saying “binding…”.

To get rid of this, I deleted the .suo next to the .sln file, and then opened the .sln file in Notepad and deleted this entire section:

GlobalSection(TeamFoundationVersionControl) = preSolution
    SccNumberOfProjects = 2
    SccEnterpriseProvider = {xxxxx}
    SccTeamFoundationServer = http://some-other-guys-tfs-server/
    SccLocalPath0 = .
    SccProjectUniqueName1 = xxDemo\\xxDemo.csproj
    SccProjectName1 = xxDemo
    SccLocalPath1 = xxDemo
EndGlobalSection

Save the .sln in Notepad and then open in Visual Studio, problem solved.

Resources

https://stackoverflow.com/questions/358951/how-can-i-completely-remove-tfs-bindings

Azure DevOps Git Clone error

I have changed my user’s name in Azure DevOps. When I try to clone to repo, started getting this error;

I have no permission issues then what the heck?

It turns out that the issue is with the URL. Please don’t try to connect to url which is produced by portal, something that look like this;

https://project-account@dev.azure.com/project-name/apps/_git/chart

instead try to connect thru your GIT username and then use password;

https://username@dev.azure.com/project-name/apps/_git/chart

If you username has special characters, Git cmd/bash will trhough errors, so replace those with valid characters;

@ can be replaced with %40

+ can  be replaced with %2b

Something like;

https://username%40xyz.com@dev.azure.com/project-name/apps/_git/chart

what a waste of time…

One of my developer started getting Git Credential Manager for windows popup and received Authentication failure message. The work around was;

Check the Git for Windows in the Tools – Get Tools and Features…), go to “Individual Item” tab,  check “Git for Windows”, and click “Modify”. Then it will ask you to update vs2017 to latest version, for example 15.9.36.

Voila, it started working.

Resource

https://stackoverflow.com/questions/34837173/authentication-failed-for-azure-git