Working with remotes in Git, GitHub and Visual Studio

In previous post, we discussed about how to work with remotes in Git at command line. In this post, we are going to discuss how we can do the same from the very comforts of Visual Studio while we continue to host our source code on the GitHub. While it’s true that there is no command or built-in option available in Visual Studio to connect to GitHub, we can leverage one of the extensions available for GitHub.

Install GitHub Extension for Visual Studio

To search for this extension, let’s open Visual Studio first. From the tool bar menu, select Tools and then click on the ‘Extensions and Updates’:
Continue reading “Working with remotes in Git, GitHub and Visual Studio”

Work with remote in Git to share your code

In last few posts of series of articles on the Git, we discussed several ways to work with code in our local repository. We learned about commits, branches, merge, rebase, stash and whole lot of other commands. If you want to see all those posts, just filter using Git category appearing in left pane in this site. However for most of the time, while working for an complex software, you would be working along with other developers. Therefore, you need a central place where you could host all of the source code and then you need some ability to download/upload your part of the code. This is where in the cloud-based Git repository providers like BitBucket, GitLab, GitHub, Azure Repos etc or On-Premise based Git repository providers like Azure DevOps / TFS, GitHub Enterprise , etc fits in. We already have learned the ability to segregate code for different features/issues by using concept of branches and tags. Continue reading “Work with remote in Git to share your code”

Save your changes temporarily in Git using Git Stash

This happens almost every now and then. You are in middle of working on some code changes, modified few files here and there and may be added new files. Now something else comes up urgently and you are asked to do it now. But you do not want to make a commit in middle of the work. In such a case, if you switch branch, your changes are carried over to the another branch as well. So you need a way to save your work temporarily. Fortunately, Git allows this functionality using what is known as Git Stash.

Stashing takes the dirty state of your working directory — that is, your modified tracked files and staged changes — and saves it on a stack of unfinished changes that you can reapply at any time.
Continue reading “Save your changes temporarily in Git using Git Stash”

Fixing error with .gitignore file not ignoring files

This happens almost every now and then with the developers who are very new to the Git. I’m writing it down in the hope that if somehow the original post on stackoverflow is not available for one or other reasons, people can still find the solution. Also, even after fixing this for multiple times, I do not remember the exact commands, I still end up googling the solution. Sometimes, it takes a lot of time to find the original post as there are so many reasons for .gitignore file not working in intended ways. So the scenario is like this, that you are very new to Git or have some understanding of Git or you are very excited about an idea, you started coding on it, then you initialize and then commit your files. Continue reading “Fixing error with .gitignore file not ignoring files”

Delete Branches in Git using commands

In git workflow, the ideal strategy to work is to fork a new branch, make changes and finally merge in the main development branches. Over the time, this results in creation of large number of branches which are not required and becomes stale. Although a branch is just a pointer to an commit and does not require more than 40 bytes of disk space, it can be painful to search a long list of branches and deciding what you want to work on. Also since we humans are not good with creating unique names for branches, they can also result in confusion.

Below are some steps to clean branches from git repository to remove the clutter. Continue reading “Delete Branches in Git using commands”