4

我的分支“branch_a”有一个文件(file_a.txt),该文件不应与“master”上的同名文件不同。我想以这样一种方式更改分支,即从分支中删除这个更改的文件,也就是说,再次出现来自“master”的未更改文件,而不是该文件的更改分支。我试图避免的是必须维护这个文件,它不应该被改变。

起初我认为 git-reset 可能会有所帮助。然后我想也许我应该“git-rm”文件,但这根本不会让我留下文件。我需要将它从分支中删除,以便它不再是“master”上的不同版本。在这种情况下,最佳做法是什么?

4

1 回答 1

4

我假设您只需将该文件重置回版本master,而不是删除任何更改历史,对吗?前者很容易,后者需要修改历史记录并且不应该轻易完成(特别是如果您已将分支推送到本地存储库之外)。

要将文件的内容重置foo/bar/baz.txt回它的状态master,只需检查您的分支并运行

git checkout master -- foo/bar/baz.txt

这将从 master 获取文件,将其写入您的工作副本,并将其暂存到索引中。您现在可以git commit做到这一点,您的文件现在将与master.

于 2012-09-06T21:19:24.187 回答