编辑:
每个能够阅读的人都应该认识到,我没有问过如何解决我描述的问题(因为我经常读到该错误的处理方法,但无法理解解决方案),但是那个众所周知的名字传递给
git diff
以创建正确的补丁程序。
结束编辑
由于某些重复的原因,我无法进入远程仓库,这(对我而言)使得使用git无法处理分支:
error: failed to push some refs to 'user@machine:/directory'
hint: Updates were rejected because the remote contains work that you do
hint: not have locally.
因此,我决定创建一些补丁文件,并将其应用到一些干净的目录中。但是我不知道众所周知的对象名称代表“分支开始A”,以便确定我得到了正确的补丁。 所以我必须传递什么参数
git diff
?
答案 0 :(得分:0)
您领先于远程仓库。一种方法是将本地工作保存在其他位置,然后使用
将当前存储库重置为远程设备的头部git reset --hard HEAD
警告:此命令将清除您在本地所做的任何工作和保存的内容
重置为HEAD后,使用以下命令
git pull origin master
在此步骤中,您正在与远程仓库进行同步。现在,您可以在本地分支上替换保存的工作,其余的工作很容易。
git add .
git commit
git push origin master
答案 1 :(得分:0)
解决此问题的一种常见方法是先运行git fetch
(如果要获取特定的远程对象,则运行git fetch origin
,或者运行git fetch --all
以获取所有远程对象)。这不会影响您的工作目录,分支或任何与您相关的内容,因此您可以随时运行该命令。这将更新您仓库中的远程跟踪分支,通常称为<remote>/<branch>
,例如origin/master
。
现在,您可以使用例如git log --color --all --decorate --oneline --graph
或某些GUI工具(例如gitk --all
)来检查Git日志。它将显示您的分支(在当前情况下)如何与远程分支分开。然后,您可以决定要合并分支和远程分支(例如,使用git pull
)还是将分支重新放置在远程分支的顶部(例如,git pull --rebase
)。