1

我在我的存储库上做了一个 git fetch origin。我有兴趣在名为 search-analytics 的远程分支上进行开发

在命令的输出中我看到

+ 5c2e2aa...e9ad142 search-analytics -> origin/search-analytics  (forced update)

(强制更新)在这里是什么意思?这不会出现在任何其他分支上。

4

2 回答 2

2

这意味着删除分支 (origin/search-analytics) 以一种撤消您已经从中提取的某些提交的方式进行了更新。换句话说,您正在处理的先前版本不仅已更新(即,在其之上添加了更多提交),而且其中一个或多个已被删除/重做。

于 2013-10-31T15:26:11.300 回答
1

我认为那条线意味着有人执行了强制推送,强制推送发生如下:

# Change example.file
git add example.file
git commit example.file -m "I'm commiting this file"
git push origin search-analytics
# Realize you screwed something up and don't want anyone to see it
# Change example.file again, or any file really
git add example.file
git commit --amend
# Amends the previous commit, as if the changes you just made, 
#                                        were originally in it
git push origin search-analytics
# The push fails because you amended a commit you already pushed
git push origin search-analytics --force

如果您在强制合并后遇到问题(即您在推动之间拉入),这里是如何重置分支的解释(几乎是唯一的解决方案)

于 2013-10-31T15:34:59.973 回答