如何获取远程分支,覆盖本地提交



我已经在本地master分支中进行了一些提交。现在我想把它们扔掉,最终得到等于origin/master的状态.

我不想git reset --hard,因为这些提交是另一个分支快进合并的结果,所以我和远程提交是混合的。

目前我想不出的唯一解决方案是

git fetch
git checkout origin/master
git branch -D master
git checkout -b master
git remote origin/master

肯定有更快的方法吗?

我不想git reset --hard,因为这些提交是另一个分支快进合并的结果,所以我和远程提交是混合的。

我不明白这个论点。

git reset --hard origin/master将重置当前签出的分支,使其指向与origin/master完全相同的提交;然后它将覆盖工作目录中的所有文件以反映该更改。

因此,如果您当前位于本地master分支上,则此命令会将本地分支和工作目录重置为远程分支的master分支的状态,从而有效地丢弃您在该分支上本地执行的任何操作。

git reset --hard origin/master

与 完全相同

git checkout origin/master
git branch -D master
git checkout -b master

只需保留git fetch命令即可确保使用有关origin/master的最新信息。

你提出的最后一个命令(git remote origin/master(是一个不存在的命令;我看不出你想做什么。反正没必要。

最新更新