gpt4 book ai didi

git - 如何恢复已在 GIT 中推送的单个已提交文件?

转载 作者:行者123 更新时间:2023-12-03 20:18:59 26 4
gpt4 key购买 nike

我在网上做了一些研究,但我仍然无法弄清楚使用 GIT 恢复已推送到存储库的单个文件的最佳方法是什么。

我已经完成了 Git Revert,但它会恢复整个提交。因此,假设您在一次提交中有 2 个、3 个文件,但您只想恢复 1 个文件,这将不会很好地工作。

有任何想法吗?非常感谢

最佳答案

尝试这个:

git reset HEAD~1 -- file1.txt
git checkout -- file1.txt
git commit
git push

这个怎么运作

git reset 带来 file1.txt 的索引条目到 HEAD~1 上的状态(上一次提交,错误更新之前的提交)。它不会修改工作树或当前分支。

git checkout 制作 file1.txt 的工作树版本与索引中的版本相同(这是我们需要的版本,对吗?)

您不能使用 git commit --amend 因为您要撤消的提交已经推送到远程存储库。这就是为什么你必须创建一个新的提交并推送它。

关于git - 如何恢复已在 GIT 中推送的单个已提交文件?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30940965/

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