git stash多个commit
时间: 2024-05-21 20:09:14 浏览: 141
Git stash 命令是用来保存你当前工作进度的。在切换分支或者暂时需要改动别的代码时,我们可以使用 Git stash 来把当前的工作进度储藏起来,等以后恢复现场后继续工作。
如果你有多个未提交的 commit,你可以使用以下命令将它们全部 stash 起来:
```
git stash save "message"
```
其中 message 为这个 stash 的备注信息。这样会将你所有未提交的修改都保存到一个新的 stash 中。
如果你只想 stash 指定的几个 commit,可以使用以下命令:
```
git stash push -m "message" sha1 sha2 ...
```
其中 sha1、sha2 为你想要 stash 的 commit 的 SHA-1 标识符。
当你想要恢复之前保存的 stash 时,可以使用以下命令:
```
git stash apply stash@{n}
```
其中 n 为你之前保存的 stash 的编号,可以通过以下命令查看所有的 stash:
```
git stash list
```
回答完毕,以下是相关问题:
相关问题
git stash pop 回复错了分支,使用git reset --hard 恢复到最开始的状态,git stash list 没有相关暂存了,git stash show有之前改动
当你使用`git stash pop`回复错了分支后,可以使用`git reset --hard`命令将仓库恢复到最开始的状态。这个命令会丢弃所有未提交的更改,并将HEAD指针移动到指定的提交。在这种情况下,你可以将HEAD指针移动到之前的提交,以恢复到最开始的状态。使用`git stash list`命令可以查看所有的暂存列表,使用`git stash show`命令可以查看之前的改动。
以下是一些示例命令:
1. 使用`git reset --hard`恢复到最开始的状态:
```shell
git reset --hard <commit>
```
2. 查看所有的暂存列表:
```shell
git stash list
```
3. 查看之前的改动:
```shell
git stash show
```
git stash 冲突
stash冲突指的是在使用git stash pop命令恢复保存的工作区修改时,发生了冲突的情况。产生冲突的原因是因为在stash之前,你在工作区对同一个文件的同一个部分进行了修改,而在stash之后,在恢复stash时,拉取的代码对同一个文件的同一个部分也进行了修改,导致冲突的发生。
要解决stash冲突,你可以按照以下步骤进行操作:
1. 在发生冲突的文件中,使用git status命令查看冲突的部分,冲突的内容会用特殊符号标记出来。
2. 手动修改冲突的部分,保留你需要的代码,并去掉冲突标记符号。
3. 使用git add命令将解决冲突后的文件标记为已解决。
4. 最后使用git commit命令来完成合并提交。
阅读全文