我有以下情况:
我的远程分支等于我的本地分支。然后我在远程分支中进行了一些更改,并在我的本地分支中进行了一些不同的更改。
我的想法是运行git fetch
,同步我的本地分支,然后检查差异,然后推送所有内容,但它根本不起作用! (git fetch
似乎没有得到远程分支中所做的更改)
我知道正在运行git pull
“修复此问题,或git push -f
,但我想在提交之前查看更改。
为什么git fetch
没有按预期工作?或者我怎样才能在提交之前审查差异?
答案 0 :(得分:1)
要在合并之前查看本地分支与远程分支之间的差异,可以在执行git diff
后使用git fetch
中所述的git pull --no-commit
。
如果要执行远程分支与本地分支的合并而不立即提交以允许您查看结果,可以使用--no-commit
(如this question所述)。 {{1}}选项阻止Git自动提交可能是pull的一部分的合并,这将允许您在提交之前查看合并结果。
答案 1 :(得分:0)
git fetch
从远程分支下载提交,但不会更新您的工作区。在将它们合并到您的本地分支之前,您将无法看到提交。
git pull
是git fetch
和git merge
的组合 - 这就是git pull
似乎"修复"这种行为。