gpt4 book ai didi

Git:从分支中删除单个文件,同时将其保留在项目中

转载 作者:行者123 更新时间:2023-12-04 12:48:22 27 4
gpt4 key购买 nike

在某些时候,我必须编辑一个与我正在处理的分支(问题)无关的文件。我不小心把它推送到了 Github,在我创建 Pull Request 时看到了它。

我想从我的分支中删除文件,而不是从项目中删除 - 即:我无法删除文件并将其作为提交推送。

我试过了:
git reset HEAD^ path/file.ext
但没有运气(什么也没发生 - 没有错误并且文件没有恢复)。

有谁知道解决这个问题的正确方法吗?

最佳答案

从听起来像是,您基本上希望删除 merge 请求中文件的所有更改。首先要做的是 check out 文件的干净副本并将其添加到您的分支。

git checkout master -- <the file>

现在提交这些更改并将新提交推送到您的 Remote 。 pull 请求应更新为不再对此文件进行更改。

如果你是唯一一个使用过这个分支的人,你可以重新设置你的提交,这样最新的提交就不再出现在你的历史中(但这真的没什么大不了的)。为此你会 git rebase -i master ,选择“压缩”提交。为了更新 pull 请求中的提交,您需要执行 git push -f <your branch> .以便新提交覆盖旧提交。这一步是完全可选的。

关于Git:从分支中删除单个文件,同时将其保留在项目中,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42263536/

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