Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/git/21.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/ruby-on-rails/56.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Git Stash的新分支是否会影响其他Stash?_Git_Git Stash - Fatal编程技术网

Git Stash的新分支是否会影响其他Stash?

Git Stash的新分支是否会影响其他Stash?,git,git-stash,Git,Git Stash,我在主分支上隐藏了多个更改,现在我想从位于{0}的隐藏更改创建一个新分支。但我怀疑创建新分支不会影响我的其他存储,因为创建新分支后,git将删除我的存储。git会只删除{0}索引中的隐藏还是删除所有的隐藏?隐藏的更改对我来说太重要了。简短回答:不用担心,隐藏条目彼此独立。去做吧 较长的答案:(带有可视示例) 为了帮助描述它,可以将隐藏视为不相关提交的列表,每个提交都指向repo树中的不同点 请参见下面的假设情况 F---G <<< feature/abc

我在主分支上隐藏了多个更改,现在我想从位于{0}的隐藏更改创建一个新分支。但我怀疑创建新分支不会影响我的其他存储,因为创建新分支后,
git
将删除我的存储。
git
会只删除{0}索引中的隐藏还是删除所有的隐藏?隐藏的更改对我来说太重要了。

简短回答:不用担心,隐藏条目彼此独立。去做吧


较长的答案:(带有可视示例)

为了帮助描述它,可以将隐藏视为不相关提交的列表,每个提交都指向repo树中的不同点

请参见下面的假设情况

        F---G <<< feature/abc
       /
      /           H---I <<< bugfix/123
     /           /     \
A---B---C---D---E---F---J <<< master
         \
          \
           K---L---M <<< feature/xyz
但重要的一点是,由于在创建条目时,无论提交头指向哪个父级,都会使用隐藏条目:

L
f1d6b3a
的父级(我们称之为
L'

H
94722ae
(我们称之为
H'
)的父项
F
4fb4785
的父项(我们称之为
F'

在树上,它可以被描绘成

          F' <<< stash@{2}
         /
        F---G <<< feature/abc      H' <<< stash@{1}
       /                          / 
      /                          H---I <<< bugfix/123
     /                          /     \
A---B---C---D------------------E---F---J <<< master
         \
          \
           K---L---M <<< feature/xyz
                \
                 L' <<< stash@{0}

F'基本上感谢快速响应如果我执行“git checkout-b branch name”将首先执行我的工作我需要应用隐藏更改并执行上述命令对吗?是的,它正在创建一个新分支,但该分支在本地存在。有没有办法将它创建为一个远程分支,它将反映在我的报告中我不太确定你在这里的意思。。。如果需要从存储创建的新分支在以后也远程存在,请设置其上游并将其推送到远程。但我可能没有领会你的意思。。。你能详细说明一下吗?
          F' <<< stash@{2}
         /
        F---G <<< feature/abc      H' <<< stash@{1}
       /                          / 
      /                          H---I <<< bugfix/123
     /                          /     \
A---B---C---D------------------E---F---J <<< master
         \
          \
           K---L---M <<< feature/xyz
                \
                 L' <<< stash@{0}