如何在SourceTree中丢弃未提交的更改?

gol*_*p04 78 git macos bitbucket atlassian-sourcetree

我是Git环境的新手,我在Mac上使用BitBucket和SourceTree.我现在要做的就是放弃自上次提交以来的更改.我该怎么做?我没有发现任何类似"丢弃更改"的内容,并且直接从最后一次提交中删除似乎不起作用.使用GUI或命令行完成的解决方案将很好.谢谢.

Rob*_*rto 138

SourceTree for Mac上,右键单击要放弃的文件(在工作树列表的" 文件"中),然后选择" 重置".

SourceTree for Windows上,右键单击要放弃的文件(在" 工作副本更改"列表中),然后选择" 放弃".

git上,你只需:

git reset --hard 放弃对版本化文件所做的更改;

git clean -xdf擦除新的(未跟踪的)文件,包括忽略的文件(x选项).d是删除未跟踪的目录并f强制执行.

  • 令人惊讶的是,相同的命令对于Mac和Windows具有不同的名称.好像Git GUI(与命令行相比)已经不够混淆了. (13认同)
  • 您也可以右键单击左侧面板中的整个"工作副本"(或按Cmd + Shift + R);-) (9认同)

Max*_*Max 56

我喜欢用

git stash
Run Code Online (Sandbox Code Playgroud)

这会将所有未提交的更改存储存储中.如果您想稍后放弃这些更改git stash drop(或git stash pop恢复它们).

虽然这在技术上不是丢弃变更的"正确"方式(正如其他答案和评论所指出的那样).

  • 好吧,如果你想丢弃所有东西,那就更容易做`git reset --hard HEAD` (5认同)
  • @cocoanut我认为我的回答是"错误的",因为这是滥用`stash`功能.穆罕默德的答案是放弃所有变化的正确方法. (3认同)
  • 我喜欢这种方法,因为如果你改变主意,它会给你最后一次恢复你的改变的机会.我很少'重置 - 硬',但我经常把我的变化藏起来,然后在我决定不需要的时候放下藏品. (3认同)

NYC*_*eer 7

在未分级的文件上,单击右侧的三个点.单击它后,将出现一个弹出菜单,您可以在其中进行操作Discard file.

  • 当只有几个文件时这很好,但是当有很多文件时会发生什么? (2认同)

can*_*ler 6

按照步骤丢弃 Sourcetree 中的多个未提交的更改。

新版本的 Sourcetree 没有前面提到的 -Reset- 按钮。因此,请按照以下 5 个步骤进行解决。

  1. 右键单击“文件状态”,然后单击“重置... ”。

在此处输入图片说明

  1. 选择文件如果需要,您可以选择所有这些,如下图所示。

在此处输入图片说明

  1. 单击“全部重置”。

在此处输入图片说明

  1. 再次单击“全部重置”。

在此处输入图片说明

  1. 点击“重置”。

在此处输入图片说明

做得好..!没有更多的 302 文件要丢弃。

在此处输入图片说明