Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Is it possible to use git stash command from Visual Studio

I'm using Visual Studio 2017's Team Explorer to work with a git repository.

Every time I'm uses the git stash or git stash pop, I need to open the Git Bash console and navigate to my project folder and run the commands.

Is there any way to stash within Visual Studio (2017)?

like image 767
Shahar Shokrani Avatar asked Jan 07 '19 09:01

Shahar Shokrani


People also ask

Is there a Git stash extension for Visual Studio 2019?

Team explorer extension for git stashes. The support for this extension is currently discontinued. To use git stash functionality, download Visual Studio 2019. It already includes a lot of UI actions that allow everyone to work with stashes in the Team Explorer tab. Review the following issues on the GitHub to find more information:

How to use Git stash command in Visual Studio Team Explorer?

This Visual Studio Team Explorer extension provides a possibility to use a git stash command with different options from Team Explorer tab. After instaling the extension you can find a new "Stashes" button on Team Explorer tab that navigates you to the Stash list page.

How to use Git stash?

Here's the sequence to follow when using git stash: 1 Save changes to branch A. 2 Run git stash. 3 Check out branch B. 4 Fix the bug in branch B. 5 Commit and (optionally) push to remote. 6 Check out branch A 7 Run git stash pop to get your stashed changes back. More ...

What is stash in Visual Studio 2019?

The stash which is done is one branch can also be applied to another branch, as shown in the below figure. From the above figure, you can notice the stash is done and the develop branch is applied to the master branch. We saw what stash is and how to use it with Git in Visual Studio 2019.


3 Answers

In VS2019 (not in VS2017 or before) in the Team Explorer window, you can select "Changes". Right next to the "Commit" button, there is a "Stash"...

like image 91
Hans Kesting Avatar answered Oct 11 '22 09:10

Hans Kesting


In Visual Studio 2017 this feature is not available by default, but there's an extension for this:

https://marketplace.visualstudio.com/items?itemName=vii.GitStashExtension

like image 27
ikkentim Avatar answered Oct 11 '22 09:10

ikkentim


Yes

Git Stash:

Git stash temporarily shelves (or stashes) changes you've made to your working copy so you can work on something else, and then come back and re-apply them later on. Stashing is handy if you need to quickly switch context and work on something else, but you're mid-way through a code change and aren't quite ready to commit.

enter image description here

Stashing is available in VS 2019 and later versions.

  1. Go to Git changes window Ctrl + Alt + F7
  2. Now press the drop down key near Commit All or Commit staged button to see the stashing options

Option 2: You can use this option Stash All and Keep Staged (--keep-index) by default

enter image description here

Option 1: Only if you want to stash untracked files like Git ignored files or Files which are not included into project then go for this option

enter image description here

You can keep/save multiple stashes with description like below:

enter image description here

Retrieving a stash: You have two options, either to Apply or Pop.

Apply will retrieve the stash but wont delete the stash but Pop (Apply + Delete) will retrieve the stash and will also delete it.

enter image description here

Again, Under Apply/Pop you gonna see two options:

  1. Apply/Pop and restore staged (--index)

Always use this option by default. This means while stashing if you had some files in changes and some files in staged, it'll be restored as such to changes and staged.

  1. Apply/Pop all as unstaged

If you use this option, while stashing if you had some files in changes and some files in staged, all of these files now will be clubbed to Changes.

enter image description here

like image 12
Chandraprakash Avatar answered Oct 11 '22 10:10

Chandraprakash