How to apply files from stash selectively?

Pulkit Singhal June 26, 2012

How can I apply files inside a stash selectively? Rather than right-clicking on the stash and applying it in its entirety?

7 answers

1 accepted

3 votes
Answer accepted
stevestreeting
Rising Star
Rising Star
Rising Stars are recognized for providing high-quality answers to other users. Rising Stars receive a certificate of achievement and are on the path to becoming Community Leaders.
June 26, 2012

Unfortunately git stash doesn't support doing this. You basically have to apply the stash, then only stage the parts that you want to commit. You can then re-stash the remainder (or discard it).

Pulkit Singhal June 26, 2012

ok so the following commandline feature isn't in the SourceTree roadmap yet?

$ git checkout stash@{0} -- <filename>

Git itself does support this.

Like a_sobolev likes this
17 votes
Josef Stoeckl September 1, 2013

As stated above, git naturally supports this via

$ git checkout stash@{0} -- <filename>

You can even show the stashed version and save it under a different name:

$ git show stash@{0}:<full/filename>  >  <newfile>

Git is just powerfil like that. :-)

I would love to see the stash feature extended to include these usages in SourceTree.

4 votes
glebsts September 3, 2014

any updates on this? Cannot find how to apply only certain files/chunks from git stash. I used that on other project with TortoiseHg and like it. Can't find how to do same with sourcetree.

3 votes
Igor Skomorokh October 22, 2019

+1 for the feature. It's really annoying that at the end of 2019 we still don't have it. Please, add it.

1 vote
Wim Deblauwe
Rising Star
Rising Star
Rising Stars are recognized for providing high-quality answers to other users. Rising Stars receive a certificate of achievement and are on the path to becoming Community Leaders.
April 12, 2016

Is there a JIRA issue we can vote on for this?

BTW: You can see here (http://stackoverflow.com/a/22555169/40064) how to do it manually.

Pulkit Singhal April 13, 2016

Recently I looked up `custom actions` but they aren't an option that is available when right-clicking on anything related to a stash.

0 votes
Glenn Lawrence January 3, 2020

FYI I tried the "Keep staged changes" check box when making the stash, but unfortunately this still stashes the staged changes along with the unstaged ones.

0 votes
Brandon Cline January 20, 2015
Perhaps no way to do it while applying the stash (that would be nice).
But you can achieve the affect by applying the stash, and then stashing just the hunks that you don't want (leaving the bits/files you do).

 

Command line equivalent is:

git stash pop stash@{x}
git stash -p

Suggest an answer

Log in or Sign up to answer
TAGS
AUG Leaders

Atlassian Community Events