gpt4 book ai didi

git - 我应该怎么做才能从上次推送的提交中获取源代码?

转载 作者:太空狗 更新时间:2023-10-29 13:58:04 25 4
gpt4 key购买 nike

在我开始与其他贡献者一起工作之前,我认为我了解 git 的简单特性:)

情况如下:

  1. 我从存储库中提取了源代码(来自提交:2c49868)。
  2. 我更改了一些代码,发现更改后的应用程序无法正常工作。我没有使用 git commit 也没有使用 git push
  3. 我想恢复更改前的源代码(来自提交:2c49868)。

我应该怎么做才能不破坏代码库?

我要做的事:

git fetch --all
git reset --hard origin/master

这是正确的还是更好的方法?


编辑:

事实证明:

  1. 我昨天在工作的服务计算机上推送了新提交的源代码:(c6a7e5f)。
  2. 我在本地更改了一些代码(我没有使用 git commit 也没有使用 git push
  3. 我回家了。
  4. 我在另一台个人电脑上提取了源代码(来自提交:c6a7e5f)。
  5. 我更改了源代码并在家里添加/删除了一些文件,使用了 git commit (commit: 2c49868) 和 git push .
  6. 今天,我回来工作(维修电脑)。在我的 IDE 中,我看到了第二点的变化,我想要第五点的源代码(提交:2c49868)。

结论:我不想在服务计算机上进行本地更改(从第二点开始),因为它们还在这里,但我想从这个 repo 获得最新的源代码在服务计算机上。

我请求你的理解。

最佳答案

如果你没有提交它,你可以做一些事情

git stash 

这将 stash 您的更改并将您带回正确的来源 - 您稍后可能需要它们。

git reset --hard

这将消除工作树中的差异(您无法恢复更改)

如果你想清除任何未跟踪的文件 git reset 是不够的,你必须使用

git clean -f

这将从跟踪的根目录中删除所有不在 Git 跟踪下的文件。

如果您是最新的,则无需事先进行提取。

如果你确实提交了它(我假设你在 1 次提交中完成了)你可以这样做

git reset --hard HEAD^

这将重置最后一次提交并将其完全删除(请谨慎使用 hard,如果您担心,请使用 soft,然后在检查已重新检查的内容后恢复。)

关于git - 我应该怎么做才能从上次推送的提交中获取源代码?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51319702/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com