添加链接
link管理
链接快照平台
  • 输入网页链接,自动生成快照
  • 标签化管理网页链接
相关文章推荐
礼貌的领带  ·  VisualStudio ...·  2 月前    · 
有腹肌的生菜  ·  修复正在使用的SQL ...·  1 年前    · 
飘逸的香蕉  ·  中国新闻网·  4 月前    · 
果断的土豆  ·  资源工具网站·  5 月前    · 
活泼的柚子  ·  Return former test ...·  6 月前    · 
风流的日记本  ·  javascript - 用 js ...·  8 月前    · 

vs 里 有还原和重置,重置里有删除更改和保留更改,都是什么时候使用的呢?

在Visual Studio中使用Git时,“还原” 和 “重置” 是两种不同的操作,它们用于撤销对代码库的更改。以下是它们各自的使用场景和例子:

  1. 还原 (Revert Changes)

    还原通常用于撤销你在工作目录中对文件做出的未暂存的更改。如果你编辑了一个文件但还没有将这些更改添加到暂存区(即没有执行 git add ),而你现在决定你要放弃这些本地更改并将文件恢复到上次提交时的状态,你可以使用还原功能。

    举例
    假设你正在编辑一个叫 app.js 的文件,并且你添加了一些代码。之后你意识到这些更改是不必要的,你想放弃这些更改并将文件恢复到上一次提交的状态。

  2. 重置 (Reset)

    重置用于撤销已经暂存或提交的更改。它可以影响暂存区和你的提交历史。重置有多种模式,最常见的包括“保留更改(Soft)”和“删除更改(Hard)”。

    • 保留更改 (Soft)
      如果你已经将更改添加到暂存区,或者已经进行了提交,但现在你想撤销这个提交并保留这些更改在工作目录中,你可以使用“保留更改”重置。

      举例
      你刚刚完成了一个功能并进行了提交,但突然你意识到你需要对代码进行一些小修正,并且你希望这些修正包含在刚刚的提交中而不是一个新的提交。

      在Visual Studio中,你可以这样做:

      • 在“团队资源管理器”中右键点击你的仓库,选择“重置”。
      • 选择“保留更改(Soft)”。
      • 这会将提交回退到你的工作目录,允许你进行修正并重新提交。
    • 删除更改 (Hard)
      如果你想完全撤销你的提交并且不保留任何更改,即你想让工作目录和暂存区都恢复到某个特定提交的状态,你可以使用“删除更改”重置。

      举例
      你实现了一个新功能并进行了一系列提交,之后你发现这个功能有重大问题,你决定放弃所有相关的更改并回到功能实现之前的状态。

      在Visual Studio中,你可以这样做:

      • 在“团队资源管理器”中右键点击你的仓库,选择“重置”。
      • 选择“删除更改(Hard)”。
      • 这会将提交历史回退到选择的状态,并清除所有未提交的更改。

还原和删除更改看起来差不多,具体的区别是什么呢

在 Visual Studio 使用 Git 时,“还原”(Revert Changes)和“删除更改”(Reset and Delete Changes,通常指的是 Reset with the Hard option)是两种不同的概念,分别用于不同的情况:

  1. 还原 (Revert Changes)
    还原操作通常指的是放弃工作目录中对某个文件的未暂存更改,使该文件回到最后一次提交时的状态。这个操作不会影响提交历史,也不会影响其他已经暂存或已经提交的文件。

    使用情景举例
    假设你正在工作在一个文件 example.txt 上,进行了一些修改后,你意识到这些修改是错误的,你想撤销这些修改并且恢复到文件的原始状态(即最后一次提交的状态)。

  2. 删除更改 (Reset and Delete Changes)
    删除更改通常指的是使用 git reset --hard 命令来将当前分支的HEAD指针重置到指定的提交,并且清除工作目录和暂存区中的所有更改。这个操作会丢失所有未提交的更改,并且是不可逆的。它修改了你的本地历史(如果你已经创建了新的提交的话)。

    使用情景举例
    假设你完成了几次提交,但突然意识到这些提交包含了严重的错误,你想完全撤销这些提交并将项目回滚到之前的状态,同时放弃所有这段时间内的更改。

这里有一个关键的区别需要注意:

  • 还原 仅仅撤销特定文件的未暂存的更改,并且不会影响Git的提交历史。
  • 删除更改 (硬重置)是一个更为激进的操作,它会撤销所有未暂存的和已暂存的更改,并且可以撤销最近的提交,将你的项目状态完全回滚到某一个特定的提交。

在执行这些操作之前,请确保你完全理解它们的后果,特别是执行 git reset --hard 这样的操作,因为它会导致未提交更改的永久丢失。如果你不确定,最好先创建一个分支或者备份你的工作目录。

假设你完成了几次提交,但突然意识到这些提交包含了严重的错误,你想完全撤销这些提交并将项目回滚到之前的状态,同时放弃所有这段时间内的更改。你刚刚完成了一个功能并进行了提交,但突然你意识到你需要对代码进行一些小修正,并且你希望这些修正包含在刚刚的提交中而不是一个新的提交。如果你想完全撤销你的提交并且不保留任何更改,即你想让工作目录和暂存区都恢复到某个特定提交的状态,你可以使用“删除更改”重置。上,进行了一些修改后,你意识到这些修改是错误的,你想撤销这些修改并且恢复到文件的原始状态(即最后一次提交的状态)。
由于修改vssetting文件不当,导致vs一启动就崩溃,导致电脑死机,只好 重置 vs设置来恢复,命令如下: cd  C:\Program Files\Microsoft Visual Studio 10.0\Common7\IDE devenv.exe /resetuserdata /resetsettings
Visual Studio 2022 版本 17.11 正式发布 (GA),此版本主要是基于用户反馈的各项改进。 “每项增强、每项修复和每项新功能均根据你的反馈而制定。无论你是在构建 Web、桌面、云还是游戏应用程序, Visual Studio 2022 v17.11 都旨在让你的开发体验更流畅、更快速、更直观。” 提高生产效率 增强的搜索功能可帮助用户快速找到所需的代码。 改进代码审查工作流...
作为AI语言模型,我并不具备个人偏见,以下是一些普遍认为的 Visual Studio 和 Dev-C++ 的缺点: 1. Visual Studio 较大的安装包和系统资源占用量: Visual Studio 是一个较为庞大的开发环境,相比较于 Dev-C++,其安装包较大,且 使用 过程需要消耗相对较多的系统资源。 2. Visual Studio 对于初学者相对较为复杂: Visual Studio 拥有着非常强大的功能,而这些功能往往会给初学者带来学习上的困难。相比较于 Dev-C++, Visual Studio 的操作相对较为复杂,需要经过一定的学习和掌握。 3. Dev-C++ 的开发者相对较少:相比较于 Visual Studio ,Dev-C++ 的开发者相对较少,因此其在功能上可能会受到一定的限制。 4. Dev-C++ 的更新频率较低:Dev-C++ 的更新频率相对较低,因此在一些新的开发需求上可能无法满足开发者的需求。